Helius
2021-05-27 7f133cb8fc080b64ab8002b35f04b646f95a6abf
Merge branch 'otc' of http://120.27.238.55:7000/r/exchange into otc
7 files modified
88 ■■■■■ changed files
src/main/java/com/xcong/excoin/modules/otc/dao/OtcOrderDao.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java 58 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/vo/BuyOrderDetailVo.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/vo/SaleOrderDetailVo.java 2 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/otc/OtcOrderDao.xml 18 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/dao/OtcOrderDao.java
@@ -37,4 +37,6 @@
    BigDecimal selectOrderTotalAmount(@Param("memberId") Long memberId);
    List<ChatOrderVo> selectByMemberIdAndTargetId(@Param("memberId")Long memberId, @Param("targetId")long targetId);
    List<ChatOrderVo> selectOneByMemberIdAndTargetId(@Param("memberId")Long memberId, @Param("targetId")long targetId);
}
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);
    }
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcOrderServiceImpl.java
@@ -351,7 +351,9 @@
        }
        buyDetail.setSaleName(saleMember.getName());
        buyDetail.setSaleMemberId(saleMember.getId());
        buyDetail.setMemberId(member.getId());
        buyDetail.setBankName(buyOrder.getBankName());
        buyDetail.setBankNo(buyOrder.getBankNo());
@@ -400,6 +402,7 @@
        saleDetail.setSaleName(buyMember.getName());
        saleDetail.setSaleMemberId(buyMember.getId());
        saleDetail.setMemberId(member.getId());
        saleDetail.setPayType(saleOrder.getPayType());
        saleDetail.setIsOwnEntrust(member.getId().equals(saleOrder.getEntrustMemberId()) ? 1 : 2);
src/main/java/com/xcong/excoin/modules/otc/vo/BuyOrderDetailVo.java
@@ -53,6 +53,8 @@
    @ApiModelProperty(value = "商家MemberId")
    private Long saleMemberId;
    @ApiModelProperty(value = "memberId")
    private Long memberId;
    @ApiModelProperty(value = "商家ID")
    private Long mbId;
src/main/java/com/xcong/excoin/modules/otc/vo/MsgListVo.java
@@ -33,4 +33,7 @@
    @ApiModelProperty(value = "最后聊天时间")
    private Date lastMsgTime;
    @ApiModelProperty(value = "最新的订单")
    private ChatOrderVo chatOrderVo;
}
src/main/java/com/xcong/excoin/modules/otc/vo/SaleOrderDetailVo.java
@@ -47,6 +47,8 @@
    @ApiModelProperty(value = "商家MemberId")
    private Long saleMemberId;
    @ApiModelProperty(value = "memberId")
    private Long memberId;
    @ApiModelProperty(value = "商家ID")
    private Long mbId;
src/main/resources/mapper/otc/OtcOrderDao.xml
@@ -118,4 +118,22 @@
    </select>
    <select id="selectOneByMemberIdAndTargetId" resultType="com.xcong.excoin.modules.otc.vo.ChatOrderVo">
        select
            order_no orderNo,
            member_id memberId,
            unit_price unitPrice,
            coin_amount usdtAmount,
            total_amount totalAmount,
            status status,
            order_type orderType
        from otc_order
        where ((member_id=#{memberId} and opposite_member_id=#{targetId})
            or
               (member_id=#{targetId} and opposite_member_id=#{memberId}))
        order by create_time desc
            LIMIT 2
    </select>
</mapper>