Java 合並list集合以及list集合排序


 @Override
    public List<InvitationcListInfo> initInvitationcList(String openId) {
        User user = userMapper.findUserByOpenId(openId);
        /**
         * @Description 自己發布的約拍信息,並 set getSysDictName
         */
        List<InvitationcListInfo> list = invitationcMapper.selectInvitationcListInfoByCreatorId(user.getId());
        list.forEach(invitationcListInfo -> {
            invitationcListInfo.setCreateTimeStr(TimeUtil.putDate(invitationcListInfo.getCreateTime()));
            invitationcListInfo.setStateStr(getSysDictName(invitationcListInfo.getState()));
            PhotoOrder photoOrder = photoOrderMapper.findOrderByInvitationcId(invitationcListInfo.getInvitationcId());
            if (photoOrder != null) {
                invitationcListInfo.setPhotoOrderState(photoOrder.getState());
                invitationcListInfo.setPhototOrderStateStr(getSysDictName(photoOrder.getState()));
            }
        });
        /**
         * @Description 申請的約拍,並 set getSysDictName
         */
        List<InvitationcListInfo> section = invitationcMapper.selectInvitationcListInfoByApplicantId(user.getId());
        section.forEach(invitationcListInfo -> {
            invitationcListInfo.setCreateTimeStr(TimeUtil.putDate(invitationcListInfo.getCreateTime()));
            invitationcListInfo.setStateStr(getSysDictName(invitationcListInfo.getState()));
            PhotoOrder photoOrder = photoOrderMapper.findOrderByApplicantIdAndInvitationcId(user.getId(), invitationcListInfo.getInvitationcId());
            if (photoOrder != null) {
                invitationcListInfo.setPhotoOrderState(photoOrder.getState());
                invitationcListInfo.setPhototOrderStateStr(getSysDictName(photoOrder.getState()));
            }
        });
        list.addAll(section);
        /**
         * @Description 按照創建時間排序list集合 大於0 DESC ,小於0 ASC
         */
        Collections.sort(list, new Comparator<InvitationcListInfo>() {
            @Override
            public int compare(InvitationcListInfo o1, InvitationcListInfo o2) {
                return -(Long.valueOf(o1.getCreateTime().getTime() - o2.getCreateTime().getTime()).intValue());
            }
        });
        return list;
    }

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM