From de589b98ff007afdcec9d6cef5d1a2b168031b98 Mon Sep 17 00:00:00 2001 From: jyy <935090232@qq.com> Date: Sat, 16 Jan 2021 16:12:20 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/api' into api --- zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipLevel.java | 8 ++ zq-erp/src/main/java/com/matrix/system/hiveErp/dao/TjVipSumDao.java | 2 zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml | 6 ++ zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java | 42 ++++++++++---- zq-erp/src/main/resources/mybatis/mapper/hive/SysVipLevelDao.xml | 16 ++++ zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml | 65 ++++----------------- zq-erp/src/main/java/com/matrix/system/app/dto/OrderListDto.java | 11 +++ zq-erp/src/main/java/com/matrix/system/hive/action/CardLevelController.java | 1 zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml | 2 zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java | 2 zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml | 2 11 files changed, 89 insertions(+), 68 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java index 891c01f..50fb898 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java +++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiOrderAction.java @@ -14,6 +14,7 @@ import com.matrix.system.app.vo.ShoppingGoodsListVo; import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.tools.DataAuthUtil; +import com.matrix.system.hive.action.util.QueryUtil; import com.matrix.system.hive.bean.ShoppingGoodsCategory; import com.matrix.system.hive.bean.SysOrder; import com.matrix.system.hive.plugin.util.CollectionUtils; @@ -134,6 +135,7 @@ if (!DataAuthUtil.hasAllShopAuth()) { orderListDto.setShopId(user.getShopId()); } + QueryUtil.setQueryLimitCom(orderListDto); return AjaxResult.buildSuccessInstance(sysOrderService.findApiOrderListInPage(orderListDto, pageVo), sysOrderService.findApiOrderListTotal(orderListDto)); } diff --git a/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java b/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java index 97bbb20..104d16c 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java +++ b/zq-erp/src/main/java/com/matrix/system/app/action/ApiStatisticsAction.java @@ -68,6 +68,7 @@ int start = (businessesDto.getPageNum() - 1) * businessesDto.getPageSize(); int size = businessesDto.getPageSize(); Calendar calendar = Calendar.getInstance(); + calendar.add(calenderUnit, 1); calendar.add(calenderUnit, -start); String endTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD); calendar.add(calenderUnit, -size); @@ -189,24 +190,41 @@ }) @PostMapping(value = "/findVipAchieve") public AjaxResult findVipAchieve(@RequestBody BusinessesDto businessesDto) { - AchieveNew achieveNew = new AchieveNew(); + String unit = ""; + int calenderUnit; if (BusinessesDto.DAY.equals(businessesDto.getType())) { - achieveNew.setT1("%Y-%m-%d"); + unit = "日"; + calenderUnit = Calendar.DATE; } else { - achieveNew.setT1("%Y-%m"); + unit = "月"; + calenderUnit = Calendar.MONTH; } - SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); - if (businessesDto.getStaffId() == null) { + int start = (businessesDto.getPageNum() - 1) * businessesDto.getPageSize(); + int size = businessesDto.getPageSize(); + Calendar calendar = Calendar.getInstance(); + calendar.add(calenderUnit, 1); + calendar.add(calenderUnit, -start); + String endTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD); + calendar.add(calenderUnit, -size); + String startTime = DateUtil.dateToString(calendar.getTime(), DateUtil.DATE_FORMAT_DD); + List<Date> xAxis = StatisticsTimeUtil.getTimeSpace(startTime, endTime, unit); + List<StatisticsTimeDaoParam> timeSpaceParam = StatisticsTimeUtil.buidParam(xAxis); + List<StatisticsTimeDaoParam> statisticsTimeDaoParams = timeSpaceParam.subList(0, timeSpaceParam.size() - 2); + List<VipAchieveDataShowVo> list = tjVipSumDao.selectVipAchieveInPage(statisticsTimeDaoParams, businessesDto.getStaffId()); - businessesDto.setStaffId(sysUsers.getSuId()); + List<VipAchieveDataShowVo> result = new ArrayList<>(); + for (int i = list.size() - 1; i >= 0; i--) { + VipAchieveDataShowVo item = list.get(i); + String dataTime = item.getTime(); + if (BusinessesDto.DAY.equals(businessesDto.getType())) { + item.setTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.DATE_FORMAT_DD), DateUtil.DATE_FORMAT_DD)); + } else { + item.setTime(DateUtil.dateToString(DateUtil.stringToDate(dataTime, DateUtil.MONTH), DateUtil.MONTH)); + } + result.add(item); } - achieveNew.setVipId(businessesDto.getStaffId()); - - PaginationVO pageVo = new PaginationVO(); - pageVo.setLimit(businessesDto.getPageSize()); - pageVo.setOffset((businessesDto.getPageNum() - 1) * businessesDto.getPageSize()); - return AjaxResult.buildSuccessInstance(tjVipSumDao.selectVipAchieveInPage(achieveNew, pageVo)); + return AjaxResult.buildSuccessInstance(result); } @ApiOperation(value = "员工专项", notes = "员工专项") diff --git a/zq-erp/src/main/java/com/matrix/system/app/dto/OrderListDto.java b/zq-erp/src/main/java/com/matrix/system/app/dto/OrderListDto.java index 98b01dc..f6ba866 100644 --- a/zq-erp/src/main/java/com/matrix/system/app/dto/OrderListDto.java +++ b/zq-erp/src/main/java/com/matrix/system/app/dto/OrderListDto.java @@ -22,6 +22,17 @@ @ApiModelProperty(hidden = true) private Long shopId; + @ApiModelProperty(hidden = true) + private Long companyId; + + public Long getCompanyId() { + return companyId; + } + + public void setCompanyId(Long companyId) { + this.companyId = companyId; + } + public Long getShopId() { return shopId; } diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/CardLevelController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/CardLevelController.java index 43aece2..b92149f 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/action/CardLevelController.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/action/CardLevelController.java @@ -43,6 +43,7 @@ public @ResponseBody AjaxResult addOrModify(SysVipLevel vipLevel) { SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); vipLevel.setShopId(users.getShopId()); + vipLevel.setCompanyId(users.getCompanyId()); if (vipLevel.getId() != null) { return modify(cardLevelService, vipLevel, "会员卡信息"); diff --git a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipLevel.java b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipLevel.java index 5b3f178..e235061 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipLevel.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/bean/SysVipLevel.java @@ -54,7 +54,15 @@ private Long shopId; + private Long companyId; + public Long getCompanyId() { + return companyId; + } + + public void setCompanyId(Long companyId) { + this.companyId = companyId; + } public Long getShopId() { return shopId; diff --git a/zq-erp/src/main/java/com/matrix/system/hiveErp/dao/TjVipSumDao.java b/zq-erp/src/main/java/com/matrix/system/hiveErp/dao/TjVipSumDao.java index 21c325f..e0e6f8f 100644 --- a/zq-erp/src/main/java/com/matrix/system/hiveErp/dao/TjVipSumDao.java +++ b/zq-erp/src/main/java/com/matrix/system/hiveErp/dao/TjVipSumDao.java @@ -35,7 +35,7 @@ Map<String, BigDecimal> selectCardRefund(@Param("list") List<StatisticsTimeDaoParam> timeSpaceParam, @Param("shopId") Long shopId, @Param("companyId") Long companyId); Map<String, BigDecimal> selectCashRefund(@Param("list") List<StatisticsTimeDaoParam> timeSpaceParam, @Param("shopId") Long shopId, @Param("companyId") Long companyId); - List<VipAchieveDataShowVo> selectVipAchieveInPage(@Param("record") AchieveNew achieveNew, @Param("pageVo") PaginationVO pageVo); + List<VipAchieveDataShowVo> selectVipAchieveInPage(@Param("list") List<StatisticsTimeDaoParam> timeSpaceParam, @Param("userId") Long userId); Map<String, BigDecimal> selectStaffOrderAchieve(@Param("list") List<StatisticsTimeDaoParam> timeSpaceParam, @Param("staffId") Long staffId); Map<String, BigDecimal> selectStaffCashAchieve(@Param("list") List<StatisticsTimeDaoParam> timeSpaceParam, @Param("staffId") Long staffId); 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 24f299d..de06b22 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/AchieveNewDao.xml @@ -948,7 +948,7 @@ sum(IFNULL(proj_percentage, 0)) projCommission from achieve_new a left join sys_order b on a.beault_id=b.STAFF_ID and (date_format(b.ORDER_TIME, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(b.ORDER_TIME, '%Y-%m-%d')) - where a.beault_id=#{userId} + where a.beault_id=#{userId} and a.order_type = '订单' and (date_format(datatime, '%Y-%m-%d') >= date_format(#{startTime}, '%Y-%m-%d') and date_format(#{endTime}, '%Y-%m-%d') >= date_format(datatime, '%Y-%m-%d')) </select> diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml index a6c4475..61df9a6 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml @@ -1248,7 +1248,7 @@ measure measure, a.good_type goodsType from shopping_goods a - where 1=1 and staus = '上架' + where 1=1 and staus = '上架' and a.is_del=1 <if test="record.queryKey != null and record.queryKey != ''"> and (instr(name,#{record.queryKey}) or instr(code ,#{record.queryKey}) or instr(zjm ,#{record.queryKey})) </if> diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml index bd84983..737b370 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysOrderDao.xml @@ -504,6 +504,9 @@ <if test="record.shopId != null"> and a.shop_id=#{record.shopId} </if> + <if test="record.companyId != null"> + and a.company_id=#{record.companyId} + </if> </where> <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> order by a.order_time desc @@ -530,6 +533,9 @@ <if test="record.shopId != null"> and a.shop_id=#{record.shopId} </if> + <if test="record.companyId != null"> + and a.company_id=#{record.companyId} + </if> </where> </select> diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipLevelDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipLevelDao.xml index 5adb97d..efcb7f3 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipLevelDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/SysVipLevelDao.xml @@ -13,6 +13,7 @@ <result property="effectDate" column="EFFECT_DATE" /> <result property="bigclass" column="BIGCLASS" /> <result property="shopId" column="shop_id" /> + <result property="companyId" column="company_id" /> </resultMap> <!-- 插入方法 --> <insert id="insert" parameterType="SysVipLevel" @@ -25,7 +26,8 @@ REMARK, EFFECT_DATE, BIGCLASS, - shop_id + shop_id, + company_id ) VALUES ( #{id}, @@ -35,7 +37,8 @@ #{remark}, #{effectDate}, #{bigclass}, - #{shopId} + #{shopId}, + #{companyId} ) </insert> @@ -123,6 +126,9 @@ <if test="record.shopId != null and record.shopId !='' "> and shop_id = #{record.shopId} </if> + <if test="record.companyId != null and record.companyId !='' "> + and company_id = #{record.companyId} + </if> </if> <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> <if test="pageVo.sort !=null and pageVo.order !=null"> @@ -165,6 +171,9 @@ </if> <if test="record.shopId != null and record.shopId !='' "> and shop_id = #{record.shopId} + </if> + <if test="record.companyId != null and record.companyId !='' "> + and company_id = #{record.companyId} </if> </if> </select> @@ -223,6 +232,9 @@ <if test="record.shopId != null and record.shopId !='' "> and shop_id = #{record.shopId} </if> + <if test="record.companyId != null and record.companyId !='' "> + and company_id = #{record.companyId} + </if> </if> </select> </mapper> \ No newline at end of file diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml index 43e968b..68767c8 100644 --- a/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml +++ b/zq-erp/src/main/resources/mybatis/mapper/hive/TjVipSumDao.xml @@ -229,58 +229,21 @@ </select> <select id="selectVipAchieveInPage" resultType="com.matrix.system.app.vo.VipAchieveDataShowVo"> - select - date_format(a.datatime, #{record.t1}) time, - ROUND(sum(IFNULL(zk_total, 0)), 2) orderAmount, - ROUND(sum(IFNULL(proj_cash, 0)), 2) cashAmount, - ROUND(sum(IFNULL(card_cash, 0)), 2) cardAmount, - ROUND(sum(IFNULL(goods_cash, 0)), 2) goodsAmount, - ROUND(sum(IFNULL(consume, 0)), 2) cardUseAmount, - ROUND(sum(IFNULL(his_consume, 0)), 2) hisConsume, - ROUND(sum(IFNULL(free_consume, 0)), 2) freeConsume, - ROUND(sum(IFNULL(proj_percentage, 0)), 2) commission, - ROUND(sum(IFNULL(number_of_people, 0)), 2) peopleNum, - ROUND(sum(IFNULL(proj_num, 0)), 2) projNum, - ROUND(sum(IFNULL(proj_time, 0)), 2) serviceTime - from ( - select * from ( - select * from ( - select date_format(date_add(now(), INTERVAL -(@rowd := @rowd + 1) DAY), '%Y-%m-%d') datatime - from achieve_new a, (select @rowd := 0) t - ) a - ) a - left join ( + <foreach collection="list" index="index" item="item" separator="union all" > select - date_format(a.datatime, '%Y-%m-%d') datatime1, - SUM((IFNULL(a.card_cash,0) +IFNULL(a.proj_cash,0) + IFNULL(a.goods_cash,0))) as zk_total, - SUM(IFNULL(a.proj_cash,0)) proj_cash, - SUM(IFNULL(a.goods_cash, 0)) goods_cash, - SUM(IFNULL(a.card_cash,0)) card_cash, - SUM(IFNULL(a.consume, 0)) consume - from achieve_new a where a.sale_id=#{record.vipId} - group by date_format(a.datatime, '%Y-%m-%d') - ) b on a.datatime=b.datatime1 - left join ( - select - date_format(b.datatime, '%Y-%m-%d') datatime2, - SUM(IFNULL(b.his_consume, 0)) his_consume, - SUM(IFNULL(b.free_consume, 0)) free_consume, - SUM(IFNULL(b.proj_percentage, 0)) proj_percentage, - SUM(IFNULL(b.number_of_people, 0)) number_of_people, - SUM(IFNULL(b.proj_num, 0)) proj_num, - SUM(IFNULL(b.proj_time, 0)) proj_time - from achieve_new b where b.beault_id=#{record.vipId} - group by date_format(b.datatime, '%Y-%m-%d') - ) c on a.datatime=c.datatime2 - ) a - group by date_format(a.datatime, #{record.t1}) - order by a.datatime desc - <if test="pageVo !=null"><!-- 判断pageVo对象是否为空 --> - <if test="pageVo.offset >=0 and pageVo.limit >0"> - limit - #{pageVo.offset},#{pageVo.limit} - </if> - </if> + #{item.beginTime} time, + (select ifnull(sum(card_cash),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) orderAmount, + (select ifnull(sum(case t3 when '现金业绩' then card_cash else 0 end),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cashAmount, + (select ifnull(sum(case t3 when '划扣业绩' then card_cash else 0 end),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) cardAmount, + (select ifnull(sum(ifnull(proj_percentage, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> and order_type='订单') goodsAmount, + (select ifnull(sum(ifnull(his_consume, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) hisConsume, + (select ifnull(sum(ifnull(free_consume, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) freeConsume, + (select ifnull(sum(ifnull(proj_percentage, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]> and order_type='服务单') commission, + (select ifnull(sum(ifnull(number_of_people, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) peopleNum, + (select ifnull(sum(ifnull(proj_num, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) projNum, + (select ifnull(sum(ifnull(proj_time, 0)),0) from achieve_new a where a.beault_id=#{userId} and <![CDATA[datatime > #{item.beginTime} and datatime < #{item.endTime} ]]>) serviceTime + from dual + </foreach> </select> <select id="selectStaffOrderAchieve" resultType="java.util.TreeMap"> -- Gitblit v1.9.1