Helius
2021-05-28 e577147005f0e78e7be9333766032405107b6a26
Merge branch 'otc' of http://120.27.238.55:7000/r/exchange into otc
6 files modified
63 ■■■■ changed files
src/main/java/com/xcong/excoin/modules/otc/dto/MsgListDto.java 3 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/entity/OtcMsgUserListEntity.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMarketBussinessServiceImpl.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/service/impl/OtcMsgServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/modules/otc/vo/ApplyConditionsVo.java 20 ●●●● patch | view | raw | blame | history
src/main/resources/mapper/otc/OtcMsgUserListDao.xml 10 ●●●●● patch | view | raw | blame | history
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;
}
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;
}
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);
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);
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;
}
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