From 24df434da5a0bdfd93c8230cce07a8b7231d66ae Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 11 Mar 2021 16:35:03 +0800 Subject: [PATCH] 20210305 交易员列表查询,已入驻时间 --- src/main/java/com/xcong/excoin/modules/documentary/dto/FollowTraderProfitInfoDto.java | 19 +++++++++ src/main/resources/mapper/documentary/FollowTraderProfitInfoDao.xml | 25 +++++++++++- src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderInfoEntity.java | 6 +++ src/main/java/com/xcong/excoin/modules/documentary/vo/TradeProfitInfoVo.java | 6 +++ src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java | 30 +++++++++++++++ src/main/java/com/xcong/excoin/modules/documentary/vo/FollowTraderProfitInfoVo.java | 6 +++ src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderProfitInfoEntity.java | 18 +++++++++ 7 files changed, 108 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/documentary/dto/FollowTraderProfitInfoDto.java b/src/main/java/com/xcong/excoin/modules/documentary/dto/FollowTraderProfitInfoDto.java index 4790c50..fc78a6b 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/dto/FollowTraderProfitInfoDto.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/dto/FollowTraderProfitInfoDto.java @@ -22,4 +22,23 @@ @ApiModelProperty(value = "1:首页", example = "1") private int type; + @ApiModelProperty(value = "昵称", example = "哈哈") + private String nickname; + + /** + * 累计收益率排序(1正序 2倒序) + */ + @ApiModelProperty(value = "累计收益率排序(0不参与 1正序 2倒序)", example = "1") + private int totalProfitRatioSc; + /** + * 胜率排序(1正序 2倒序) + */ + @ApiModelProperty(value = "胜率排序(0不参与 1正序 2倒序)", example = "1") + private int winRateSc; + /** + * 累计跟随人数排序(1正序 2倒序) + */ + @ApiModelProperty(value = "累计跟随人数排序(0不参与 1正序 2倒序)", example = "1") + private int totalFollowerCntSc; + } diff --git a/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderInfoEntity.java b/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderInfoEntity.java index 6db2e7a..d916fee 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderInfoEntity.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderInfoEntity.java @@ -1,8 +1,10 @@ package com.xcong.excoin.modules.documentary.entity; import java.math.BigDecimal; +import java.util.Date; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import com.xcong.excoin.common.system.base.BaseEntity; import lombok.Data; @@ -23,6 +25,10 @@ public static final String DECLARATION_DEFAULT = "正忙着赚钱,什么也没写"; public static final Integer FOLLOWNUM_DEFAULT = 500; + + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date entryTime; /** * 会员ID */ diff --git a/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderProfitInfoEntity.java b/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderProfitInfoEntity.java index cadb89c..740fcfe 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderProfitInfoEntity.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/entity/FollowTraderProfitInfoEntity.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.xcong.excoin.common.system.base.BaseEntity; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; @@ -56,6 +57,23 @@ @TableField(exist = false) private int type; + @TableField(exist = false) + private String nickname; + /** + * 累计收益率排序(1正序 2倒序) + */ + @TableField(exist = false) + private int totalProfitRatioSc; + /** + * 胜率排序(1正序 2倒序) + */ + @TableField(exist = false) + private int winRateSc; + /** + * 累计跟随人数排序(1正序 2倒序) + */ + @TableField(exist = false) + private int totalFollowerCntSc; } diff --git a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java index c1f2f73..18d649c 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/service/impl/DocumentaryServiceImpl.java @@ -2,6 +2,7 @@ import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -160,7 +161,17 @@ FollowTraderProfitInfoEntity followTraderProfitInfoEntity = new FollowTraderProfitInfoEntity(); if(FollowTraderInfoEntity.IS_SETFRIST_Y.equals(type)) { followTraderProfitInfoEntity.setType(type); + }else { + String nicknameDto = recordsPageDto.getNickname(); + followTraderProfitInfoEntity.setNickname(nicknameDto); + int totalProfitRatioSc = recordsPageDto.getTotalProfitRatioSc(); + followTraderProfitInfoEntity.setTotalProfitRatioSc(totalProfitRatioSc); + int totalFollowerCntSc = recordsPageDto.getTotalFollowerCntSc(); + followTraderProfitInfoEntity.setTotalFollowerCntSc(totalFollowerCntSc); + int winRateSc = recordsPageDto.getWinRateSc(); + followTraderProfitInfoEntity.setWinRateSc(winRateSc); } + IPage<FollowTraderProfitInfoVo> followTraderProfitInfoList = followTraderProfitInfoDao.selectFollowTraderProfitInfoEntity(page, followTraderProfitInfoEntity); List<FollowTraderProfitInfoVo> followTraderProfitInfoVoList = followTraderProfitInfoList.getRecords(); @@ -768,6 +779,9 @@ String declaration = followTraderInfoEntity.getDeclaration(); Integer isAll = followTraderInfoEntity.getIsAll(); Integer followNum = followTraderInfoEntity.getFollowNum(); + Date entryTime = followTraderInfoEntity.getEntryTime(); + int datePoor = getDatePoor(entryTime, new Date()); + followTraderProfitInfoVo.setEntryDays(datePoor); //获取当前跟单人数 Map<String, Object> columnMap = new HashMap<>(); columnMap.put("trade_id", traderId); @@ -793,6 +807,19 @@ followTraderProfitInfoVo.setDeclaration(declaration); followTraderProfitInfoVo.setIsAll(isAll); return Result.ok(followTraderProfitInfoVo); + } + + //获取两个时间之间的日期 + private int getDatePoor(Date endDate, Date nowDate) { + Calendar cal = Calendar.getInstance(); + cal.setTime(endDate); + long time1 = cal.getTimeInMillis(); + cal.setTime(nowDate); + long time2 = cal.getTimeInMillis(); + long between_days=(time2-time1)/(1000*3600*24); + int parseInt = Integer.parseInt(String.valueOf(between_days)); + parseInt = parseInt + 1; + return parseInt ; } @Override @@ -967,6 +994,9 @@ TradeProfitInfoVo tradeProfitInfoVo = new TradeProfitInfoVo(); //获取【交易员信息表】数据 FollowTraderInfoEntity followTraderInfoEntity = followTraderInfoDao.selectTraderInfoByMemberId(memberId); + Date entryTime = followTraderInfoEntity.getEntryTime(); + int datePoor = getDatePoor(entryTime, new Date()); + tradeProfitInfoVo.setEntryDays(datePoor); if(ObjectUtil.isNotEmpty(followTraderInfoEntity)) { Integer followNum = followTraderInfoEntity.getFollowNum(); //获取当前跟单人数 diff --git a/src/main/java/com/xcong/excoin/modules/documentary/vo/FollowTraderProfitInfoVo.java b/src/main/java/com/xcong/excoin/modules/documentary/vo/FollowTraderProfitInfoVo.java index 65a7cdf..5a81616 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/vo/FollowTraderProfitInfoVo.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/vo/FollowTraderProfitInfoVo.java @@ -106,5 +106,11 @@ */ @ApiModelProperty("当前跟单人数") private Integer followNumNow; + + /** + * 入驻天数(从审核通过开始计算) + */ + @ApiModelProperty("入驻天数") + private Integer entryDays; } diff --git a/src/main/java/com/xcong/excoin/modules/documentary/vo/TradeProfitInfoVo.java b/src/main/java/com/xcong/excoin/modules/documentary/vo/TradeProfitInfoVo.java index f411b4b..c10c8ec 100644 --- a/src/main/java/com/xcong/excoin/modules/documentary/vo/TradeProfitInfoVo.java +++ b/src/main/java/com/xcong/excoin/modules/documentary/vo/TradeProfitInfoVo.java @@ -66,5 +66,11 @@ */ @ApiModelProperty("当前跟单人数") private Integer followNumNow; + + /** + * 入驻天数(从审核通过开始计算) + */ + @ApiModelProperty("入驻天数") + private Integer entryDays; } diff --git a/src/main/resources/mapper/documentary/FollowTraderProfitInfoDao.xml b/src/main/resources/mapper/documentary/FollowTraderProfitInfoDao.xml index d66f75b..d5d3cae 100644 --- a/src/main/resources/mapper/documentary/FollowTraderProfitInfoDao.xml +++ b/src/main/resources/mapper/documentary/FollowTraderProfitInfoDao.xml @@ -11,9 +11,30 @@ <if test="record.type != null and record.type != '' "> and t.is_set_frist = #{record.type} </if> + <if test="record.nickname != null and record.nickname != '' "> + and t.nickname like concat('%',#{record.nickname},'%') + </if> </where> - - order by f.id desc + order by + <if test="record.totalProfitRatioSc != null and record.totalProfitRatioSc != '' and record.totalProfitRatioSc == 1" > + f.total_profit_ratio, + </if> + <if test="record.totalProfitRatioSc != null and record.totalProfitRatioSc != '' and record.totalProfitRatioSc == 2" > + f.total_profit_ratio desc, + </if> + <if test="record.winRateSc != null and record.winRateSc != '' and record.winRateSc == 1" > + f.win_rate, + </if> + <if test="record.winRateSc != null and record.winRateSc != '' and record.winRateSc == 2" > + f.win_rate desc, + </if> + <if test="record.totalFollowerCntSc != null and record.totalFollowerCntSc != '' and record.totalFollowerCntSc == 1" > + f.total_follower_cnt, + </if> + <if test="record.totalFollowerCntSc != null and record.totalFollowerCntSc != '' and record.totalFollowerCntSc == 2" > + f.total_follower_cnt desc, + </if> + f.id desc </select> <select id="selectOneByMemberId" resultType="com.xcong.excoin.modules.documentary.vo.FollowTraderProfitInfoVo"> -- Gitblit v1.9.1