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;
    }

  

posted @ 2018-06-11 10:55  宋宋宋哥  阅读(2108)  评论(0)    收藏  举报