Helius
2021-05-27 7f133cb8fc080b64ab8002b35f04b646f95a6abf
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
@@ -4,6 +4,7 @@
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -54,11 +55,35 @@
        otcMsgUserListEntity.setMemberId(memberId);
        IPage<MsgListVo> msgList = otcMsgUserListDao.getMsgList(otcMsgUserListEntity, page);
        List<MsgListVo> records = msgList.getRecords();
        //更新最外层的消息提醒
        boolean flag = true;
        if(CollUtil.isNotEmpty(records)){
            for(MsgListVo msgListVo : records){
                long targetId = msgListVo.getTargetId();
                MemberEntity memberEntity = memberDao.selectById(targetId);
                msgListVo.setNickname(memberEntity.getName());
                ChatOrderVo chatOrderVo = new ChatOrderVo();
                List<ChatOrderVo> chatOrderVos = otcOrderDao.selectOneByMemberIdAndTargetId(memberId,targetId);
                if(CollUtil.isNotEmpty(chatOrderVos)){
                    for(ChatOrderVo chatOrderVodone : chatOrderVos){
                        Long memberIdDone = chatOrderVodone.getMemberId();
                        if(memberId.equals(memberIdDone) || memberId == memberIdDone){
                            chatOrderVo = chatOrderVodone;
                        }
                    }
                }
                msgListVo.setChatOrderVo(chatOrderVo);
                Integer isRead = msgListVo.getIsRead();
                if(OtcMsgUserListEntity.ISREAD_ONE == isRead){
                    flag = false;
                }
            }
            if(flag){
                MemberSettingEntity memberSettingEntity = memberSettingDao.selectMemberSettingByMemberId(member.getId());
                memberSettingEntity.setMessageReminder(0);
                memberSettingDao.updateById(memberSettingEntity);
            }
        }
        return msgList;
@@ -89,17 +114,6 @@
        otcMsgHistoryEntity.setMemberId(memberId);
        otcMsgHistoryEntity.setTargetId(targetId);
        IPage<ChatBoxVo> chatBoxVos= otcMsgHistoryDao.getChatBoxMsgList(page,otcMsgHistoryEntity);
//        List<ChatBoxVo> records = chatBoxVos.getRecords();
//        if(CollUtil.isNotEmpty(records)){
//            for(ChatBoxVo chatBoxVo : records){
//                long memberIds = chatBoxVo.getMemberId();
//                if(memberIds == member.getId()){
//                    chatBoxVo.setIsSelf(1);
//                }else{
//                    chatBoxVo.setIsSelf(2);
//                }
//            }
//        }
        return Result.ok(chatBoxVos);
    }
@@ -125,17 +139,6 @@
        if(ObjectUtil.isEmpty(msgType)){
            return Result.fail("请输入发送消息");
        }
        /**
         * 是否有记录
         *  有就更新,没有就新增
         * 在消息列表中增加一条记录
         * 在历史记录中增加一条记录
         * 增加一个提醒的
         */
//        QueryWrapper<OtcMsgHistoryEntity> objectQueryWrapper = new QueryWrapper<>();
//        objectQueryWrapper.eq("member_id",memberId);
//        objectQueryWrapper.eq("target_id",targetId);
//        OtcMsgUserListEntity otcMsgUserListEntity = otcMsgUserListDao.selectById(objectQueryWrapper);
        //发送方
        List<OtcMsgUserListEntity> otcMsgUserListEntityFrom = otcMsgUserListDao.selectListByMemberIdAndTargetId(memberId,targetId);
        if(CollUtil.isEmpty(otcMsgUserListEntityFrom)){
@@ -214,17 +217,6 @@
            otcMsgHistoryEntity.setMemberId(memberId);
            otcMsgHistoryEntity.setTargetId(targetId);
            chatBoxVos = otcMsgHistoryDao.getChatBoxMsgList(page,otcMsgHistoryEntity);
//            List<ChatBoxVo> records = chatBoxVos.getRecords();
//            if(CollUtil.isNotEmpty(records)){
//                for(ChatBoxVo chatBoxVo : records){
//                    long memberIds = chatBoxVo.getMemberId();
//                    if(memberIds == memberId){
//                        chatBoxVo.setIsSelf(1);
//                    }else{
//                        chatBoxVo.setIsSelf(2);
//                    }
//                }
//            }
        }
        return Result.ok(chatBoxVos);
    }