From 0d637b14535c16c765f8823bf1dd74fdf45e1928 Mon Sep 17 00:00:00 2001 From: yangqingyuan Date: Tue, 27 Aug 2024 11:28:24 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E6=94=B6=E7=9B=8A=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=A2=9E=E5=8A=A0=E5=85=B3=E8=81=94=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../shop/controller/ProfitLogController.java | 27 ++----------- .../com/gxwebsoft/shop/entity/ProfitLog.java | 13 ++++++ .../shop/mapper/xml/ProfitLogMapper.xml | 40 ++++--------------- .../service/impl/ProfitLogServiceImpl.java | 10 ----- 4 files changed, 25 insertions(+), 65 deletions(-) diff --git a/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java b/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java index 6c36bce..a34f7fc 100644 --- a/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java +++ b/src/main/java/com/gxwebsoft/shop/controller/ProfitLogController.java @@ -43,37 +43,18 @@ public class ProfitLogController extends BaseController { @ApiOperation("分页查询门店收益明细表") @GetMapping("/page") public ApiResult> page(ProfitLogParam param) { + PageResult result = profitLogService.pageRel(param); + PageParam page = new PageParam<>(param); QueryWrapper wrapper = page.getWrapper("beginDate", "endDate", "scene"); - LocalDate beginDate = param.getBeginDate(); - if(null != beginDate){ -// Date dBegin = LocalDateUtil.localDate2Date(beginDate); - wrapper.ge("create_time", beginDate); - } - - LocalDate endDate = param.getEndDate(); - if(null != endDate){ -// Date dEnd = LocalDateUtil.localDate2Date(endDate.plusDays(1)); - wrapper.lt("create_time", endDate.plusDays(1)); - } - - Integer scene = param.getScene(); - if(null != scene && scene > 0){ - wrapper.eq("scene", scene); - } - - wrapper.orderByDesc("create_time"); - Page result = profitLogService.page(new Page<>(param.getPage(), param.getLimit()), wrapper); - JSONObject total = new JSONObject(); wrapper.select("ifnull(sum(money), 0) money"); ProfitLog sum = profitLogService.getOne(wrapper); if(null != sum){ total.put("total", sum.getMoney()); } - PageResult retPage = new PageResult<>(result.getRecords(), result.getTotal()); - retPage.setOtherData(total); - return success(retPage); + result.setOtherData(total); + return success(result); // 使用关联查询 // return success(profitLogService.pageRel(param)); } diff --git a/src/main/java/com/gxwebsoft/shop/entity/ProfitLog.java b/src/main/java/com/gxwebsoft/shop/entity/ProfitLog.java index d1575d6..d9933cb 100644 --- a/src/main/java/com/gxwebsoft/shop/entity/ProfitLog.java +++ b/src/main/java/com/gxwebsoft/shop/entity/ProfitLog.java @@ -42,6 +42,10 @@ public class ProfitLog implements Serializable { @ApiModelProperty(value = "订单号") private String orderNo; + @ApiModelProperty(value = "关联订单号") + @TableField(exist = false) + private String relationOrderNo; + private Integer orderSource; @ApiModelProperty(value = "是否续费订单") @@ -113,4 +117,13 @@ public class ProfitLog implements Serializable { } return sceneDis; } + + public String getRelationOrderNo(){ + if (null != relationOrderNo){ + if (relationOrderNo.contains("续租订单:")){//FIXME 还有更好的做法? + return relationOrderNo.replace("续租订单:",""); + } + } + return relationOrderNo; + } } diff --git a/src/main/java/com/gxwebsoft/shop/mapper/xml/ProfitLogMapper.xml b/src/main/java/com/gxwebsoft/shop/mapper/xml/ProfitLogMapper.xml index 42a25e0..073f05f 100644 --- a/src/main/java/com/gxwebsoft/shop/mapper/xml/ProfitLogMapper.xml +++ b/src/main/java/com/gxwebsoft/shop/mapper/xml/ProfitLogMapper.xml @@ -4,55 +4,31 @@ - SELECT a.*,b.user as orderUserName + SELECT a.*,b.id,b.comments as relationOrderNo FROM shop_profit_log a + LEFT JOIN shop_order_pay b ON a.order_id = b.id AND a.profit_id = #{param.profitId} - - AND a.order_id = #{param.orderId} - AND a.user_id = #{param.userId} AND a.scene = #{param.scene} - - AND a.money = #{param.money} - - - AND a.balance = #{param.balance} - - - AND a.remark LIKE CONCAT('%', #{param.remark}, '%') - - - AND a.sort_number = #{param.sortNumber} - - - AND a.comments LIKE CONCAT('%', #{param.comments}, '%') - - - AND a.status = #{param.status} - - - AND a.deleted = #{param.deleted} - - - AND a.deleted = 0 - + AND a.deleted = 0 AND a.merchant_code LIKE CONCAT('%', #{param.merchantCode}, '%') - - AND a.create_time >= #{param.createTimeStart} + + AND a.create_time >= #{param.beginDate} - - AND a.create_time <= #{param.createTimeEnd} + + AND a.create_time <= #{param.endDate} + ORDER BY a.create_time desc diff --git a/src/main/java/com/gxwebsoft/shop/service/impl/ProfitLogServiceImpl.java b/src/main/java/com/gxwebsoft/shop/service/impl/ProfitLogServiceImpl.java index daa0f6f..74852d1 100644 --- a/src/main/java/com/gxwebsoft/shop/service/impl/ProfitLogServiceImpl.java +++ b/src/main/java/com/gxwebsoft/shop/service/impl/ProfitLogServiceImpl.java @@ -34,18 +34,8 @@ public class ProfitLogServiceImpl extends ServiceImpl pageRel(ProfitLogParam param) { PageParam page = new PageParam<>(param); - //page.setDefaultOrder("create_time desc"); - List list = baseMapper.selectPageRel(page, param); - if(!CollectionUtils.isEmpty(list)) { - Set orderIds = list.stream().map(ProfitLog::getOrderId).collect(Collectors.toSet()); - List orderList = orderService.lambdaQuery().in(Order::getOrderId, orderIds).list(); - Map> collect = orderList.stream().collect(Collectors.groupingBy(Order::getOrderId)); - list.forEach(item -> { - item.setOrder(CollectionUtils.firstElement(collect.get(item.getOrderId()))); - }); - } return new PageResult<>(list, page.getTotal()); }