From f187447bd12914967b4a25f122291e5964fc2d2e Mon Sep 17 00:00:00 2001 From: winter Date: Fri, 14 Jan 2022 12:02:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96B=E7=AB=AF=E5=88=B8=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxCouponOrderController.java | 59 +++++++------- .../schedule/DaliyAmountSchedule.java | 8 ++ .../impl/WxCouponOrderServiceImpl.java | 29 ++++++- .../resources/mapper/WxCouponOrderMapper.xml | 78 +++++++++---------- 4 files changed, 99 insertions(+), 75 deletions(-) diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java index f942329df..8f0f7c696 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java @@ -109,7 +109,6 @@ public class WxCouponOrderController extends BaseController { return new ResultData(); } - //TODO 待优化数据 @ApiOperation("交易流水分页列表接口") @GetMapping("listUnverified") @ApiImplicitParams({ @@ -119,35 +118,35 @@ public class WxCouponOrderController extends BaseController { public ResultData listUnverified(String date, Integer pageNum, Integer pageSize) { return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, false); } -// -// @ApiOperation("核销流水分页列表接口") -// @GetMapping("listVerified") -// @ApiImplicitParams({ -// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"), -// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), -// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) -// public ResultData listVerified(String date, Integer pageNum, Integer pageSize) { -// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, true); -// } -// -// -// @RedisCache -// @ApiOperation("某日期交易总流水") -// @GetMapping("getUnverifiedAmountOnDate") -// @ApiImplicitParams({ -// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) -// public ResultData getUnverifiedAmountOnDate(String date) { -// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, false); -// } - -// @RedisCache -// @ApiOperation("某日期核销总流水") -// @GetMapping("getVerifiedAmountOnDate") -// @ApiImplicitParams({ -// @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) -// public ResultData getVerifiedAmountOnDate(String date) { -// return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, true); -// } + + @ApiOperation("核销流水分页列表接口") + @GetMapping("listVerified") + @ApiImplicitParams({ + @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"), + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) + public ResultData listVerified(String date, Integer pageNum, Integer pageSize) { + return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, pageNum, pageSize, true); + } + + + @RedisCache + @ApiOperation("某日期交易总流水") + @GetMapping("getUnverifiedAmountOnDate") + @ApiImplicitParams({ + @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) + public ResultData getUnverifiedAmountOnDate(String date) { + return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, false); + } + + @RedisCache + @ApiOperation("某日期核销总流水") + @GetMapping("getVerifiedAmountOnDate") + @ApiImplicitParams({ + @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query")}) + public ResultData getVerifiedAmountOnDate(String date) { + return wxCouponOrderService.listOnDateAsPage(getLoginBUser().getId(), date, null, null, true); + } @ApiOperation(value = "卡券详情接口") diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/DaliyAmountSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/DaliyAmountSchedule.java index 8a3b99467..46ffae331 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/DaliyAmountSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/DaliyAmountSchedule.java @@ -38,6 +38,9 @@ public class DaliyAmountSchedule { @Autowired private WxOrderMapper wxOrderMapper; + + @Autowired + WxMerchantBUserMapper wxMerchantBUserMapper; @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) @@ -47,6 +50,11 @@ public class DaliyAmountSchedule { dateMap.put("endDate", endDate); dateMap.put("merchantId", merchant.getId()); dateMap.put("tenantId", merchant.getTenantId()); + WxMerchantBUser merchantBUserQ = new WxMerchantBUser(); + merchantBUserQ.updateTenantInfo(merchant); + merchantBUserQ.setMerchantId(merchant.getId()); + List bUserIds = wxMerchantBUserMapper.findIdList(merchantBUserQ); + dateMap.put("bUserIds", bUserIds); List list = wxCouponOrderMapper.findListOfOrderedByDate(dateMap); logger.info("find " + list.size() + " coupon order from " + startDate + " to " + endDate); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 0c123e1ba..2b7c58277 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -259,10 +259,35 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { if (pageIndex == null || pageSize == null) { List list; - if (isVerified) + if (isVerified) { + WxMerchantBUser merchantBUserQ = new WxMerchantBUser(); + merchantBUserQ.updateTenantInfo(wxMerchant); + merchantBUserQ.setMerchantId(wxMerchant.getId()); + List bUserIds = wxMerchantBUserMapper.findIdList(merchantBUserQ); + dateMap.put("bUserIds", bUserIds); list = wxCouponOrderMapper.findListOfVerifiedByDate(dateMap); - else + }else { + dateMap.put("startDateTimes", startDate.getTime()); + dateMap.put("endDateTimes", endDate.getTime()); + List merchantIdList = new ArrayList(); + merchantIdList.add(wxMerchant.getId()); + List merchantProductVos = wxCouponMerchantMapper.findMerchantProduct(wxMerchant.getTenantId(), merchantIdList); + if (null != merchantProductVos) { + List couponIds = new ArrayList(); + for (int i = 0 ; i < merchantProductVos.size(); i ++) { + WxMerchantProductVo mp = merchantProductVos.get(i); + if (mp.getMc() == 1) { + if (!couponIds.contains(mp.getProductId())) { + couponIds.add(mp.getProductId()); + } + } + } + if (couponIds.size() > 0 ) { + dateMap.put("couponIds", couponIds); + } + } list = wxCouponOrderMapper.findListOfOrderedByDate(dateMap); + } //logger.info("find " + list.size() + " coupon order from " + /startDate + " to " + new Date()); resultMap.put("amount", list.stream().mapToInt(p -> p.getCouponPrice()).sum()); resultMap.put("orderCount", list.size()); diff --git a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml index 3c0c56a47..06a447a0f 100644 --- a/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml @@ -878,8 +878,17 @@ co.create_date,co.update_date,co.coupon_price, co.verify_type, co.verify_remark,co.pay_vendor, co.`freight_price`,co.`shipping_type`,co.`shipping_address`,co.`shipping_status`,co.`delivery_info`,co.send_merchant_id,co.subsidy FROM wx_coupon_order co where co.`tenant_id` = #{tenantId} - - and co.`id` = #{id} + + and co.id = #{id} + + + and co.order_id = #{orderId} + + + and c.id = #{couponId} + + + and co.c_user_id = #{cUserId} @@ -932,19 +941,6 @@ AND co.update_date < #{verifyEndDate,jdbcType=TIMESTAMP} - - and co.id = #{id} - - - and co.order_id = #{orderId} - - - and c.id = #{couponId} - - - and co.c_user_id = #{cUserId} - - and co.coupon_id in @@ -1058,42 +1054,39 @@ - + - select - from wx_coupon_order co,wx_coupon_merchant cm, - (select tco.id as tcoid, - (select count(*) from wx_coupon_merchant tcm - where tcm.product_id = tco.coupon_id - and tcm.status = 0) - as mc - from wx_coupon_order tco) com - where com.mc = 1 - and co.tenant_id = #{tenantId} - and com.tcoid = co.id - and cm.status = 0 - and cm.merchant_id = #{merchantId} - and cm.product_id = co.coupon_id - - AND co.create_date > #{startDate,jdbcType=TIMESTAMP} + from wx_coupon_order co + where co.tenant_id = #{tenantId} + + AND co.create_date_times > #{startDateTimes} - - AND co.create_date < #{endDate,jdbcType=TIMESTAMP} + + AND co.create_date_times < #{endDateTimes} + + + and co.coupon_id in + + #{couponIdItem} + +