From 7854eeda4763e0bd995226bc7c407fde5080e79c Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 29 Dec 2020 10:43:21 +0800 Subject: [PATCH] modify --- zq-erp/src/main/java/com/matrix/system/app/vo/RankingVo.java | 2 +- zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java | 12 +++++++++++- zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml | 25 +++++++++++++++++++++++++ zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java | 3 +++ zq-erp/src/main/java/com/matrix/system/app/dto/RankingDto.java | 6 +++--- 5 files changed, 43 insertions(+), 5 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java index 4004241..2485f03 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java +++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiRankingAction.java @@ -6,7 +6,9 @@ import com.matrix.system.app.vo.RankingVo; import com.matrix.system.common.tools.DataAuthUtil; import com.matrix.system.hive.action.util.QueryUtil; +import com.matrix.system.hive.bean.AchieveNew; import com.matrix.system.hive.bean.SysOrder; +import com.matrix.system.hive.dao.AchieveNewDao; import com.matrix.system.hive.service.AchieveNewService; import com.matrix.system.hive.service.SysOrderService; import io.swagger.annotations.Api; @@ -36,6 +38,9 @@ @Autowired private AchieveNewService achieveNewService; + @Autowired + private AchieveNewDao achieveNewDao; + @ApiOperation(value = "顾问业绩排行榜", notes = "顾问业绩排行榜") @ApiResponses({ @ApiResponse(code = 200, message = "ok", response = RankingVo.class) @@ -60,7 +65,12 @@ List<RankingVo> list = sysOrderService.findApiShopAchieveRanking(sysOrder); ajaxResult.setRows(list); } else { - + AchieveNew achieveNew = new AchieveNew(); + QueryUtil.setQueryLimitCom(achieveNew); + achieveNew.setDatatime(DateUtil.stringToDate(rankingDto.getTime(), DateUtil.DATE_FORMAT_DD)); + achieveNew.setT1(rankingDto.getType()); + List<RankingVo> rankingVos = achieveNewDao.selectShopConsumeAchieveRanking(achieveNew); + ajaxResult.setRows(rankingVos); } return ajaxResult; } diff --git a/zq-erp/src/main/java/com/matrix/system/app/dto/RankingDto.java b/zq-erp/src/main/java/com/matrix/system/app/dto/RankingDto.java index 080f1bd..287f522 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/dto/RankingDto.java +++ b/zq-erp/src/main/java/com/matrix/system/app/dto/RankingDto.java @@ -19,13 +19,13 @@ public static final String MONTH = "2"; public static final String YEAR = "3"; - @ApiModelProperty(value = "数据类型 1-销售 2-消耗") + @ApiModelProperty(value = "数据类型 1-销售 2-消耗", example = "1") private String dataType; - @ApiModelProperty(value = "排行榜类型 1-日榜 2-月榜 3-年榜") + @ApiModelProperty(value = "排行榜类型 1-日榜 2-月榜 3-年榜", example = "1") private String type; - @ApiModelProperty(value = "时间") + @ApiModelProperty(value = "时间", example = "2020-12-25") private String time; public String getDataType() { diff --git a/zq-erp/src/main/java/com/matrix/system/app/vo/RankingVo.java b/zq-erp/src/main/java/com/matrix/system/app/vo/RankingVo.java index 0b2007b..8f9ccf5 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/vo/RankingVo.java +++ b/zq-erp/src/main/java/com/matrix/system/app/vo/RankingVo.java @@ -49,7 +49,7 @@ } public BigDecimal getAmount() { - return amount; + return amount == null ? amount : amount.setScale(BigDecimal.ROUND_DOWN, 2); } public void setAmount(BigDecimal amount) { diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java index ea162f3..c5a9c3b 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/AchieveNewDao.java @@ -6,6 +6,7 @@ import com.matrix.core.pojo.PaginationVO; import com.matrix.system.app.vo.OrderDetailAchieveItemVo; +import com.matrix.system.app.vo.RankingVo; import com.matrix.system.app.vo.UserAchieveVo; import com.matrix.system.hive.bean.AchieveNew; import org.apache.ibatis.annotations.Param; @@ -62,4 +63,6 @@ UserAchieveVo selectUserAchieveByTime(@Param("startTime") Date startTime, @Param("endTime") Date endTime, @Param("userId") Long userId); List<OrderDetailAchieveItemVo> selectApiOrderItemAchieve(@Param("itemId") Long itemId); + + List<RankingVo> selectShopConsumeAchieveRanking(AchieveNew achieveNew); } \ No newline at end of file diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml index 1994fd2..2509e3e 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml @@ -958,4 +958,29 @@ inner join sys_users b on (a.beault_id=b.su_id or a.sale_id = b.su_id) where a.order_item_id=#{itemId} and order_type = '订单' </select> + + <select id="selectShopConsumeAchieveRanking" resultType="com.matrix.system.app.vo.RankingVo"> + select + b.shop_short_name, + b.SHOP_IMAG photo, + sum(IFNULL(a.free_consume,0) + IFNULL(a.consume,0) + IFNULL(a.his_consume,0)) amount + from achieve_new a + left join sys_shop_info b on a.shop_id=b.ID + <where> + <if test="record.companyId != null"> + and a.company_id=#{record.companyId} + </if> + <if test='record.t1 == "1" and record.orderTime != null'> + and date_format(datatime, '%Y-%m-%d') = date_format(#{record.datatime}, '%Y-%m-%d') + </if> + <if test='record.t1 == "2" and record.orderTime != null'> + and date_format(datatime, '%Y-%m') = date_format(#{record.datatime}, '%Y-%m') + </if> + <if test='record.t1 == "3" and record.orderTime != null'> + and date_format(datatime, '%Y') = date_format(#{record.datatime}, '%Y') + </if> + </where> + group by a.shop_id + order by amount desc, a.shop_id + </select> </mapper> \ No newline at end of file -- Gitblit v1.9.1