From e577147005f0e78e7be9333766032405107b6a26 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 28 May 2021 10:53:45 +0800
Subject: [PATCH] Merge branch 'otc' of http://120.27.238.55:7000/r/exchange into otc

---
 src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java                             |    3 +
 src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java                       |   20 ++++++++--
 src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java             |    5 +-
 src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java |   21 ++++++----
 src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java                |    4 ++
 src/main/resources/mapper/otc/OtcMsgUserListDao.xml                                        |   10 ++++
 6 files changed, 48 insertions(+), 15 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java b/src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java
index e49dda6..4588610 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java
@@ -14,4 +14,7 @@
     @ApiModelProperty(value = "页码", example = "1")
     private Integer pageNum;
 
+    @ApiModelProperty(value = "昵称", example = "1")
+    private String nickname;
+
 }
diff --git a/src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java b/src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java
index 681b496..464c6f8 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java
@@ -1,5 +1,6 @@
 package com.xcong.excoin.modules.otc.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.xcong.excoin.common.system.base.BaseEntity;
 import lombok.Data;
@@ -27,4 +28,7 @@
     //最后聊天时间
     private Date lastMsgTime;
 
+    @TableField(exist = false)
+    private String nickname;
+
 }
diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
index 063e337..803d3d8 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java
@@ -137,36 +137,41 @@
         ApplyConditionsVo applyConditionsVo = new ApplyConditionsVo();
 
         OtcSetting setting = otcSettingDao.selectById(1L);
+        applyConditionsVo.setOrderNum(setting.getOrderNum());
+        applyConditionsVo.setTotalAmount(setting.getTotalAmount());
+        applyConditionsVo.setCompletionRate(setting.getCompletionRate());
+        applyConditionsVo.setCancellNum(setting.getCancellNum());
         // 所有已完成订单
         List<OtcOrder> finishOrders = otcOrderDao.selectOrderListForUser(member.getId(), 3);
         if (CollUtil.isEmpty(finishOrders) || setting.getOrderNum() > finishOrders.size()) {
-            applyConditionsVo.setOrderNum(2);
+            applyConditionsVo.setOrderNumStatus(2);
         }else{
-            applyConditionsVo.setOrderNum(1);
+            applyConditionsVo.setOrderNumStatus(1);
         }
 
         List<OtcOrder> allOrders = otcOrderDao.selectOrderListForUser(member.getId(), null);
         if (CollUtil.isNotEmpty(allOrders)) {
             BigDecimal finishRatio = BigDecimal.valueOf(finishOrders.size()).divide(BigDecimal.valueOf(allOrders.size()), 4, BigDecimal.ROUND_DOWN).multiply(BigDecimal.valueOf(100));
             if (setting.getCompletionRate().compareTo(finishRatio) > 0) {
-                applyConditionsVo.setCompletionRate(2);
+                applyConditionsVo.setCompletionRateStatus(2);
             }else{
-                applyConditionsVo.setCompletionRate(1);
+                applyConditionsVo.setCompletionRateStatus(1);
             }
         }
 
         BigDecimal totalAmount = otcOrderDao.selectOrderTotalAmount(member.getId());
+        totalAmount = totalAmount == null ? BigDecimal.ZERO : totalAmount;
         if (setting.getTotalAmount().compareTo(totalAmount) > 0) {
-            applyConditionsVo.setTotalAmount(2);
+            applyConditionsVo.setTotalAmountStatus(2);
         }else{
-            applyConditionsVo.setTotalAmount(1);
+            applyConditionsVo.setTotalAmountStatus(1);
         }
 
         Integer certifyStatus = member.getCertifyStatus();
         if(MemberEntity.CERTIFY_STATUS_Y == certifyStatus){
-            applyConditionsVo.setMemberAuth(1);
+            applyConditionsVo.setMemberAuthStatus(1);
         }else{
-            applyConditionsVo.setMemberAuth(2);
+            applyConditionsVo.setMemberAuthStatus(2);
         }
 
         return Result.ok(applyConditionsVo);
diff --git a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
index 69fce34..d344999 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java
@@ -53,6 +53,7 @@
 
         OtcMsgUserListEntity otcMsgUserListEntity = new OtcMsgUserListEntity();
         otcMsgUserListEntity.setMemberId(memberId);
+        otcMsgUserListEntity.setNickname(msgListDto.getNickname());
         IPage<MsgListVo> msgList = otcMsgUserListDao.getMsgList(otcMsgUserListEntity, page);
         List<MsgListVo> records = msgList.getRecords();
         //更新最外层的消息提醒
@@ -60,8 +61,8 @@
         if(CollUtil.isNotEmpty(records)){
             for(MsgListVo msgListVo : records){
                 long targetId = msgListVo.getTargetId();
-                MemberEntity memberEntity = memberDao.selectById(targetId);
-                msgListVo.setNickname(memberEntity.getName());
+//                MemberEntity memberEntity = memberDao.selectById(targetId);
+//                msgListVo.setNickname(memberEntity.getName());
 
                 ChatOrderVo chatOrderVo = new ChatOrderVo();
                 List<ChatOrderVo> chatOrderVos = otcOrderDao.selectOneByMemberIdAndTargetId(memberId,targetId);
diff --git a/src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java b/src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java
index 359e4d1..a554624 100644
--- a/src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java
+++ b/src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java
@@ -11,15 +11,27 @@
 public class ApplyConditionsVo {
 
     @ApiModelProperty(value = "商家入驻总单数1:满足 2:不满足")
-    private Integer orderNum;
+    private Integer orderNumStatus;
 
     @ApiModelProperty(value = "商家入驻完成率1:满足 2:不满足")
-    private Integer completionRate;
+    private Integer completionRateStatus;
 
     @ApiModelProperty(value = "商家入驻总金额1:满足 2:不满足")
-    private Integer totalAmount;
+    private Integer totalAmountStatus;
 
     @ApiModelProperty(value = "实名认证1:满足 2:不满足")
-    private Integer memberAuth;
+    private Integer memberAuthStatus;
+
+    @ApiModelProperty(value = "总单数")
+    private Integer orderNum;
+
+    @ApiModelProperty(value = "完成率")
+    private BigDecimal completionRate;
+
+    @ApiModelProperty(value = "总金额")
+    private BigDecimal totalAmount;
+
+    @ApiModelProperty(value = "今日取消次数")
+    private Integer cancellNum;
 
 }
diff --git a/src/main/resources/mapper/otc/OtcMsgUserListDao.xml b/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
index 0be3ee3..b1244d9 100644
--- a/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
+++ b/src/main/resources/mapper/otc/OtcMsgUserListDao.xml
@@ -8,11 +8,19 @@
                a.is_read isRead,
                a.target_id targetId,
                a.member_id memberId,
-               a.last_msg_time lastMsgTime
+               a.last_msg_time lastMsgTime,
+               b.name nickname
         from otc_msg_user_list a
+        left join member b on a.target_id = b.id
         <where>
             <if test="record!=null">
                     a.member_id = #{record.memberId}
+                <if test="record.nickname != null and record.nickname == ''">
+                    and b.name like concat('%',  #{record.nickname},'%')
+                </if>
+            </if>
+            <if test="record!=null">
+                a.member_id = #{record.memberId}
             </if>
         </where>
         order by a.create_time desc

--
Gitblit v1.9.1