From 514100938e895d5f7c2a559b8b56a1f2c9dd5da2 Mon Sep 17 00:00:00 2001 From: xhxu Date: Mon, 24 Jan 2022 11:35:17 +0800 Subject: [PATCH] =?UTF-8?q?/=E3=80=81credit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mem/WxCreditHistoryController.java | 3 +- .../mapper/WxCUserBasicInfoMapper.java | 2 + .../mapper/WxCreditHistoryMapper.java | 2 - .../impl/WxCreditHistoryServiceImpl.java | 63 +++--- .../mapper/WxCUserBasicInfoMapper.xml | 9 + .../mapper/WxCreditHistoryMapper.xml | 212 +++++------------- 6 files changed, 102 insertions(+), 189 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java index 8907b2e96..79cd217d7 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCreditHistoryController.java @@ -151,8 +151,7 @@ public class WxCreditHistoryController extends BaseController { public ResultData getCreditSummary(@ModelAttribute WxCreditHistory wxCreditHistory) { logger.debug("[" + getIpAddr() + "] WxCreditHistoryController::getCreditSummary"); TenantEntity tenantInfo = getTenantInfo(); - wxCreditHistory.setTenantId(tenantInfo.getFinalTenantId()); - wxCreditHistory.setFinalTenantId(tenantInfo.getFinalTenantId()); + wxCreditHistory.updateTenantInfo(tenantInfo); return wxCreditHistoryService.getCreditSummary(wxCreditHistory); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java index 81da480ae..7584390df 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCUserBasicInfoMapper.java @@ -63,5 +63,7 @@ public interface WxCUserBasicInfoMapper extends CommonMapper findIdByFilter(WxCUserBasicInfoDto wxCUserBasicInfoDto); + + long getTotalCreditAmount(@Param("tenantId")String tenantId, @Param("finalTenantId")String finalTenantId); } diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java index 9f2d29fe8..084fe9afe 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCreditHistoryMapper.java @@ -24,8 +24,6 @@ public interface WxCreditHistoryMapper extends CommonMapper merchantIds = wxMerchantMapper.findIdList(merchantQ); + if (null != merchantIds && merchantIds.size() > 0 ) { + wxCreditHistory.setMerchantIds(merchantIds); + } + } + + String name = StringUtils.trimToNull(wxCreditHistory.getName()); + String phone = StringUtils.trimToNull(wxCreditHistory.getPhone()); + if (StringUtils.isBlank(name) && StringUtils.isBlank(phone)) { + }else { + WxCUserBasicInfo biq = new WxCUserBasicInfo(); + biq.setFinalTenantId(wxCreditHistory.getFinalTenantId()); + biq.setName(name); + biq.setPhone(phone); + List cUserIds = wxCUserBasicInfoMapper.findIdList(biq); + if (null != cUserIds && cUserIds.size() > 0 ) { + wxCreditHistory.setCUserIds(cUserIds); + } + } + } @Override public PageInfo findListMorePage(WxCreditHistory wxCreditHistory,Integer pageIndex, Integer pageSize) { @@ -299,30 +326,7 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { tenantEntity.setTenantId(wxCreditHistory.getTenantId()); tenantEntity.setParentTenantId(wxCreditHistory.getParentTenantId()); - String merchantName = StringUtils.trimToNull(wxCreditHistory.getMerchantName()); - if(!StringUtils.isBlank(merchantName)) { - WxMerchant merchantQ = new WxMerchant(); - merchantQ.updateTenantInfo(tenantEntity); - merchantQ.setName(merchantName); - List merchantIds = wxMerchantMapper.findIdList(merchantQ); - if (null != merchantIds && merchantIds.size() > 0 ) { - wxCreditHistory.setMerchantIds(merchantIds); - } - } - - String name = StringUtils.trimToNull(wxCreditHistory.getName()); - String phone = StringUtils.trimToNull(wxCreditHistory.getPhone()); - if (StringUtils.isBlank(name) && StringUtils.isBlank(phone)) { - }else { - WxCUserBasicInfo biq = new WxCUserBasicInfo(); - biq.setFinalTenantId(wxCreditHistory.getFinalTenantId()); - biq.setName(name); - biq.setPhone(phone); - List cUserIds = wxCUserBasicInfoMapper.findIdList(biq); - if (null != cUserIds && cUserIds.size() > 0 ) { - wxCreditHistory.setCUserIds(cUserIds); - } - } + handlerParam(wxCreditHistory); wxCreditHistory.setTenantId(wxCreditHistory.getFinalTenantId()); PageInfo pageInfo = PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxCreditHistoryMapper.findListMore(wxCreditHistory)); @@ -340,7 +344,16 @@ public class WxCreditHistoryServiceImpl implements WxCreditHistoryService { @Override public ResultData getCreditSummary(WxCreditHistory wxCreditHistory) { - long totalCreditAmount = wxCreditHistoryMapper.getTotalCreditAmount(wxCreditHistory); + TenantEntity tenantEntity = new TenantEntity(); + tenantEntity.setTenantId(wxCreditHistory.getTenantId()); + tenantEntity.setParentTenantId(wxCreditHistory.getParentTenantId()); + + //获取所有会员的积分总量 + long totalCreditAmount = wxCUserBasicInfoMapper.getTotalCreditAmount(tenantEntity.getTenantId(),tenantEntity.getFinalTenantId()); + + handlerParam(wxCreditHistory); + wxCreditHistory.setTenantId(wxCreditHistory.getFinalTenantId()); + long incrementCreditAmount = wxCreditHistoryMapper.getIncrementCreditAmount(wxCreditHistory); long decrementCreditAmount = wxCreditHistoryMapper.getDecrementCreditAmount(wxCreditHistory); long peopleCount = wxCreditHistoryMapper.getPeopleCount(wxCreditHistory); diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index 243decf71..6cf12ca6d 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -557,6 +557,15 @@ + + UPDATE wx_c_user_basic_info set act_record = act_record +1 where id = #{id} and final_tenant_id = #{finalTenantId} diff --git a/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml index 3d5ed97fa..478b0b0fb 100644 --- a/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCreditHistoryMapper.xml @@ -26,83 +26,12 @@ - where 1 = 1 - - and `id` = #{id} - - - and `tenant_id` = #{tenantId} - - - and `c_user_id` = #{cUserId} - - - and `credit_amount` = #{creditAmount} - - - and `credit_num` = #{creditNum} - - - and `credit_type` = #{creditType} - - - and `receipt_url` like concat('%', #{receiptUrl},'%') - - - and `operator_type` = #{operatorType} - - - and `operator_id` = #{operatorId} - - - and `merchant_id` = #{merchantId} - - - and `coupon_id` = #{couponId} - - - and `business_id` = #{businessId} - - - and `spend` = #{spend} - - - and `change_purpose` = #{changePurpose} - - - and ticket_number like concat('%', #{ticketNumber},'%') - - - - and `buser_id` = #{buserId} - - - - and id in - - #{idItem} - - - order by ${sortColumns} - - - - where 1 = 1 - - and basic.nick_name like concat('%', #{name},'%') - - - and basic.phone like concat('%', #{phone},'%') - and credit.create_date >= #{startTime} and credit.create_date < #{endTime} - - and credit.`tenant_id` = #{tenantId} - and credit.operator_type = #{operatorType} @@ -118,17 +47,26 @@ and credit.merchant_id = #{merchantId} - - and merchant.name like concat('%', #{merchantName},'%') - and credit.ticket_number like concat('%', #{ticketNumber},'%') - and credit.buser_id = #{buserId} - + + + and credit.merchantId in + + #{merchantIdItem} + + + + + and credit.c_user_id in + + #{cUserIdItem} + + - - - - select ifnull(sum(credit.credit_num),0) amount from wx_credit_history credit + select ifnull(sum(credit.credit_num),0) amount + from wx_credit_history credit where credit.`tenant_id` = #{tenantId} - and credit.credit_num < 0 and credit.c_user_id = #{cUserId} + and credit.credit_num < 0 + and credit.c_user_id = #{cUserId} and credit.create_date >= #{startTime} @@ -310,13 +201,10 @@ @@ -345,9 +233,10 @@ ) wm left join ( - select credit.merchant_id,sum(credit.credit_num) sum_credit_num from wx_credit_history${shardFinalTableSuffix} credit - INNER JOIN wx_c_user_basic_info${shardFinalTableSuffix} basic ON basic.id = credit.c_user_id - where credit.merchant_id is not null and credit.merchant_id != -1 and credit.credit_num > 0 + select credit.merchant_id,sum(credit.credit_num) sum_credit_num + from wx_credit_history${shardFinalTableSuffix} credit + where credit.merchant_id is not null + and credit.merchant_id != -1 and credit.credit_num > 0 and credit.create_date >= #{startTime} @@ -358,9 +247,10 @@ ) a on a.merchant_id = wm.id left join ( - select credit.merchant_id,sum(credit.credit_num) sum_credit_num from wx_credit_history${shardFinalTableSuffix} credit - INNER JOIN wx_c_user_basic_info${shardFinalTableSuffix} basic ON basic.id = credit.c_user_id - where credit.merchant_id is not null and credit.merchant_id != -1 and credit.credit_num < 0 + select credit.merchant_id,sum(credit.credit_num) sum_credit_num + from wx_credit_history${shardFinalTableSuffix} credit + where credit.merchant_id is not null + and credit.merchant_id != -1 and credit.credit_num < 0 and credit.create_date >= #{startTime} @@ -371,9 +261,10 @@ ) b on b.merchant_id = wm.id left join ( - select credit.merchant_id,count(distinct credit.c_user_id) count_c_user_id from wx_credit_history${shardFinalTableSuffix} credit - INNER JOIN wx_c_user_basic_info${shardFinalTableSuffix} basic ON basic.id = credit.c_user_id - where credit.merchant_id is not null and credit.merchant_id != -1 and credit.credit_num > 0 + select credit.merchant_id,count(distinct credit.c_user_id) count_c_user_id + from wx_credit_history${shardFinalTableSuffix} credit + where credit.merchant_id is not null + and credit.merchant_id != -1 and credit.credit_num > 0 and credit.create_date >= #{startTime} @@ -384,9 +275,10 @@ ) c on c.merchant_id = wm.id left join ( - select credit.merchant_id,count(distinct credit.c_user_id) count_c_user_id from wx_credit_history${shardFinalTableSuffix} credit - INNER JOIN wx_c_user_basic_info${shardFinalTableSuffix} basic ON basic.id = credit.c_user_id - where credit.merchant_id is not null and credit.merchant_id != -1 and credit.credit_num < 0 + select credit.merchant_id,count(distinct credit.c_user_id) count_c_user_id + from wx_credit_history${shardFinalTableSuffix} credit + where credit.merchant_id is not null + and credit.merchant_id != -1 and credit.credit_num < 0 and credit.create_date >= #{startTime}