diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java deleted file mode 100644 index ca2ad6d7..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/bonus/detail/ICuRegionAssessApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.bonus.detail; - -import com.hzs.common.core.domain.R; - -import java.util.Date; -import java.util.List; - -/** - * @description: 新零售会员区域考核dubbo服务 - * @author: zhang jing - * @date: 2025/3/7 10:36 - * @param: - * @return: - **/ -public interface ICuRegionAssessApi { - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - R validateHandAreaAssess(Date startDate,Date endDate); - - - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java index b99fc79f..aabe76bd 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IBusinessCommission.java @@ -6,14 +6,8 @@ import com.hzs.member.account.dto.MemberBalanceDTO; import java.util.List; - /** * 业务办理扣费 - * @Description: - * @Author: ljc - * @Time: 2023/1/7 15:38 - * @Classname: IBusinessCommission - * @Package_name: com.hzs.member.account */ public interface IBusinessCommission { diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java index 6280bf34..60f0a83c 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/ICuMemberTradeServiceApi.java @@ -1,31 +1,21 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.member.account.dto.BusinessCommissionDTO; /** - * @description: 会员交易明细API - * @author: zhang jing - * @date: 2023/7/28 14:37 - * @param: - * @return: + * 会员交易明细API **/ public interface ICuMemberTradeServiceApi { + /** - * @description: 业务办理扣费提交 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R + * 业务办理扣费提交 **/ R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO); + /** - * @description: 业务办理扣费驳回 - * @author: zhang jing - * @date: 2023/7/29 11:55 - * @param: [businessCommissionDTO] - * @return: com.hzs.common.core.domain.R + * 业务办理扣费驳回 **/ R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java index fc0dc4d3..a5014e9a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountAuditServiceApi.java @@ -3,13 +3,8 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - /** - * @Description: 会员钱包审核接口 - * @Author: ljc - * @Time: 2022/9/24 13:48 - * @Classname: IMemberAccountAuditServiceApi - * @Package_name: com.hzs.member.account + * 会员钱包审核接口 */ public interface IMemberAccountAuditServiceApi { diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java index 37bf5c98..c939b485 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberAccountServiceApi.java @@ -9,11 +9,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 会员账户提供api操作实体 - * @Author: sui q - * @Time: 2022/9/5 14:27 - * @Classname: IMemberAccountServiceApi - * @PackageName: com.hzs.member.account + * 会员账户提供api操作实体 */ public interface IMemberAccountServiceApi { @@ -21,9 +17,6 @@ public interface IMemberAccountServiceApi { * 查询会员账户状态,账户信息 * * @param cuMemberAccount 会员账户条件信息 - * @return: List - * @Author: sui q - * @Date: 2022/9/5 11:57 */ R> queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); @@ -31,21 +24,9 @@ public interface IMemberAccountServiceApi { * 根据会员id 列表查询账户信息 * * @param pkMemberList 列表 - * @return: List - * @Author: sui q - * @Date: 2023/3/25 16:28 */ R> queryCuMemberAccountByPkMembers(List pkMemberList); - /** - * 校验订单调换货物余额是否足够 - * - * @param saOrder 订单 - * @param updateOrder 新订单 - * @return - */ - R orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder); - /** * 订单调换货物扣费处理 * @@ -57,17 +38,6 @@ public interface IMemberAccountServiceApi { */ R orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj); - /** - * 订单退单 - * - * @param saOrder 退单订单 - * @param userId 操作用户ID - * @param changeAmount 变动金额(除订单退回外,又追加的补偿或者扣款) -- 非必传 - * @param changeRemark 变动备注 -- 非必传 - * @return - */ - R orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark); - /** * 订单退单注册会员 * @@ -88,12 +58,4 @@ public interface IMemberAccountServiceApi { */ R orderSelfDeliver(Long pkMember, Integer pkRate, Integer pkCountry, BigDecimal postage, Long userId); - /** - * 扣款并插入明细 - * - * @param saOrder 订单 - * @param cuMemberAccount 会员账户 - */ - R insertMemberTrade(SaOrder saOrder, CuMemberAccountExt cuMemberAccount); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java index 8490773a..69a3e06a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberBankServiceApi.java @@ -4,13 +4,10 @@ import com.hzs.common.core.domain.R; import com.hzs.member.account.dto.CuMemberBankParam; /** - * @Description: 银行卡操作API - * @Author: ljc - * @Time: 2022/11/11 17:07 - * @Classname: IMemberBankServiceApi - * @Package_name: com.hzs.member.account + * 银行卡操作API */ public interface IMemberBankServiceApi { + /** * 添加银行卡信息 * @@ -18,4 +15,5 @@ public interface IMemberBankServiceApi { * @return R */ R addBankInfo(CuMemberBankParam cuMemberBankParam); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java index bd8c4b03..5607f951 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java @@ -1,20 +1,12 @@ package com.hzs.member.account; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; - -import java.util.Date; /** * 会员模块定时任务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:38 - * @Classname: IMemberJobServiceApi - * @Package_name: com.hzs.member.account */ public interface IMemberJobServiceApi { + /** * 定时插入账户详情数据 * @@ -22,30 +14,14 @@ public interface IMemberJobServiceApi { */ R insertAccountDetail(); - - /** - * 自动提现 - * - * @return - */ - R automaticWithdrawal(); - - /** - * 查询充值金额总和 - * - * @param startDate 开始时暗 - * @param endDate 结速时间 - * @return R - */ - R selectRechargeTotalAmount(Date startDate, Date endDate); - - /** * 自动清理垃圾数据 - * CU_MEMBER_AWARDS - * CU_MEMBER_LEVEL - * CU_MEMBER_GRADE + * CU_MEMBER_AWARDS + * CU_MEMBER_LEVEL + * CU_MEMBER_GRADE + * * @return */ R autoDeleteGarbageData(); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java index 2868b6d7..93d25b98 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberTradeServiceApi.java @@ -4,7 +4,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.domain.member.account.CuMemberRecharge; import com.hzs.common.domain.member.account.CuMemberTrade; -import com.hzs.common.domain.member.account.CuMemberTradeExt; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.MemberBalanceDTO; @@ -12,22 +11,8 @@ import java.util.List; /** * 会员端在线支付 回调插入交易流水、更新余额 - * - * @Description: - * @Author: ljc - * @Time: 2023/3/8 18:23 - * @Classname: IMemberTradeServiceApi - * @Package_name: com.hzs.member.account */ public interface IMemberTradeServiceApi { - /** - * 会员端在线支付 回调插入交易流水、更新余额 - * - * @param rechargeCode 充值单号 - * @return R - */ - R saveMemberOnlineTradeAndAccount(String rechargeCode); - /** * 会员端在线支付更新审批状态 @@ -47,6 +32,7 @@ public interface IMemberTradeServiceApi { * @return R */ R selectMemberRechargeByCodeAndPkMember(String rechargeCode, Long pkMember); + /** * 查询余额不足的用户信息 * @@ -63,14 +49,4 @@ public interface IMemberTradeServiceApi { */ R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 - * @return - */ - R> querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java index 0b80d858..4e92b831 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/BusinessCommissionDTO.java @@ -10,12 +10,6 @@ import java.util.List; /** * 业务手续费扣款 - * - * @Description: - * @Author: ljc - * @Time: 2023/1/6 15:15 - * @Classname: BusinessCommissionDTO - * @Package_name: com.hzs.member.account.dto */ @Data @Builder diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/CuMemberBankParam.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/CuMemberBankParam.java index 5227641b..5d279b30 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/CuMemberBankParam.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/CuMemberBankParam.java @@ -1,6 +1,5 @@ package com.hzs.member.account.dto; - import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -8,12 +7,7 @@ import lombok.NoArgsConstructor; import java.io.Serializable; /** - *

* 会员信息-银行卡信息 - *

- * - * @author hzs - * @since 2022-08-31 */ @Data @AllArgsConstructor diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java index c7561ba0..afb45a9a 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBalanceDTO.java @@ -9,12 +9,6 @@ import java.math.BigDecimal; /** * 用户余额 - * - * @Description: - * @Author: ljc - * @Time: 2023/1/7 15:12 - * @Classname: MemberBalanceDTO - * @Package_name: com.hzs.member.account.dto */ @Data @AllArgsConstructor diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java index 7f4e33a0..bea93ae5 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/dto/MemberBusinessBalanceDTO.java @@ -10,12 +10,6 @@ import java.util.List; /** * 办理业务专用会员余额 - * - * @Description: - * @Author: zhangjing - * @Time: 2023/1/7 15:12 - * @Classname: MemberBalanceDTO - * @Package_name: com.hzs.member.account.dto */ @Data @AllArgsConstructor diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/achieve/IMemberAchieveServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/achieve/IMemberAchieveServiceApi.java deleted file mode 100644 index 1b58157a..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/achieve/IMemberAchieveServiceApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.member.achieve; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.base.CuMember; - -import java.util.Date; - -/** - * @Description: 提供查询实时会员业绩的api接口 - * @Author: sui q - * @Time: 2022/10/26 15:12 - * @Classname: IMemberAchieveServiceAPI - * @PackageName: com.hzs.member.achieve - */ -public interface IMemberAchieveServiceApi { - - /** - * 查询会员的安置部门 - * - * @param cuMember 推荐会员主键 公司 会员名称 手机号 - * @param isFirst 是否首单 - * @param isFirstAchieve 是否首购业绩 - * @return: CuMemberAchieve - * @Author: sui q - * @Date: 2022/10/26 15:04 - */ - R queryCuMemberAchieveByPkMember(CuMember cuMember, Boolean isFirst, Boolean isFirstAchieve); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java deleted file mode 100644 index c3cbe3dd..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/address/ICuMemberGiftServiceApi.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.member.address; - -import com.hzs.common.core.domain.R; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - - -/** - * @description: 会员礼包收货地址修改回调接口 - * @author: zhang jing - * @date: 2022/10/22 15:04 - * @param: - * @return: - **/ -public interface ICuMemberGiftServiceApi { - - /** - * 审核流程(审批流调用业务模块) - * - * @param approvalBusinessResultDTO 业务审批操作DTO - * @return Integer - */ - R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java index 12adf52a..74a97971 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/ICuMemberAchieveLogServiceApi.java @@ -1,22 +1,16 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.business.SignOnlineInfoVo; import com.hzs.member.base.dto.CuMemberAchieveLogDTO; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import java.util.List; /** - * @description: 特殊业务-注水业绩 - * @author: zhang jing - * @date: 2023/3/28 16:41 - * @param: - * @return: + * 特殊业务-注水业绩 **/ public interface ICuMemberAchieveLogServiceApi { - /** * 解析注水业绩诉求信息 * diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java deleted file mode 100644 index 4b066ccd..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberLevelServiceApi.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.member.base; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberLevel; - -import java.util.List; - -/** - * @Description: 会员等级相关dubbo服务 - * @Author: jiang chao - * @Time: 2025/2/27 9:25 - * @Classname: IMemberLevelServiceApi - * @PackageName: com.hzs.member.base - */ -public interface IMemberLevelServiceApi { - - /** - * 获取会员升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID -- 可为空 - * @return - */ - R> listMemberLevel(Long pkMember, Long pkOrder); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index 7f8dbc9f..4bed9fa0 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -2,7 +2,6 @@ package com.hzs.member.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; @@ -30,6 +29,14 @@ public interface IMemberServiceApi { */ R getMemberInfo(String memberCode); + /** + * 通过会员编码查询分享会员信息 + * + * @param memberCode 会员编号 + * @return + */ + R getShareMemberInfo(String memberCode); + /** * 根据会员ID获取会员信息(查库) * @@ -88,28 +95,6 @@ public interface IMemberServiceApi { * 撤销会员账户余额 **/ R cancelMemberAccount(Long pkMember, SaOrder saOrder); - - /** - * 查找安置人伞上会员信息 - * - * @param memberId 编号、安置人 - */ - R> querySponsorOnUmbrella(Long memberId, String memberCode, String phone); - - /** - * 查找安置人伞上会员信息 - * - * @param memberId 编号、安置人 - */ - R> querySponsorOnUmbrella(Long memberId, List memberCodeList); - - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - R> selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList); - /** * 查找安置人伞下 * @@ -117,14 +102,6 @@ public interface IMemberServiceApi { */ R> queryPlaceSponsorUnderUmbrella(Long memberId, String... placeParent); - /** - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 1代表左区极左极下,2代表右区极左极下 - */ - R queryPlaceSponsorLastLeft(Long memberId, Integer placeDept); - /** * 获取会员缓存 * @@ -161,11 +138,6 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember); - /* - * 查询网体是否存在推荐人 - **/ - R queryCuMemberByPkMember(Long pkReference); - /** * 修改会员信息,确认订单信息,流水(升级订单、复购订单) * @@ -193,13 +165,6 @@ public interface IMemberServiceApi { */ R saveMember(CuMember cuMember, SaOrderExt saOrder, Boolean isPay, CuMemberAccountExt cuMemberAccountExt); - /** - * 处理新会员,生成主键,跟会员编号 - * - * @param cuMember 会员 - */ - R createMemberIdAndCode(CuMember cuMember); - /** * 创建注册会员编号(放入会员编号批次占用) * @@ -241,13 +206,6 @@ public interface IMemberServiceApi { */ R> findMemberByMemberId(List pkMemberList, Integer pkCountry); - /** - * 根据会员主键查询会员注册信息 - * - * @param pkMember 会员主键 - */ - R queryCuMemberRegister(Long pkMember); - /* * 会员编号,账户类型,抽奖金额 **/ @@ -268,15 +226,6 @@ public interface IMemberServiceApi { */ R updateMemberLevel(CuMember cuMember, SaOrder saOrder, Integer pkOldLevel); - /** - * 校验是否血缘关系(返回true则有血缘关系) - * - * @param topCode 顶点编号 - * @param userId 当前会员 - * @return - */ - R checkParent(String topCode, Long userId); - /** * 获取奖衔的翻译KEY值 **/ @@ -407,4 +356,12 @@ public interface IMemberServiceApi { */ R checkRegisterRelation(String phone, String parentCode); + + /** + * 获取手机号数量 + * + * @param phone 联系方式 + * @return 返回为null则正常,否则则错误信息 + */ + R getMemberPhoneCount(String phone); } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java index af4365c3..0b82aae6 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberTeamServiceApi.java @@ -25,11 +25,6 @@ public interface IMemberTeamServiceApi { */ R checkVertex(Integer pkVertex); - /* - * 根据主键获得所属团队 - **/ - R getCuMemberTeamById(Long pkMember); - /** * 查询体系团队map * diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java index 02f136d3..3d901856 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuAwardsControlDTO.java @@ -13,12 +13,7 @@ import java.math.BigDecimal; import java.util.Date; /** - *

* 真实奖衔控制表DTO - *

- * - * @author hzs - * @since 2022-08-22 */ @Data public class CuAwardsControlDTO implements Serializable { @@ -130,7 +125,7 @@ public class CuAwardsControlDTO implements Serializable { /** * 创建时间 */ - @Excel(name = "创建时间",dateFormat = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date creationTime; @@ -190,5 +185,4 @@ public class CuAwardsControlDTO implements Serializable { private String pkAccountKeyVal; - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java index 180173c1..68fcbe8e 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/CuMemberAchieveLogDTO.java @@ -10,12 +10,7 @@ import java.math.BigDecimal; import java.util.Date; /** - *

* 注水业绩记录表DTO - *

- * - * @author hzs - * @since 2022-08-22 */ @Data public class CuMemberAchieveLogDTO implements Serializable { @@ -31,130 +26,130 @@ public class CuMemberAchieveLogDTO implements Serializable { /** * 会员编号 */ - @Excel(name = "会员编号",sort = 1) + @Excel(name = "会员编号", sort = 1) private String memberCode; /** * 会员姓名 */ - @Excel(name = "会员姓名",sort = 2) + @Excel(name = "会员姓名", sort = 2) private String memberName; /** * A左区结余 左区首购结余 */ - @Excel(name = "变更前左区首购结余",sort = 17) + @Excel(name = "变更前左区首购结余", sort = 17) private BigDecimal abalance; /** * B右区结余 右区首购结余 */ - @Excel(name = "变更前右区首购结余",sort = 18) + @Excel(name = "变更前右区首购结余", sort = 18) private BigDecimal bbalance; /** * A左区累计 左区真实业绩 */ - @Excel(name = "变更前左区真实业绩(PV)",sort = 13) + @Excel(name = "变更前左区真实业绩(PV)", sort = 13) private BigDecimal asumRealPv; /** * 变更后A左区累计 变更后左区真实业绩 */ - @Excel(name = "变更后左区真实业绩(PV)",sort = 3) + @Excel(name = "变更后左区真实业绩(PV)", sort = 3) private BigDecimal asumRealModifyPv; /** * B右区累计 右区真实业绩 */ - @Excel(name = "变更前右区真实业绩(PV)",sort = 14) + @Excel(name = "变更前右区真实业绩(PV)", sort = 14) private BigDecimal bsumRealPv; /** * 变更后B右区累计 更后右区真实业绩 */ - @Excel(name = "变更后右区真实业绩(PV)",sort = 4) + @Excel(name = "变更后右区真实业绩(PV)", sort = 4) private BigDecimal bsumRealModifyPv; /** * A左区首购业绩 */ - @Excel(name = "变更前左区首购业绩(PV)",sort = 15) + @Excel(name = "变更前左区首购业绩(PV)", sort = 15) private BigDecimal afirstPv; /** * 变更后A左区 变更后左区首购业绩 */ - @Excel(name = "变更后左区首购业绩(PV)",sort = 5) + @Excel(name = "变更后左区首购业绩(PV)", sort = 5) private BigDecimal afirstModifyPv; /** * B右区首购业绩 */ - @Excel(name = "变更前右区首购业绩(PV)",sort = 16) + @Excel(name = "变更前右区首购业绩(PV)", sort = 16) private BigDecimal bfirstPv; /** * 变更后B右区 变更后右区首购业绩 */ - @Excel(name = "变更后右区首购业绩(PV)",sort = 6) + @Excel(name = "变更后右区首购业绩(PV)", sort = 6) private BigDecimal bfirstModifyPv; /** * 变更后A左区首购结余 */ - @Excel(name = "变更后左区首购结余",sort = 7) + @Excel(name = "变更后左区首购结余", sort = 7) private BigDecimal repAFirstModifyBalance; /** * 变更后B右区首购结余 */ - @Excel(name = "变更后右区首购结余",sort = 8) + @Excel(name = "变更后右区首购结余", sort = 8) private BigDecimal repBFirstModifyBalance; /** * A左区复购结余 左区复购结余 */ - @Excel(name = "变更前左区复购结余",sort = 21) + @Excel(name = "变更前左区复购结余", sort = 21) private BigDecimal repABalance; /** * 变更后A左区复购结余 */ - @Excel(name = "变更后左区复购结余",sort = 11) + @Excel(name = "变更后左区复购结余", sort = 11) private BigDecimal repAModifyBalance; /** * B右区复购结余 右区复购结余 */ - @Excel(name = "变更前右区复购结余",sort = 22) + @Excel(name = "变更前右区复购结余", sort = 22) private BigDecimal repBBalance; /** * 变更后B右区复购结余 */ - @Excel(name = "变更后右区复购结余",sort = 12) + @Excel(name = "变更后右区复购结余", sort = 12) private BigDecimal repBModifyBalance; /** * A左区复购业绩累计业绩 左区复购业绩 */ - @Excel(name = "变更前左区复购业绩(PV)",sort = 19) + @Excel(name = "变更前左区复购业绩(PV)", sort = 19) private BigDecimal repASumPv; /** * 变更后A左区复购业绩累计业绩 */ - @Excel(name = "变更后左区复购业绩(PV)",sort = 9) + @Excel(name = "变更后左区复购业绩(PV)", sort = 9) private BigDecimal repAModifySumPv; /** * B右区复购业绩累计业绩 右区复购业绩 */ - @Excel(name = "变更前右区复购业绩(PV)",sort = 20) + @Excel(name = "变更前右区复购业绩(PV)", sort = 20) private BigDecimal repBSumPv; /** * 变更后B右区复购业绩累计业绩 */ - @Excel(name = "变更后右区复购业绩(PV)",sort = 10) + @Excel(name = "变更后右区复购业绩(PV)", sort = 10) private BigDecimal repBModifySumPv; /** @@ -197,6 +192,4 @@ public class CuMemberAchieveLogDTO implements Serializable { private String dueDateStr; - - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java index f1704da2..af3cb740 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/dto/LoginMember.java @@ -1,6 +1,7 @@ package com.hzs.member.base.dto; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberExt; import lombok.AllArgsConstructor; import lombok.Builder; @@ -63,6 +64,11 @@ public class LoginMember implements Serializable { */ private CuMemberExt cuMember; + /** + * 分享会员信息(分享注册会员使用) + */ + private CuMemberShare cuMemberShare; + /** * 结算国家(此字段实体不存值,只做部分业务传递参数使用) */ diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java deleted file mode 100644 index 81d8a032..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberDetailServiceApi.java +++ /dev/null @@ -1,48 +0,0 @@ -package com.hzs.member.detail; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.base.CuMemberRegister; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; - -import java.util.List; - -/** - * 会员升级记录dubbo服务 - */ -public interface ICuMemberDetailServiceApi { - - /** - * 查询升级的最新一条 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID(可为null) - * @return - */ - R getLastUpgrade(Long pkMember, Long pkOrder); - - /** - * 查询所有升级记录 - * - * @param pkMember 会员ID - * @return - */ - R> getUpgradeList(Long pkMember); - - /** - * 查询手动开通奖衔的最新一条 - * - * @param pkMember 会员ID - * @return - */ - R queryLastManualAwards(Long pkMember); - - /** - * 查询会员注册信息 - * - * @param pkMember 会员ID - * @return - */ - R getMemberRegister(Long pkMember); - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java index 412dd054..746a4065 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/detail/ICuMemberServiceLogServiceApi.java @@ -2,10 +2,7 @@ package com.hzs.member.detail; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; public interface ICuMemberServiceLogServiceApi { @@ -50,43 +47,4 @@ public interface ICuMemberServiceLogServiceApi { */ R updateByBusinessNo(CuMemberServiceLog memberLog); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - R queryPolicy(Long pkMember); - - /** - * @param pkMember 会员主键 pkMember - * @param approvalBusiness 类型 EApprovalBusiness - * @param approveStatus 提交签呈状态 EApproveStatus - * @return - */ - R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus); - - /** - * 查询最新一条变动记录 - * - * @param pkMember 会员ID - * @param editType 业务类型 - * @param approveStatus 审核状态 - * @return - */ - R selectTopData(Long pkMember, int editType, int approveStatus); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - R> listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java index 1785e86b..0def3529 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/handlebusiness/ICuHandleBusinessServiceApi.java @@ -22,9 +22,4 @@ public interface ICuHandleBusinessServiceApi { */ R signForApproval(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /** - * 特殊业务审批处理 - **/ - String auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO); - } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java deleted file mode 100644 index 4c46d423..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/self/dto/SelfModifyAddressDTO.java +++ /dev/null @@ -1,199 +0,0 @@ -package com.hzs.member.self.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.web.domain.BaseApprovalEntity; -import com.hzs.member.account.dto.MemberAmountDTO; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; -import java.util.Set; - -/** - *

- * 自助服务日志表VO - *

- * - * @author hzs - * @since 2023-04-17 - */ -@Data -public class SelfModifyAddressDTO extends BaseApprovalEntity { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - private Long pkId; - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 审批业务类型来源于 枚举: EApprovalBusiness - */ - private Integer editType; - - /** - * 原值 - */ - private String oldValue; - - /** - * 新值 - */ - private String newValue; - - /** - * 业务单号 - */ - private String businessNo; - - /** - * 审核状态 0 待审核 1 审核通过 2 审核驳回 枚举 : EModifyRecordStatus - */ - private Integer approveStatus; - - /** - * 审核次数 - */ - private Integer approveNumber; - - /** - * 支付业务类型来源于枚举 - */ - private Integer editTypePay; - - /** - * 扣费金额 - */ - private BigDecimal singleAmount; - - - /** - * 订单编号 - */ - private String orderCode; - /** - * 订单id - */ - private Long pkOrder; - - /** - * 创建人ID - */ - private Long pkCreator; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 修改人ID - */ - private Long pkModified; - - /** - * 修改时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date modifiedTime; - - /** - * 逻辑删除 (0=未删除,1已删除) - */ - private Integer delFlag; - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 支付时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date payTime; - /** - * 收货地址ID - */ - private Long pkReceiving; - /** - * 收货人 - */ - private String recName; - /** - * 手机 - */ - private String recPhone; - - /** - * 收货省 - */ - private Integer recProvince; - /** - * 收货市 - */ - private Integer recCity; - /** - * 收货县 - */ - private Integer recCounty; - /** - * 详细地址 - */ - private String recAddress; - - /** - * 会员手续费 - */ - List memberAmountDTOList; - /** - * 错误信息 - */ - private String errorMsg; - /** - * 业务涉及会员ID列表 -- 提交审核必传 - */ - private Set pkMemberList; - /** - * 旧邮费 - */ - private BigDecimal oldPostage; - /** - * 新邮费 - */ - private BigDecimal newPostage; - /** - * 邮费 - */ - private BigDecimal postage; - /** - * 备注 - */ - private String selfRemark; - /** - * 扣款币种类型 - */ - private Integer pkAccount; - /** - * 扣款币种翻译key - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_ACC) - private Integer pkAccountKey; - /** - * 扣款币种翻译 - */ - private String pkAccountKeyVal; - - - -} diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java deleted file mode 100644 index e994f225..00000000 --- a/bd-api/bd-api-member/src/main/java/com/hzs/retail/member/IMemberRetailApi.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.retail.member; - -import com.hzs.common.core.domain.R; - -import java.util.List; - -/** - * 新零售会员dubbo服务 - */ -public interface IMemberRetailApi { - - /** - * 定时处理收益区域 - * - * @return - */ - R checkRegion(); - - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID列表 - */ - R cancelRegion(List pkIdList); - -} diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java new file mode 100644 index 00000000..357fe024 --- /dev/null +++ b/bd-api/bd-api-report/src/main/java/com/hzs/report/order/IPerformanceSummaryServiceApi.java @@ -0,0 +1,19 @@ +package com.hzs.report.order; + +import com.hzs.common.core.domain.R; +import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; + +/** + * 订单服务对外提供接口 + */ +public interface IPerformanceSummaryServiceApi { + + /** + * 按天创建统计数据 + * + * @param day + * @return + */ + R createDataByDay(String day); + +} diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java deleted file mode 100644 index 87cc82da..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/IMemberReportServiceApi.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.report.stat; - -import com.hzs.common.core.domain.R; - -/** - * 统计分析 - **/ -public interface IMemberReportServiceApi { - - /** - * 定时任务批量处理统计会员以及伞下金额业绩盒数 - **/ - R pushAmountBoxmethod(); - - /** - * 定时任务7天重算直推会员金额业绩盒数 - **/ - R repeatPushAmountBoxmethod(String startDateStr, String endDateStr); - -} diff --git a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java b/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java deleted file mode 100644 index 060b7797..00000000 --- a/bd-api/bd-api-report/src/main/java/com/hzs/report/stat/dto/StatisticalLogDTO.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.report.stat.dto; - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * 修改政策币表DTO - * - * @author hzs - * @since 2022-08-22 - */ -@Data -public class StatisticalLogDTO implements Serializable { - - private static final long serialVersionUID = 1L; - - private Long pkMember; - /** - * 会员编号 - */ - private String memberCode; - - /** - * 标题 - */ - private String title; - - /** - * 内容 - */ - private String content; - /** - * 国家 - */ - private Integer pkCountry; - /** - * 创建人 - */ - private Long pkCreate; - - /** - * 会员ID - */ - private List pkMemberList; - /** - * 业务单号 - */ - private String businessNo; - - /** - * 审核状态 2 待审核 4 已驳回 5 已完成(审核成功) 枚举 : EApproveStatus - */ - private Integer approveStatus; - /** - * 错误信息 - */ - private String errorMsg; - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java index 3f6fe50a..34298ece 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/base/IActivityServiceApi.java @@ -2,13 +2,8 @@ package com.hzs.activity.base; import com.hzs.activity.dto.AcRecommendUpgradeDTO; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.Date; -import java.util.List; - /** * 所有活动的生效,获得赠品入口 */ @@ -24,16 +19,6 @@ public interface IActivityServiceApi { **/ R backGiveMemberDrawNum(SaOrderExt saOrderExt); - /* - * 查询目前所有启用的复购券规则 - **/ - R> queryAcRepurchaseCouponsRule(Date settleDate); - - /* - * 查询复购券均分收益 - **/ - R> queryRepurSharRuleConfig(Date startDate, Date endDate); - /** * 调用调用直推升级接口 * diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java deleted file mode 100644 index 2f6ad9e5..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcRetailPickLogServiceApi.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.activity.pick; - -import com.hzs.common.core.domain.R; - -/** - * @description: 会员提货赠送活动日志接口服务 - * @author: zhang jing - * @date: 2025/1/15 16:58 - * @param: - * @return: - **/ -public interface IAcRetailPickLogServiceApi { - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:13 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R deliveryLog(); - - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java index ce3efb60..f5df33a3 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderItemsServiceApi.java @@ -7,49 +7,18 @@ import com.hzs.sale.order.dto.WaresOrderDTO; import java.util.List; /** - * @Description: 销售订单-明细表 - * @Author: zhangjing - * @Time: 2023/11/16 20:06 - * @Classname: ISaOrderItemsServiceApi - * @PackageName: com.hzs.sale.order.dto + * 销售订单-明细表 */ public interface ISaOrderItemsServiceApi { - /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/11/16 9:23 - * @param: [orderIdList] - * @return: com.hzs.common.core.domain.R> + * 根据订单id查询订单商品列表 **/ R> waresListByOrderId(List orderIdList); /** - * 根据订单ID查询订单明细商品列表(不添加删除标记) - * - * @param orderId 订单ID - * @return - */ - R> waresListByOrderId(Long orderId); - - /** - * @description: 根据订单ID查询订单明细列表 - * @author: zhang jing - * @date: 2023/11/16 9:33 - * @param: [orderIdList, tOrderIdList] - * @return: com.hzs.common.core.domain.R> + * 根据订单ID查询订单明细列表 **/ R> queryListByOrderId(List orderIdList, List tOrderIdList); - /** - * 订单明细退货 - * - * @param orderItemsIdList 订单明细ID列表 - * @param userId 操作人ID - * @param pkCountry 所属国家(可为空) - * @return - */ - R orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry); - } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index e6c1e93f..719d2d23 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -2,9 +2,7 @@ package com.hzs.sale.order; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.dto.*; @@ -19,33 +17,6 @@ import java.util.List; */ public interface ISaOrderServiceApi { - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - - /* - * 根据主键查询订单,需要查询del_flag=1的,存在先撤单在退货 - **/ - R querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - R> querySaOrderByDeliverList(List deliverItemExtList); - - /** - * 根据订单ID查询订单详细列表 - * - * @param pkOrderList 订单ID列表 -- 必传 - * @param pkCountry 国家ID -- 非必传 - * @return - */ - R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry); - /** * 空单注册审核通过 * @@ -81,11 +52,6 @@ public interface ISaOrderServiceApi { */ void closeOrder(); - /* - * 查询订单某段时间累计金额,累计业绩 - **/ - R queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java index 77916c01..801a5b94 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/postage/IPostageServiceApi.java @@ -7,11 +7,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 邮费服务API - * @Author: jiang chao - * @Time: 2023/4/25 14:40 - * @Classname: IPostageServiceApi - * @PackageName: com.hzs.sale.postage + * 邮费服务API */ public interface IPostageServiceApi { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java index d3c45705..a3e99f38 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/IProductServiceApi.java @@ -1,26 +1,8 @@ package com.hzs.sale.product; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.ext.BdProductExt; -import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.dto.ProductDTO; -import com.hzs.sale.product.dto.ProductParamDTO; -import com.hzs.system.sys.dto.LoginUser; -import java.util.Collection; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:52 - * @Classname: IProductServiceApi - * @PackageName: com.hzs.sale.product - */ public interface IProductServiceApi { /** @@ -31,14 +13,6 @@ public interface IProductServiceApi { */ R getProduct(Integer productId); - /* - * @description: 根据规格、主键查询产品 - * @author: sui q - * @date: 2023/11/27 15:52 - * @param: null null - **/ - R> queryProductDtoById(List productSpecsList, Integer pkCountry); - /** * 根据产品编号查询产品 * @@ -46,27 +20,4 @@ public interface IProductServiceApi { * @return */ R getProduct(String productCode); - - /* - * @description: 根据主键List查询规格 - * @author: sui q - * @date: 2023/11/30 15:18 - * @param: null null - **/ - R> queryBdSpecsByIdList(List idList); - - /** - * 产品新增 - * @param productParamDTO - * @return 编号 - */ - R saveProduct(ProductParamDTO productParamDTO, LoginUser loginUser); - - - /** - * 根据产品主键修改所关联商品是下架/预售 - * @param productDTOList - * @return - */ - R updateWaresPreSaleStatus(List productDTOList); } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java index 14f44527..f71c471c 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductDTO.java @@ -5,13 +5,6 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:53 - * @Classname: ProductDTO - * @PackageName: com.hzs.sale.product.dto - */ @Data public class ProductDTO implements Serializable { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java deleted file mode 100644 index e0953162..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/product/dto/ProductParamDTO.java +++ /dev/null @@ -1,252 +0,0 @@ -package com.hzs.sale.product.dto;/** - * @Description: - * @Author: yuhui - * @Time: 2024/3/23 16:27 - * @Classname: ProductParamDTO - * @PackageName: com.hzs.sale.product.dto - */ - -import com.baomidou.mybatisplus.annotation.TableField; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; -import java.util.List; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.product.dto - *@Author: yh - *@CreateTime: 2024-03-23 16:27 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class ProductParamDTO implements Serializable { - - /** - * 商品主键 - */ - private Integer pkId; - /** - * 产品编号 - */ - private String productCode; - - /** - * 产品名称 - */ - private String productName; - - /** - * 翻译key - */ - private Integer transactionKey; - - /** - * 规格分类 - */ - private Integer pkClassify; - - /** - * 单位 来源于枚举:单位 - */ - private Integer unit; - - /** - * 重量 以千克作为单位 - */ - private BigDecimal weight; - - /** - * 长 以厘米作为单位 - */ - private BigDecimal length; - - /** - * 宽 以厘米作为单位 - */ - private BigDecimal width; - - /** - * 高 以厘米作为单位 - */ - private BigDecimal height; - - /** - * 邮费重量 以千克作为单位 - */ - private BigDecimal postageWeight; - - /** - * 建议零售价 - */ - private BigDecimal retailPrice; - - /** - * 启用状态 来源于枚举:是否,默认是 - */ - private Integer enableState; - - /** - * 封面图 - */ - private String cover; - - /** - * 保质期 - */ - private Integer shelfLife; - - /** - * 是否冷链 - */ - private Integer isFresh; - - - /** - * 是否提货 来源于枚举:是否,默认否 - */ - private Integer isPickUp; - - /** - * 是否抽奖奖品 来源于枚举:是否,默认否 - */ - private Integer isPrize; - - /** - * 是否条码管理 来源于枚举:是否,默认否 - */ - private Integer isBarCode; - - /** - * 能否合并发货 来源于枚举:是否,默认是 - */ - private Integer isMerge; - - /** - * 来源于枚举:是否,默认是 - */ - private Integer isGift; - - /** - * 库存预警数量 - */ - // private Long warningQuantity; - - /** - * 是否陆运 - */ - private Integer isLandTrans; - - /** - * 是否空运 - */ - private Integer isAirTrans; - - /** - * 是否海运 - */ - private Integer isOceanTrans; - - /** - * 产品属性 枚举:商品属性,1=实物商品、2=虚拟商品 - */ - private Integer productAttr; - - /** - * 产品规格类型列表 - */ - private List pkSpecsType; - - /** - * 排序值 - */ - - private Integer sort; - - /** - * 发货渠道 1 总仓发货 2 一件代发 - */ - - private Integer shippingChannel; - - - /** - * 产品主键id列表 - */ - List productIds; - - - - /** - * 海陆空运输方式筛选 - */ - private Integer shippingType; - - /** - * 开始创建时间 - */ - private Date startCreateDate; - /** - * 结束创建时间 - */ - private Date endCreateDate; - - - /** - * 产品编号 - */ - List productCodes; - - private Integer pkCountry; - - /** - * 复购类型 - */ - - private Integer repurchaseType; - - /** - * 是否存在规格 - */ - private Integer isExistSpecs; - - /** - * 查询产品信息 - */ - private String queryInfo; - - /** - * 产品基础档案主键 - */ - private Integer pkProductBas; - - /** - * 数量 - */ - private Integer quantity; - - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 供应商 - */ - private Integer pkSupplier; - - - /** - * 供应商主键 - */ - private Integer pkCubasdoc; -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java index 5135f745..30bac7f8 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/pub/ISaleApprovalServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** - * @Description: 统一的销售服务回调审批成功入口 - * @Author: sui q - * @Time: 2022/10/25 13:45 - * @Classname: ISaleApprovalServiceApi - * @PackageName: com.hzs.sale.pub + * 统一的销售服务回调审批成功入口 */ public interface ISaleApprovalServiceApi { @@ -17,13 +13,9 @@ public interface ISaleApprovalServiceApi { * 提供销售模块统一的审核回调方法 * * @param approvalBusinessResultDTO - * @return: void - * @Author: sui q - * @Date: 2022/10/22 14:48 */ R approvalCallback(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /** * 销售模块签呈查询 * @@ -34,5 +26,4 @@ public interface ISaleApprovalServiceApi { */ R queryApprovalData(EApprovalBusiness eApprovalBusiness, String businessCode, String toLanguageTag); - } diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java deleted file mode 100644 index 0de7f3d9..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/refund/ISaRefundServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.sale.refund; - -import com.hzs.common.core.domain.R; - -/** - * @Description: 订单退款对外服务api - * @Author: jiang chao - * @Time: 2023/8/26 14:44 - * @Classname: ISaRefundServiceApi - * @PackageName: com.hzs.sale.order - */ -public interface ISaRefundServiceApi { - - /** - * 直销订单退款回调 - * - * @param orderCode 订单编号 - * @param refundCode 退款编号 - * @param refundStatus 退款状态 - * @param refundMsg 退款信息 - * @return - */ - R onlinePayRefundCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg); - -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java index d9eceee1..d52a7926 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/ticket/ITicketServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.domain.R; import java.math.BigDecimal; /** - * @Description: 购票对外dubbo服务 - * @Author: jiang chao - * @Time: 2025/1/14 15:44 - * @Classname: ITicketServiceApi - * @PackageName: com.hzs.sale.ticket + * 购票对外dubbo服务 */ public interface ITicketServiceApi { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java index 16947098..c0dbaf8f 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/wares/IWaresServiceApi.java @@ -5,11 +5,7 @@ import com.hzs.common.core.domain.R; import java.util.Date; /** - * @Description: 商品对外提供接口 - * @Author: sui q - * @Time: 2022/9/15 15:04 - * @Classname: IWaresServiceApi - * @PackageName: com.hzs.sale.wares + * 商品对外提供接口 */ public interface IWaresServiceApi { @@ -29,11 +25,7 @@ public interface IWaresServiceApi { void updateByAutoStartAndAutoStart(Date currentTime); /** - * @description: 修改商品预售状态 - * @author: zhang jing - * @date: 2024/10/24 16:09 - * @param: [] - * @return: void + * 修改商品预售状态 **/ void waresPreSale(); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java index 7591468a..efc635c9 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IApprovalPushInfo.java @@ -5,14 +5,8 @@ import com.hzs.system.base.dto.ApprovalPushInfoDTO; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/4/5 21:29 - * @Classname: IApprovalPushInfo - * @Package_name: com.hzs.system.base - */ public interface IApprovalPushInfo { + /** * 审批推送站内信信息 * @@ -20,4 +14,5 @@ public interface IApprovalPushInfo { * @return R */ R approvalPushInfo(List approvalPushInfoDTOList); + } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IAreaServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IAreaServiceApi.java index c61120c3..4cb6eea8 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IAreaServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IAreaServiceApi.java @@ -2,8 +2,6 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.base.BdArea; -import com.hzs.common.domain.system.base.BdProductStorehouse; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.system.base.dto.AreaDTO; import java.util.List; @@ -46,9 +44,4 @@ public interface IAreaServiceApi { */ R updateArea(List provinceDTOList); - /* - * 查询省绑定的产品仓库 - **/ - R> queryBdProductStorehouseByCondition(List productId, Integer province); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java index 82e572fc..0b7e1f6b 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/IBarCodeServiceApi.java @@ -6,11 +6,7 @@ import com.hzs.system.base.dto.BarCodeDTO; import java.util.List; /** - * @Description: 条码服务接口 - * @Author: jiang chao - * @Time: 2022/11/2 11:46 - * @Classname: IBarCodeServiceApi - * @PackageName: com.hzs.system.base + * 条码服务接口 */ public interface IBarCodeServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java index 180b2011..2ff4f5fc 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ICurrencyServiceApi.java @@ -1,10 +1,7 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.base.BdCubasdoc; import com.hzs.common.domain.system.base.BdStorehouse; -import com.hzs.common.domain.system.base.ext.BdCubasdocExt; -import com.hzs.common.domain.system.sys.SysCorp; import com.hzs.system.base.dto.CurrencyDTO; import java.util.Collection; @@ -46,11 +43,6 @@ public interface ICurrencyServiceApi { */ R queryBdStorehouseByProvince(Integer province, Integer... type); - /** - * 根据省查询对应的发货仓库 - */ - R queryBdStorehouseById(Integer pkId); - /** * 根据省查询对应的发货仓库 * @@ -71,23 +63,4 @@ public interface ICurrencyServiceApi { */ R> findAll(); - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCubasdocById(Integer pkId, Integer pkCountry); - - /** - * 提供查询供应商的dubbo调用 - */ - R queryBdCustomerById(Integer pkId, Integer pkCountry); - - /** - * 提供查询采购组织的dubbo调用 - */ - R querySysCorp(Integer pkId, Integer pkCountry); - - /** - * 根据仓库主键查询仓库 - */ - R> queryStorehouseByIds(Set storehouseIdSet, Integer pkCountry, Integer pkCorp); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java index 969c2093..149abd94 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/INoticeAuditServiceApi.java @@ -3,13 +3,8 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; - /** - * @Description: 公告、站内信审批 - * @Author: ljc - * @Time: 2022/9/24 13:48 - * @Classname: IMemberAccountAuditServiceApi - * @Package_name: com.hzs.member.account + * 公告、站内信审批 */ public interface INoticeAuditServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java index 0469e498..2d84c3a5 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ISystemConfigServiceApi.java @@ -18,18 +18,6 @@ public interface ISystemConfigServiceApi { */ R getBonusSystemConfig(Integer pkCountry, String key); - /** - * 批量查询系统参数 - * - * @param pkCountry 国家 - */ - R> getBonusSystemConfig(Integer pkCountry); - - /** - * 批量查询所有国家的系统参数 - */ - R> getBonusSystemConfig(); - /** * 批量查询所有国家的订单参数 */ diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java index 1fb0ee27..06d167c9 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/ITransactionServiceApi.java @@ -3,7 +3,6 @@ package com.hzs.system.base; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ETransactionKey; import com.hzs.common.core.enums.EYesNo; -import com.hzs.system.base.dto.TransactionDTO; import java.util.Collection; import java.util.List; @@ -15,27 +14,6 @@ import java.util.Set; */ public interface ITransactionServiceApi { - /** - * 根据key读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param content 翻译内容 - * @param toLocal 返回语言 - * @return - */ - R readTransactionByDataBase(Integer fromCountry, String content, String toLocal); - - /** - * 根据key列表读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param contentList 翻译内容列表 - * @param toLocal 返回语言 - * @return - */ - R> readTransactionListByDataBase(Integer fromCountry, Set contentList, String toLocal); - - /** * 根据key读取缓存翻译 * @@ -72,7 +50,6 @@ public interface ITransactionServiceApi { */ R> readTransactionListDataBase(Collection pkIdList, String toLocal); - /** * 数据库+缓存同时查询 * @@ -83,17 +60,6 @@ public interface ITransactionServiceApi { */ R> readTransactionAll(Integer fromCountry, Set contentList, Set keyList, String toLocal); - - /** - * 创建国际化翻译(只写入缓存) - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @return - */ - R createTransactionCacheOnly(Integer pkCountry, ETransactionKey key, String content); - /** * 创建国际化翻译(写入缓存,上传OSS) * @@ -116,7 +82,6 @@ public interface ITransactionServiceApi { */ R createTransaction(Integer pkCountry, ETransactionKey key, String content, EYesNo cacheFlag, EYesNo uploadFlag); - /** * 移除国际化翻译(根据ID) * @@ -125,15 +90,6 @@ public interface ITransactionServiceApi { */ R removeTransactionByPkId(List pkIdList); - /** - * 移除国际化翻译(根据KEY) - * - * @param keyList 翻译key列表 - * @return - */ - R removeTransactionByKey(List keyList); - - /** * 更新国际化翻译 * @@ -145,13 +101,4 @@ public interface ITransactionServiceApi { */ R updateTransaction(Integer pkCountry, String content, Integer pkId, Boolean updateOther); - - /** - * 更新国际化翻译(异步翻译回调更新) - * - * @param transactionDTO 更新实体 - * @return - */ - R updateTransactionSync(TransactionDTO transactionDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java deleted file mode 100644 index 0af35a00..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/base/dto/TransactionDTO.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.hzs.system.base.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.Date; - -/** - * Description: 翻译操作DTO - * Author: jiang chao - * Time: 2022/9/13 9:33 - * Classname: TransactionDTO - * PackageName: com.hzs.system.base.dto - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class TransactionDTO implements Serializable { - - private static final long serialVersionUID = -8568364427570993930L; - - /** - * 主键 - */ - private Integer pkId; - - /** - * 中文 - */ - private String chinese; - - /** - * 中文繁体 - */ - private String traditional; - - /** - * 英文 - */ - private String english; - - /** - * 俄文 - */ - private String russian; - - /** - * 哈萨克斯坦文 - */ - private String kazakh; - - /** - * 印度尼西亚文 - */ - private String indonesia; - - /** - * 法文 - */ - private String french; - - /** - * 葡萄牙文 - */ - private String portuguese; - - /** - * 西班牙文 - */ - private String spanish; - - /** - * 阿拉伯文 - */ - private String arabic; - - /** - * 自定义1 - */ - private String custom1; - - /** - * 自定义2 - */ - private String custom2; - - /** - * 自定义3 - */ - private String custom3; - - /** - * 自定义4 - */ - private String custom4; - - /** - * 自定义5 - */ - private String custom5; - - /** - * 自定义6 - */ - private String custom6; - - /** - * 自定义7 - */ - private String custom7; - - /** - * 自定义8 - */ - private String custom8; - - /** - * 自定义9 - */ - private String custom9; - - /** - * 自定义10 - */ - private String custom10; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 修改人 - */ - private Long pkModified; - - /** - * 修改时间 - */ - private Date modifiedTime; - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java index f3ab5555..3c950755 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaCurrencyServiceApi.java @@ -7,11 +7,7 @@ import java.util.List; import java.util.Set; /** - * @Description: 专区币种配置提供的公共api - * @Author: sui q - * @Time: 2022/9/6 10:13 - * @Classname: IAreaCurrency - * @PackageName: com.hzs.system.config + * 专区币种配置提供的公共api */ public interface IAreaCurrencyServiceApi { @@ -19,9 +15,6 @@ public interface IAreaCurrencyServiceApi { * 根据条件查询国家的所有币种 * * @param pkCountry 国家 - * @return: R> - * @Author: sui q - * @Date: 2022/9/6 10:37 */ R> queryAreaCurrencyByPkCountry(Integer pkCountry); @@ -30,9 +23,6 @@ public interface IAreaCurrencyServiceApi { * * @param specialArea 所属专区 * @param pkCountry 国家 - * @return: R> - * @Author: sui q - * @Date: 2022/9/6 10:37 */ R> queryAreaCurrencyByCondition(Integer specialArea, Integer pkCountry); @@ -46,10 +36,7 @@ public interface IAreaCurrencyServiceApi { R> queryMemberCurrency(Integer specialArea, Long userId); /* - * @description: 根据条件查找对应的币种配置 - * @author: sui q - * @date: 2023/7/19 14:18 - * @param: null null + * 根据条件查找对应的币种配置 **/ R> queryAreaCurrencyByCondition(Integer pkSpecialAccount); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java index bcc1e5ed..41924350 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAreaFreePostageServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdAreaFreePostage; /** - * @Description: 专区免邮服务 - * @Author: jiang chao - * @Time: 2023/12/1 11:23 - * @Classname: AreaFreePostageServiceApi - * @PackageName: com.hzs.system.config + * 专区免邮服务 */ public interface IAreaFreePostageServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java index 63585989..aa2d2c49 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IAwardsServiceApi.java @@ -25,12 +25,4 @@ public interface IAwardsServiceApi { * 根据国家获取该国家的奖衔 */ R> getAwards(); - - /** - * 根据所属国家查询奖衔 - * - * @param pkCountry - * @return - */ - R> queryByPkCountryAwards(Integer pkCountry); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java deleted file mode 100644 index 60bfe927..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IBdBarCodeServiceApi.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.ext.BdAwardsExt; - -import java.util.List; -import java.util.Map; - -/** - * @description: 根据国家查询奖衔配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: - **/ -public interface IBdBarCodeServiceApi { - - /** - * @description: 定时初始化条形码配置 - * @author: zhang jing - * @date: 2024/5/8 11:19 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - R updatWarehouseLog(); - - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IGradeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IGradeServiceApi.java index 81c9f212..65cdea69 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IGradeServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IGradeServiceApi.java @@ -33,13 +33,6 @@ public interface IGradeServiceApi { */ R> queryGradeConfigByCondition(Integer pkCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - R> queryHaiFunGradeConfigByCondition(Integer pkCountry); - /* * 查询不同国家的等级参数 **/ @@ -68,13 +61,6 @@ public interface IGradeServiceApi { */ R> selectGradeAll(Integer dataCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - R> queryGrowUpFootmarkGrade(Integer pkCountry); - /** * 查询全部的等级 * diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java index 89080384..c384cee0 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ILabelServiceApi.java @@ -3,18 +3,11 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.system.config.dto.LabelConfigDTO; -import java.util.List; - /** * 标签配置接口 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/1 19:02 - * @Classname: ILabelServiceApi - * @Package_name: com.hzs.system.config */ public interface ILabelServiceApi { + /** * 根据ID查询标签信息 * @@ -23,12 +16,4 @@ public interface ILabelServiceApi { */ R getByPkId(Integer labelId); - /** - * 根据类型查询标签信息 - * - * @param labelType 标签类型 - * @param pkCountry 国家 - * @return R> - */ - R> getLabelByType(Integer labelType, Integer pkCountry); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java index d9a94c78..64b1a494 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRangeServiceApi.java @@ -1,7 +1,6 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.system.config.dto.RangeDTO; @@ -9,41 +8,21 @@ import java.util.List; import java.util.Map; /** - * @description: 根据国家查询极差配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: + * 根据国家查询极差配置列表api **/ public interface IRangeServiceApi { /** - * @description: 根据国家查询极差配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询极差配置列表 **/ R> queryRange(Integer pkCountry); - /** - * 查询各个国家极差的配置 键为 国家+极差类型+等级主键 - * - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 - */ - R> queryRangeDto(); - /** * 查询各个国家极差的配置 键为 国家+极差类型+等级主键 * * @param pkCountry 国家 * @param rangeType 极差类型 * @param pkLevel 等级 - * @return: Map - * @Author: sui q - * @Date: 2023/1/3 14:00 */ R queryRangeDtoByCondition(Integer pkCountry, Integer rangeType, Integer pkLevel); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java deleted file mode 100644 index f21a22b0..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IRetailRangeServiceApi.java +++ /dev/null @@ -1,12 +0,0 @@ -package com.hzs.system.config; - -/** - * @Description: 新零售极差dubbo服务接口 - * @Author: jiang chao - * @Time: 2025/2/17 9:46 - * @Classname: IRetailRangeServiceApi - * @PackageName: com.hzs.system.config - */ -public interface IRetailRangeServiceApi { - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java deleted file mode 100644 index d7f2abc3..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShareServiceApi.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAccount; -import com.hzs.common.domain.system.config.BdShare; - -import java.util.List; - -/** - * @Description: 币种公共的api - * @Author: sui q - * @Time: 2022/9/9 14:07 - * @Classname: IGradeServiceApi - * @PackageName: com.hzs.system.config - */ -public interface IShareServiceApi { - - /** - * @description: 根据分红pkid查询分配配置 - * @author: zhang jing - * @date: 2022/9/22 10:03 - * @param: [accountProperty, pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R getBdShareById(Integer id); -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java deleted file mode 100644 index 4ad977e1..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IShopServiceApi.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; -import com.hzs.common.domain.system.config.ext.BdShopExt; - -import java.util.List; - -/** - * @description: 根据国家查询奖项配置列表api - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: - * @return: - **/ -public interface IShopServiceApi { - - /** - * @description: 根据国家查询奖项配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:31 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryShop(Integer pkCountry); - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java index 9f694946..dd83c1fb 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITradeConfigServiceApi.java @@ -34,12 +34,4 @@ public interface ITradeConfigServiceApi { */ R> selectTransferWhiteByPkMember(Long pkMember, Integer pkCountry); - /** - * 查询配置伞下白名单的会员 - * - * @param tradeConfigDTO 入参 - * @return List - */ - R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO); - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java index 3c6d6ce6..4e50944c 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/ITransferServiceApi.java @@ -2,25 +2,15 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdTransfer; -import com.hzs.common.domain.system.config.BdWithdrawal; - -import java.util.List; /** - * @description: 根据国家查询提现配置明细列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现配置明细列表api **/ public interface ITransferServiceApi { /** - * @description: 根据国家查询转账配置列表 - * @author: zhang jing - * @date: 2022/9/28 10:32 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询转账配置列表 **/ R queryTransfer(Integer pkCountry); + } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java index 51ce9234..ad0cfb80 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IVertexServiceApi.java @@ -5,13 +5,6 @@ import com.hzs.system.config.dto.VertexDTO; import java.util.List; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/16 15:55 - * @Classname: IVertexServiceApi - * @PackageName: com.hzs.sale.vertex - */ public interface IVertexServiceApi { /** diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java deleted file mode 100644 index 5f37d4d4..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalAutoServiceApi.java +++ /dev/null @@ -1,25 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalAuto; - -import java.util.List; - -/** - * @description: 根据国家查询自动提现明细api - * @author: zhang jing - * @date: 2022/9/27 15:15 - * @param: - * @return: - **/ -public interface IWithdrawalAutoServiceApi { - - /** - * @description:根据国家查询自动提现明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:20 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalAuto(Integer pkCountry); -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java index 8dacd146..b2e545c8 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalProcessServiceApi.java @@ -3,23 +3,13 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdWithdrawalProcess; - - /** - * @description: 根据国家查询提现手续费配置列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现手续费配置列表api **/ public interface IWithdrawalProcessServiceApi { /** - * @description: 根据国家查询提现手续费配置列表 - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询提现手续费配置列表 **/ R queryBdWithdrawalProcess(Integer pkCountry); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java index 4fae7ec8..f656fcfd 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalServiceApi.java @@ -3,32 +3,14 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdWithdrawal; -import java.util.List; - /** - * @description: 根据国家查询提现配置明细列表api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 根据国家查询提现配置明细列表api **/ public interface IWithdrawalServiceApi { /** - * @description: 根据国家查询提现配置明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> + * 根据国家查询提现配置明细列表 **/ - R queryWithdrawal(Integer pkCountry,Integer pkAccount); + R queryWithdrawal(Integer pkCountry, Integer pkAccount); - /** - * @description: 查询所有自动提现的配置 - * @author: zhang jing - * @date: 2022/11/1 19:44 - * @param: [] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalByIsAuto(); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java deleted file mode 100644 index e0efe580..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalSpecialServiceApi.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.hzs.system.config; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalSpecial; - -import java.util.List; - -/** - * @description: 提现设置特殊配置api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: - **/ -public interface IWithdrawalSpecialServiceApi { - - /** - * @description: 根据国家查询提现设置特殊配置列表 - * @author: zhang jing - * @date: 2022/9/27 16:24 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R> queryWithdrawalSpecial(Integer pkCountry); - /** - * @description: 根据国家会员编号查询提现设置特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:27 - * @param: [pkCountry, memberCode] - * @return: com.hzs.common.core.domain.R - **/ - R getWithdrawalSpecial(Integer pkCountry,String memberCode); - -} diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java index 3ac8992a..d6bb319a 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/IWithdrawalTaxServiceApi.java @@ -1,27 +1,15 @@ package com.hzs.system.config; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalTax; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; -import java.util.List; - /** - * @description: 个税明细api - * @author: zhang jing - * @date: 2022/9/27 15:14 - * @param: - * @return: + * 个税明细api **/ public interface IWithdrawalTaxServiceApi { - - /** - * @description: 根据国家查询个税明细 - * @author: zhang jing - * @date: 2022/9/27 16:13 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - R queryWithdrawalTax(Integer pkCountry); + /** + * 根据国家查询个税明细 + **/ + R queryWithdrawalTax(Integer pkCountry); } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java index 3a7affd8..5219c3bd 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusConfigDTO.java @@ -1,7 +1,6 @@ package com.hzs.system.config.dto; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.bonus.BdBonusService; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.sys.dto.BdCurrencyDTO; @@ -27,51 +26,14 @@ public class BonusConfigDTO implements Serializable { */ private Map bonusItemsExtMap; - /** - * 循环配置 key 第一个键国家主键 +等级,第二个键 循环类型 EBonusType - */ - private Map bonusDirectLoopDtoMap; - /** * 直推奖励配置 key 第一个键国家主键 ,第二个键 range_type+pk_level */ private Map bonusDirectDtoMap; /** - * 一次性补差 key 国家作为主键,只有一条 + * 奖衔列表 */ - private Map bonusDifferenceDtoMap; - - /** - * 复购推荐奖励配置 key第一个键国家主键,第二个键 代数 - */ - private Map> bonusRepurchasePushMap; - - /** - * 拓展奖配置 国家+等级 - */ - private Map gradeMap; - - /** - * 新零售团队等级 - */ - private List retaiGradeList; - - /** - * 主任每个国家值对应的配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + 奖衔值 为了解决服务中心算主任 - */ - private Map directorAwardsMap; - - /** - * 辅导奖配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getPkAwards() - */ - private Map awardsMap; - - /** - * 辅导奖配置 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getAwardsValue() - */ - private Map awardsValueMap; - private List awardsList; /** @@ -79,9 +41,4 @@ public class BonusConfigDTO implements Serializable { */ private Map bonusDeductsMap; - /** - * 报单服务费 需要主键 memberSettleExt.getPkSettleCountry().toString() + memberSettleExt.getservicetype() - */ - private Map bonusServiceMap; - } diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java index 692e926d..b9cff8df 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDifferenceDTO.java @@ -5,13 +5,6 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; -/** - * @Description: - * @Author: sui q - * @Time: 2022/11/14 16:38 - * @Classname: BonusDifferenceDTO - * @PackageName: com.hzs.system.config.dto - */ @Data public class BonusDifferenceDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java index 96616f1e..72482b64 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusDirectLoopDTO.java @@ -6,11 +6,7 @@ import java.io.Serializable; import java.math.BigDecimal; /** - * @Description: 循环配置 - * @Author: sui q - * @Time: 2022/11/14 16:26 - * @Classname: BonusDirectLoopDTO - * @PackageName: com.hzs.system.config.dto + * 循环配置 */ @Data public class BonusDirectLoopDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java index 403104d6..bb87e9f6 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/BonusRepurchasePushDTO.java @@ -6,12 +6,7 @@ import java.io.Serializable; import java.math.BigDecimal; /** - * @description: 复购直推dto - * @author: sui q - * @time: 2023/6/29 15:17 - * @classname: BonusRepurchasePushDTO - * @package_name: com.hzs.system.config.dto - * version 1.0.0 + * 复购直推dto */ @Data public class BonusRepurchasePushDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java index b9d10657..200e7803 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/GradeDTO.java @@ -11,11 +11,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 等级的dto - * @Author: sui q - * @Time: 2022/9/24 15:06 - * @Classname: GradeDTO - * @PackageName: com.hzs.system.config.dto + * 等级的dto */ @Data @Builder diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java index 7b60a2d9..4f857b84 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IBusinessLogApi.java @@ -6,11 +6,7 @@ import com.hzs.system.sys.dto.BusinessLogDTO; import java.util.List; /** - * @Description: 业务操作明细接口 - * @Author: jiang chao - * @Time: 2023/8/3 18:14 - * @Classname: IBusinessLogApi - * @PackageName: com.hzs.system.sys + * 业务操作明细接口 */ public interface IBusinessLogApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java index 31e9ab5e..4f118e4e 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/ICubasdocApi.java @@ -3,17 +3,11 @@ package com.hzs.system.sys; import com.hzs.common.core.domain.R; import com.hzs.system.sys.dto.CubasdocDTO; -/** - * @Description: - * @Author: yuhui - * @Time: 2024/5/8 16:05 - * @Classname: ICubasdocApi - * @PackageName: com.hzs.system.sys - */ public interface ICubasdocApi { /** * 根据id 查询 + * * @return */ R getCubasdoc(Integer pkCubasdoc); diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java index 7a2aa12b..6f24442e 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IMenuColumnServiceApi.java @@ -6,11 +6,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 菜单列服务 - * @Author: jiang chao - * @Time: 2023/6/8 11:21 - * @Classname: IMenuColumnServiceApi - * @PackageName: com.hzs.system.sys + * 菜单列服务 */ public interface IMenuColumnServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java index d1f1c24d..57d0267b 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/IOperationLogServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.sys.SysOperationLog; /** - * Description: 后台操作日志服务接口 - * Author: jiang chao - * Time: 2022/9/14 15:48 - * Classname: IOperationLogService - * PackageName: com.hzs.system.sys + * 后台操作日志服务接口 */ public interface IOperationLogServiceApi { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java deleted file mode 100644 index 086d99ad..00000000 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/ThaliConfigDTO.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.system.sys.dto; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @Description: 能量仓套餐DTO - * @Author: jiang chao - * @Time: 2023/8/10 17:53 - * @Classname: ThaliConfigDTO - * @PackageName: com.hzs.system.sys.dto - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class ThaliConfigDTO implements Serializable { - - private static final long serialVersionUID = 3316294777261662729L; - - /** - * 套餐ID - */ - private Integer pkId; - - /** - * 三方套餐ID - */ - private Long packageId; - - /** - * 套餐时长 - */ - private Integer time; - - /** - * 套餐价格 - */ - private BigDecimal price; - -} diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/IBankCardServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/IBankCardServiceApi.java index c7b4af3d..8fd94acc 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/IBankCardServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/IBankCardServiceApi.java @@ -5,20 +5,15 @@ import com.hzs.third.bankcard.dto.BankCardParam; /** * 银行卡四要素认证 - * - * @Description: - * @Author: ljc - * @Time: 2023/2/9 14:04 - * @Classname: BankCardService - * @Package_name: com.hzs.third.bankCard */ public interface IBankCardServiceApi { + /** * 银行卡四要素验证 * * @param bankCardParam 银行卡入参 * @return R */ - R verifyBankCard(BankCardParam bankCardParam); + R verifyBankCard(BankCardParam bankCardParam); } diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/dto/BankCardParam.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/dto/BankCardParam.java index f48d6f49..b8fca756 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/dto/BankCardParam.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/bankcard/dto/BankCardParam.java @@ -9,12 +9,6 @@ import java.io.Serializable; /** * 银行卡校验参数 - * - * @Description: - * @Author: ljc - * @Time: 2022/11/24 18:19 - * @Classname: BankCardVO - * @Package_name: com.hz.bankCard.vo */ @Data @Builder @@ -28,12 +22,10 @@ public class BankCardParam implements Serializable { * 姓名 */ private String name; - /** * 身份证号 */ private String idCard; - /** * 手机号 */ diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java index 992c6c92..226b3bcc 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/delivery/IDeliveryServiceApi.java @@ -3,11 +3,7 @@ package com.hzs.third.delivery; import com.hzs.third.delivery.dto.DeliveryDTO; /** - * @Description: 新零售地址识别dubbo接口 - * @Author: jiang chao - * @Time: 2024/12/26 16:57 - * @Classname: IDeliveryServiceApi - * @PackageName: com.hzs.third.delivery + * 新零售地址识别dubbo接口 */ public interface IDeliveryServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java index e9a4100f..9bd9ea21 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/IDelayedMessageApi.java @@ -3,21 +3,12 @@ package com.hzs.third.mq; import com.hzs.common.core.domain.R; import com.hzs.third.mq.dto.DelayedMessageDTO; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/9 15:21 - * @Classname: IDelayedMessage - * @PackageName: com.hzs.third.mq - */ public interface IDelayedMessageApi { /** * 发送延时队列消息 + * * @param delayedMessageDTO 内容 - * @return: void - * @Author: sui q - * @Date: 2023/3/9 15:18 */ R sendDelayedMessage(DelayedMessageDTO delayedMessageDTO); } diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java index ac90e9cd..7bb6c528 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/mq/dto/DelayedMessageDTO.java @@ -10,11 +10,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 用于延时队列,删除redis缓存 - * @Author: sui q - * @Time: 2023/3/9 15:49 - * @Classname: DelayedMessageDTO - * @PackageName: com.hzs.third.mq.dto + * 用于延时队列,删除redis缓存 */ @Data @Builder diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java index d7b42789..c4d902f4 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/pay/IRefundServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.third.pay.dto.RefundDTO; /** - * @Description: 退款dubbo服务 - * @Author: jiang chao - * @Time: 2023/8/17 18:57 - * @Classname: IRefundServiceApi - * @PackageName: com.hzs.third.pay + * 退款dubbo服务 */ public interface IRefundServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java index 4cad8c9e..f3f4fad1 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/share/IShareServiceApi.java @@ -4,11 +4,7 @@ import com.hzs.common.core.domain.R; import com.hzs.third.share.dto.ShareServiceDTO; /** - * @Description: 分享码服务 - * @Author: jiang chao - * @Time: 2023/3/15 11:31 - * @Classname: IShareServiceApi - * @PackageName: com.hzs.third.share + * 分享码服务 */ public interface IShareServiceApi { diff --git a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java index d8e34a8b..c226dbd8 100644 --- a/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java +++ b/bd-api/bd-api-third/src/main/java/com/hzs/third/sms/ISmsServiceApi.java @@ -18,4 +18,16 @@ public interface ISmsServiceApi { */ R sendAliSms(String phone, String code, EAliSmsTemplate aliSmsTemplate); + /** + * 发送会员注册短信 + * + * @param phone + * @param aliSmsTemplate + * @param memberCode + * @param loginPwd + * @param payPwd + * @return + */ + R sendMemberRegister(String phone, EAliSmsTemplate aliSmsTemplate, String memberCode, String loginPwd, String payPwd); + } diff --git a/bd-business/bd-business-bonus/pom.xml b/bd-business/bd-business-bonus/pom.xml index 21cf1ac9..caad04c9 100644 --- a/bd-business/bd-business-bonus/pom.xml +++ b/bd-business/bd-business-bonus/pom.xml @@ -39,11 +39,17 @@ com.bd bd-common-aop + com.bd bd-api-bonus + + com.bd + bd-api-report + + org.springframework.amqp diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java index e5fc15aa..0b784727 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/controller/manage/CuMemberSettleController.java @@ -15,7 +15,6 @@ import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; @@ -37,8 +36,6 @@ public class CuMemberSettleController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; @Autowired - private IBonusSettleService iBonusSettleService; - @Autowired private ICuMemberTreeService iCuMemberTreeService; @Autowired private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @@ -48,8 +45,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-table") public AjaxResult initTable(String settleDate) { @@ -59,8 +54,6 @@ public class CuMemberSettleController extends BaseController { /** * 初始化奖金结算表 - * - * @return AjaxResult */ @GetMapping("/init-period") public AjaxResult initPeriod(String settleDate) { @@ -70,8 +63,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金计算 - 重新结算 - * - * @return AjaxResult */ @GetMapping("/settle-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.INSERT) @@ -86,8 +77,6 @@ public class CuMemberSettleController extends BaseController { /** * 公布奖金 - * - * @return AjaxResult */ @GetMapping("/publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.PUBLISH) @@ -102,8 +91,6 @@ public class CuMemberSettleController extends BaseController { /** * 不公布奖金 - * - * @return AjaxResult */ @GetMapping("/no-publish-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.NO_PUBLISH) @@ -118,8 +105,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.GRANT) @@ -134,8 +119,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-temp-bonus") public AjaxResult grantTempBonus(Integer pkCountry, String settleDate) { @@ -145,8 +128,6 @@ public class CuMemberSettleController extends BaseController { /** * 发放奖金 - * - * @return AjaxResult */ @GetMapping("/grant-bonus_all") public AjaxResult grantBonusAll() { @@ -156,8 +137,6 @@ public class CuMemberSettleController extends BaseController { /** * 奖金提现 - * - * @return AjaxResult */ @GetMapping("/withdrawal-bonus") @Log(module = EOperationModule.BONUS_SETTLE, business = EOperationBusiness.BONUS_SETTLE, method = EOperationMethod.WITHDRAWAL) @@ -170,20 +149,6 @@ public class CuMemberSettleController extends BaseController { return AjaxResult.success(); } - /** - * 秒接结算业绩,仅用于测试 - * - * @return AjaxResult - */ - @GetMapping("/settle-second-bonus") - public AjaxResult settleSecondBonus(String orderCode) { - if (StringUtils.isEmpty(orderCode)) { - return AjaxResult.error(); - } - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(orderCode); - return AjaxResult.success(); - } - /* * 查询奖金计算期数列表 **/ diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java new file mode 100644 index 00000000..3758a05c --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailDetailMapper.java @@ -0,0 +1,22 @@ +package com.hzs.bonus.achieve.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 日结算阶段表 Mapper 接口 + */ +public interface CuMemberRetailDetailMapper extends BaseMapper { + + /** + * 查询明细数据(指定阶段,指定状态) + */ + List listMemberRetailDetail(@Param("retailDetailTableName") String retailDetailTableName, + @Param("tmpIdList") List tmpIdList, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java index 53dcfffd..19d5e8b6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberRetailRangeMapper.java @@ -3,10 +3,12 @@ package com.hzs.bonus.achieve.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; +import com.hzs.common.domain.sale.ext.SaOrderExt; import org.apache.ibatis.annotations.Param; import java.math.BigDecimal; -import java.util.Date; import java.util.List; /** @@ -27,41 +29,10 @@ public interface CuMemberRetailRangeMapper extends BaseMapper batchQueryMemberRetailRangeByMemberPk(@Param("rangeTableName") String rangeTableName, - @Param("memberPkList") List memberPkList); - - /** - * 查询出有奖衔的会员 - * - * @param rangeTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(@Param("rangeTableName") String rangeTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(@Param("rangeTableName") String rangeTableName, - @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(@Param("rangeTableName") String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(@Param("rangeTableName") String rangeTableName, @Param("secondRangeTableName") String secondRangeTableName, @Param("county") Integer county); + void mergeMemberRetailRangeDetailByYesterday(@Param("detailTableName") String detailTableName, + @Param("yesterdayDetailTableName") String yesterdayDetailTableName); /** * 当前网体更新极差秒结表 @@ -86,16 +57,16 @@ public interface CuMemberRetailRangeMapper extends BaseMapper queryCuMemberRetailRangeParent(@Param("tableName") String tableName, @Param("saOrderExtList") List saOrderExtList); + /** + * 根据会员ID查询会员数据 + */ + List listCuMemberRetailRange(@Param("tableName") String tableName, @Param("pkMemberList") List pkMemberList); + /** * 推荐推荐人查询推荐人下的所有部门, 该订单日期之前的算他的网体 */ List queryCuMemberRetailRangeExtByParent(@Param("tableName") String tableName, @Param("pkParent") Long pkParent); - /** - * 查询推荐人伞下满足 - */ - List queryCuMemberRetailRangeEnoughAchieve(@Param("tableName") String tableName, @Param("pkParent") Long pkParent, @Param("achievePv") BigDecimal achievePv); - /** * 根据会员查询会员上的所有网体, 按照pkParent作为key,查询极差秒接表 */ @@ -114,22 +85,77 @@ public interface CuMemberRetailRangeMapper extends BaseMapper cuMemberRangeExtList); /** - * 批量更新网体 + * 更新会员日结数据 */ void mergeCuMemberRetailRangeExt(@Param("rangeTableName") String rangeTableName, @Param("cuMemberRangeExtList") List cuMemberRangeExtList); /** - * 更新会员树的累计业绩 - * - * @param settleTableName 结算日期 - * @param period 树 + * 批量会员日结明细数据 */ - void mergeCuMemberRetailRangeBySpecial(@Param("rangeTableName") String settleTableName, @Param("period") Integer period); + void mergeCuMemberRetailDetail(@Param("rangeDetailTableName") String rangeDetailTableName, @Param("cuMemberDetailList") List cuMemberDetailList); + /** - * 之前有过注水,回退 + * 向上查找所有parentID + * + * @param pkMember + * @return */ - void mergeCuMemberRetailBackBoxBySpecial(@Param("rangeTableName") String rangeTableName, - @Param("beforeTableName") String beforeTableName, - @Param("period") Integer period); + List findParentMemberList(@Param("pkMember") Long pkMember); + + + /** + * 更新自己秒结 + */ + void updateMemberRetailSecondRangeSelf(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("cuMember") CuMember cuMember, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + /** + * 更新上级秒结 + */ + void updateMemberRetailSecondRangeParent(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("memberList") List memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol); + + void initMemberRetailSecondRange(@Param("tableName") String tableName, @Param("member") CuMemberExt memberList); + + /** + * 查询直推会员数据 + */ + List listChildRetail(@Param("rangeTableName") String rangeTableName, + @Param("pkParentList") List pkParentList); + + /** + * 更新会员血缘上累计数据 + */ + Boolean updateMemberParentDate(@Param("rangeTableName") String rangeTableName, + @Param("achieveList") List achieveList); + + /** + * 查询符合奖衔业绩条件会员 + */ + List queryEnoughAwardMember(@Param("rangeTableName") String rangeTableName, + @Param("totalCheck") BigDecimal totalCheck, + @Param("awardsValue") Integer awardsValue); + + /** + * 查询符合奖衔业绩、安置条件会员 + */ + List queryEnoughAwardPlaceMember(@Param("rangeTableName") String rangeTableName, + @Param("awardsValue") Integer awardsValue, + @Param("totalCheck") BigDecimal totalCheck, + @Param("placeDeptNum") Integer placeDeptNum, + @Param("checkAwardsValue") Integer checkAwardsValue); + + /** + * 查询会员血缘下达标奖衔会员 + */ + List listChildAwards(@Param("rangeTableName") String rangeTableName, + @Param("pkAwards") Integer pkAwards, + @Param("childMemberList") List childMemberList); + + /** + * 更新会员奖衔 + */ + int updateCuMemberAwardsByPeriod(@Param("rangeTableName") String rangeTableName, + @Param("period") Integer period, + @Param("awardType") Integer awardType); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java index 460ac6f8..9e03dc77 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/mapper/CuMemberTreeMapper.java @@ -21,12 +21,26 @@ public interface CuMemberTreeMapper extends BaseMapper { void createCuMemberTreeTable(String tableName); /** - * 创建会员网体结算记录表(按照日记录,每天一条,记录30天的) + * 创建会员结算记录表(按照日记录,每天一条) * * @param tableName 日期 */ void createCuMemberSettleTable(String tableName); + /** + * 创建结算明细表 + * + * @param tableName + */ + void createCuMemberRetailDetail(String tableName); + + /** + * 创建结算明细表会员索引 + * + * @param tableName + */ + void createCuMemberRetailDetailMemberIndex(String tableName); + /* * 创建会员网体复购极差结算表 **/ @@ -80,6 +94,11 @@ public interface CuMemberTreeMapper extends BaseMapper { */ void truncateCuMemberTreeTable(@Param("tableName") String tableName); + /** + * 清除表数据 + */ + void clearTable(@Param("tableName") String tableName); + /** * 将会员表数据插入结算日表中 * @@ -99,27 +118,15 @@ public interface CuMemberTreeMapper extends BaseMapper { */ Integer queryExistOrderTableCount(String tableName); - /* - * 回退会员奖衔 - **/ - void updateBackCuMemberRetailRangeAward(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period, - @Param("awardType") Integer awardType); - - /* - * 回退会员奖衔 - **/ - void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate, - @Param("awardType") Integer awardType); + /** + * 回退会员奖衔 + */ + void updateBackCuMemberRetailRangeAward(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period); /** - * 初始化期间奖衔 + * 回退会员奖衔 */ - void updateCuMemberRetailRangeInitAward(@Param("rangeTableName") String rangeTableName); - - /** - * 初始化期间V5奖衔 - */ - void updateCuMemberRetailRangeInitV5Award(@Param("rangeTableName") String rangeTableName); + void updateCuMemberRetailRangeAwardByDate(@Param("rangeTableName") String rangeTableName, @Param("settleDate") Date settleDate); /** * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java new file mode 100644 index 00000000..5a079e9c --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailDetailService.java @@ -0,0 +1,35 @@ +package com.hzs.bonus.achieve.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; + +import java.util.List; +import java.util.Map; + +/** + * 日结算阶段表 服务类 + */ +public interface ICuMemberRetailDetailService extends IService { + + /** + * 根据结算会员获取对应的点位数据 + */ + void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList); + + /** + * 指定会员获取对应的点位数据 + */ + void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage); + + /** + * 会员直推对应的点位数据 + */ + void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage); + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java index b8182a78..5d0f7e43 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberRetailRangeService.java @@ -1,15 +1,16 @@ package com.hzs.bonus.achieve.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import java.math.BigDecimal; -import java.util.Date; import java.util.List; import java.util.Map; -import java.util.Set; /** * 服务类 @@ -19,7 +20,12 @@ public interface ICuMemberRetailRangeService extends IService queryCuMemberRetailRangeExtByParent(String tableName, Long pkParent); - /** - * 查询推荐人伞下满足 - */ - List queryCuMemberRetailRangeEnoughAchieve(String tableName, Long pkParent, BigDecimal achievePv); - /** * 根据会员查询会员上的所有网体, 按照pkParent作为key,查询极差秒接表 */ @@ -47,55 +48,14 @@ public interface ICuMemberRetailRangeService extends IService queryCuMemberSecondRangeExtByParent(String rangeTableName, String secondTableName, Long pkMember); /** - * 更新会员树的累计业绩 - * - * @param settleTableName 结算日期 - * @param cuMemberTreeMap 树 + * 更新会员日结数据 */ void updateCuMemberRetailRange(String settleTableName, Map cuMemberTreeMap); /** - * 更新会员树的累计业绩 - * - * @param settleTableName 结算日期 - * @param period 树 + * 更新会员日结明细数据 */ - void mergeCuMemberRetailRangeBySpecial(String settleTableName, Integer period); - - /** - * 之前有过注水,回退 - */ - void mergeCuMemberRetailBackBoxBySpecial(String rangeTableName, String beforeTableName, Integer period); - - /** - * 根据订单,查询出网体中记录的会员数据,推荐人、安置人 - * - * @param settleTableName 结算表 - * @param serviceMemberSet 会员编号 - */ - List batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet); - - /** - * 查询出有奖衔的会员 - * - * @param settleTableName 结算表 - */ - List batchQueryMemberRetailRangeByAwards(String settleTableName); - - /** - * 查询伞下会员,用于计算小区 - */ - List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailRangeByCounty(String rangeTableName); - - /** - * 查询有区域的会员 - */ - List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county); + void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap); /** * 更新极差秒接表,用昨天的结算表 @@ -114,4 +74,40 @@ public interface ICuMemberRetailRangeService extends IService cuMemberTreeMap); + + List findParentMemberList(Long pkMember); + + void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember pkMember, Integer updateType, String symbol); + + void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol); + + void initMemberRetailSecondRange(String tableName, CuMemberExt member); + + /** + * 更新会员血缘上累计数据 + */ + void updateMemberParentDate(String rangeTableName, Map memberAchieveHashMap); + + /** + * 查询符合奖衔业绩条件会员 + */ + List queryEnoughAwardMember(String rangeTableName, BigDecimal totalCheck, Integer awardsValue); + + /** + * 查询符合奖衔业绩、安置条件会员 + */ + List queryEnoughAwardPlaceMember(String rangeTableName, Integer awardsValue, BigDecimal totalCheck, Integer placeDeptNum, + Integer checkAwardsValue); + + /** + * 查询会员血缘下达标奖衔会员 + */ + List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList); + + /** + * 更新会员奖衔 + */ + void updateCuMemberAwardsByPeriod(String rangeTableName, Integer period); + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java index f0a75a87..1e66fe54 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/ICuMemberTreeService.java @@ -49,11 +49,6 @@ public interface ICuMemberTreeService extends IService { **/ void updateCuMemberRetailRangeAwardByDate(String rangeTableName, Date settleDate); - /** - * 初始化期间奖衔 - */ - void updateCuMemberRetailRangeInitAward(String rangeTableName); - /** * 删除日表数据 * @@ -61,6 +56,11 @@ public interface ICuMemberTreeService extends IService { */ void truncateCuMemberTreeTable(String tableName); + /** + * 清除表数据 + */ + void clearTable(String tableName); + /** * 创建会员网体推荐人索引 * @@ -82,4 +82,5 @@ public interface ICuMemberTreeService extends IService { */ void createCuMemberTreePlaceIndex(String tableName); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java index 108c1f98..19d195ee 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -10,7 +10,6 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberAchieve; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.bonus.achieve.mapper.CuMemberAchieveMapper; import com.hzs.bonus.achieve.param.MemberAchieveParam; import lombok.extern.slf4j.Slf4j; @@ -18,7 +17,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; -import java.time.temporal.ChronoUnit; import java.util.*; /** @@ -28,22 +26,11 @@ import java.util.*; @Service public class CuMemberAchieveServiceImpl extends ServiceImpl implements ICuMemberAchieveService { + @Autowired private ICuMemberTreeService cuMemberTreeService; - + @Autowired private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) { - this.cuMemberTreeService = cuMemberTreeService; - } - - @Autowired - ITransactionCommonService iTransactionCommonService; @Override public String createCuMemberAchieve(String date) { @@ -92,7 +79,6 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl 0; i--) { - String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); - int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; - baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); - } +// String payTime = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, saOrder.getPayTime()); +// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(payTime).getPkId(); +// String sourceTable = TableNameConstants.CU_MEMBER_TREE + DateUtils.getMonth(payTime); +// for (int i = 7; i > 0; i--) { +// String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(i, ChronoUnit.DAYS)); +// int settlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); +// String targetTable = TableNameConstants.CU_MEMBER_SETTLE + settlePeriod; +// baseMapper.chargeBackSaOrder(targetTable, sourceTable, period, cuMemberAchieve); +// } return Boolean.TRUE; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java index 3d05e281..02a1530b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberBonusSettle.java @@ -3,10 +3,7 @@ package com.hzs.bonus.achieve.service.impl; import com.hzs.common.core.constant.MagicNumberConstants; import org.springframework.stereotype.Component; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Set; +import java.util.*; /** * 奖金计算工具类 @@ -39,4 +36,11 @@ public class CuMemberBonusSettle { List oriList = Arrays.asList(baseEntityList.toArray()); return handleCutList(oriList, batchNum); } + + public List> handleCutList(Collection baseEntityList, Integer... batchNum) { + List oriList = Arrays.asList(baseEntityList.toArray()); + return handleCutList(oriList, batchNum); + } + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java new file mode 100644 index 00000000..495f3fa5 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailDetailServiceImpl.java @@ -0,0 +1,127 @@ +package com.hzs.bonus.achieve.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper; +import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.*; + +/** + * 日结算阶段表 服务实现类 + */ +@Service +public class CuMemberRetailDetailServiceImpl extends ServiceImpl implements ICuMemberRetailDetailService { + + @Resource + private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + + @Autowired + private CuMemberBonusSettle cuMemberBonusSettle; + + @Override + public void listMemberRetailDetail(String retailDetailTableName, Map memberRangeExtMap, + EBonusStage eBonusStage, EBonusStageStatus eBonusStageStatus, List stageMemberList) { + List> pkMemberList; + if (CollectionUtil.isNotEmpty(stageMemberList)) { + pkMemberList = cuMemberBonusSettle.handleCutList(stageMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + } else { + pkMemberList = cuMemberBonusSettle.handleCutList(memberRangeExtMap.keySet(), MagicNumberConstants.BATCH_QUERY_NUM); + } + pkMemberList.forEach(tmpIdList -> { + // 查询明细数据(指定阶段,未完成的) + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null); + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList); + }); + } + + @Override + public void listMemberRetailDetailByQuery(String retailDetailTableName, Map memberRangeExtMap, + List queryMemberList, EBonusStage eBonusStage) { + // 查询明细数据(指定阶段,未完成的) + List tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpDetailList); + } + + /** + * 封装三个明细map + */ + private void packageThreeDetailMap(Map memberRangeExtMap, EBonusStage eBonusStage, List tmpDetailList) { + if (CollectionUtil.isNotEmpty(tmpDetailList)) { + // 明细数据放到对应的会员数据中 + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) { + CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember()); + // 阶段一点位列表(使用有序map,为了后续业务处理方便) + if (null == cuMemberRetailRangeExt.getOneDetailMap()) { + cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>()); + } + if (null == cuMemberRetailRangeExt.getTwoDetailMap()) { + cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>()); + } + if (null == cuMemberRetailRangeExt.getThreeDetailMap()) { + cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>()); + } + // 使用有序map,为了后续业务处理方便 + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 阶段一点位列表 + cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + // 阶段二点位列表 + cuMemberRetailRangeExt.getTwoDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + // 阶段三点位列表 + cuMemberRetailRangeExt.getThreeDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail); + } + } + } + } + + @Override + public void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage) { + if (null != sourceMember.getChildRetailMap()) { + // 直推会员列表存在,则直接结束 + return; + } + sourceMember.setChildRetailMap(new LinkedHashMap<>()); + + // 会员直推数据 + List retailRangeList = cuMemberRetailRangeMapper.listChildRetail(rangeTableName, Collections.singletonList(sourceMember.getPkMember())); + if (CollectionUtil.isNotEmpty(retailRangeList)) { + // 直推数据列表 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + + List queryMemberList = new ArrayList<>(); + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeList) { + CuMemberRetailRangeExt tmpMemberRetailRange = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); + if (null != tmpMemberRetailRange) { + // 直推会员已经存在 + childRetailMap.put(tmpMemberRetailRange.getPayTime(), tmpMemberRetailRange); + } else { + // 直推会员不存在 + childRetailMap.put(cuMemberRetailRangeExt.getPayTime(), cuMemberRetailRangeExt); + memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); + queryMemberList.add(cuMemberRetailRangeExt.getPkMember()); + } + } + if (queryMemberList.size() > 0) { + List> pkMemberList = cuMemberBonusSettle.handleCutList(queryMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + pkMemberList.forEach(tmpIdList -> { + // 查询明细数据(指定阶段,未完成的) + List tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue()); + packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList); + }); + } + } + } + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java index 118cb339..8afe98de 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberRetailRangeServiceImpl.java @@ -1,12 +1,18 @@ package com.hzs.bonus.achieve.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; -import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.EAwardsType; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -22,9 +28,11 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl queryCuMemberRetailRangeEnoughAchieve(String tableName, Long pkParent, BigDecimal achievePv) { - return baseMapper.queryCuMemberRetailRangeEnoughAchieve(tableName, pkParent, achievePv); - } - @Override public List queryCuMemberSecondRangeParent(String rangeTableName, String secondTableName, Long pkMember) { // 查询伞上 @@ -82,47 +91,43 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl batchQueryMemberRetailRangeByMemberPk(String settleTableName, Set serviceMemberSet) { - List cuMemberSettleExtList = new ArrayList<>(); - if (serviceMemberSet.size() > 0) { - // 做一下排序 - List memberPkList = Arrays.asList(serviceMemberSet.toArray(new Long[]{})); - Collections.sort(memberPkList); - List> listList = cuMemberBonusSettle.handleCutList(memberPkList, MagicNumberConstants.BATCH_QUERY_NUM); - listList.forEach(list -> - cuMemberSettleExtList.addAll(baseMapper.batchQueryMemberRetailRangeByMemberPk(settleTableName, list))); - } - return cuMemberSettleExtList; - } - - @Override - public List batchQueryMemberRetailRangeByAwards(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByAwards(rangeTableName); - } - - @Override - public List batchQueryMemberRetailRangeByParent(String rangeTableName, List memberRetailRangeExtList) { - return baseMapper.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - } - - @Override - public List batchQueryMemberRetailRangeByCounty(String rangeTableName) { - return baseMapper.batchQueryMemberRetailRangeByCounty(rangeTableName); - } - - @Override - public List batchQueryMemberRetailSecondRangeByCounty(String rangeTableName, String secondRangeTableName, Integer county) { - return baseMapper.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, county); + public void updateCuMemberRetailDetail(String rangeDetailTableName, Map memberRangeExtMap) { + Collection retailDetailColl = new ArrayList<>(); + memberRangeExtMap.forEach((key, value) -> { + if (null != value.getOneDetailMap() && value.getOneDetailMap().size() > 0) { + Collection tmpDetailColl = value.getOneDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } + } + if (null != value.getTwoDetailMap() && value.getTwoDetailMap().size() > 0) { + Collection tmpDetailColl = value.getTwoDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } + } + if (null != value.getThreeDetailMap() && value.getThreeDetailMap().size() > 0) { + Collection tmpDetailColl = value.getThreeDetailMap().values(); + for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailColl) { + // 只有需要更新的才进行入库操作 + if (null != cuMemberRetailDetail.getUpdateBool()) { + retailDetailColl.add(cuMemberRetailDetail); + } + } + } + }); + List> list = cuMemberBonusSettle.handleCutList(retailDetailColl); + list.forEach(tmpList -> { + if (CollectionUtil.isNotEmpty(tmpList)) { + baseMapper.mergeCuMemberRetailDetail(rangeDetailTableName, tmpList); + } + }); } @Override @@ -144,9 +149,70 @@ public class CuMemberRetailRangeServiceImpl extends ServiceImpl baseMapper.mergeCuMemberSecondRange(secondTableName, list)); } + @Override + public List findParentMemberList(Long pkMember) { + return baseMapper.findParentMemberList(pkMember); + } + + @Override + public void updateMemberRetailSecondRangeSelf(String settleTableName, SaOrderExt orderExt, CuMember cuMember, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeSelf(settleTableName, orderExt, cuMember, updateType, symbol); + } + + @Override + public void updateMemberRetailSecondRangeParent(String settleTableName, SaOrderExt orderExt, List pkMemberList, Integer updateType, String symbol) { + baseMapper.updateMemberRetailSecondRangeParent(settleTableName, orderExt, pkMemberList, updateType, symbol); + } + + @Override + public void initMemberRetailSecondRange(String tableName, CuMemberExt member) { + baseMapper.initMemberRetailSecondRange(tableName, member); + } + private List> setUpdCuMemberTreeLists(Map cuMemberTreeMap) { List cuMemberTreeList = new ArrayList<>(); cuMemberTreeMap.forEach((key, value) -> cuMemberTreeList.add(value)); return cuMemberBonusSettle.handleCutList(cuMemberTreeList); } + + @Override + public void updateMemberParentDate(String rangeTableName, Map memberAchieveHashMap) { + if (memberAchieveHashMap.size() == 0) { + return; + } + List> listList = cuMemberBonusSettle.handleCutList(memberAchieveHashMap.values(), MagicNumberConstants.BATCH_UPDATE_NUM); + listList.forEach(list -> { + baseMapper.updateMemberParentDate(rangeTableName, list); + }); + } + + @Override + public List queryEnoughAwardMember(String rangeTableName, BigDecimal totalCheck, Integer awardsValue) { + return baseMapper.queryEnoughAwardMember(rangeTableName, totalCheck, awardsValue); + } + + @Override + public List queryEnoughAwardPlaceMember(String rangeTableName, Integer awardsValue, BigDecimal totalCheck, Integer placeDeptNum, + Integer checkAwardsValue) { + return baseMapper.queryEnoughAwardPlaceMember(rangeTableName, awardsValue, totalCheck, placeDeptNum, checkAwardsValue); + } + + @Override + public List listChildAwards(String rangeTableName, Integer pkAwards, List childMemberList) { + List checkList = new ArrayList<>(); + List> queryList = cuMemberBonusSettle.handleCutList(childMemberList, MagicNumberConstants.BATCH_QUERY_NUM); + queryList.forEach(tmpList -> { + List tmpCheckList = baseMapper.listChildAwards(rangeTableName, pkAwards, tmpList); + if (tmpCheckList.size() > 0) { + checkList.addAll(tmpCheckList); + } + }); + return checkList; + } + + @Override + public void updateCuMemberAwardsByPeriod(String rangeTableName, Integer period) { + baseMapper.updateCuMemberAwardsByPeriod(rangeTableName, period, EAwardsType.RANGE_TYPE.getValue()); + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java index 876efb8e..46f1ac88 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberSettlePeriodServiceImpl.java @@ -7,11 +7,9 @@ import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodDetailService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.EExpandCapMethod; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriodDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberSettlePeriodExt; @@ -19,7 +17,6 @@ import com.hzs.common.domain.system.base.BdCountry; import com.hzs.bonus.achieve.mapper.CuMemberSettlePeriodMapper; import com.hzs.bonus.achieve.param.MemberPeriodParam; import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -41,8 +38,6 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } @Override diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java index 0c2ef6e4..33006a49 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -5,7 +5,6 @@ import com.hzs.bonus.achieve.service.ICuMemberAchieveService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EAwardsType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberTree; import com.hzs.bonus.achieve.mapper.CuMemberTreeMapper; @@ -38,11 +37,11 @@ public class CuMemberTreeServiceImpl extends ServiceImpl { - /** - * 查询登录会员以及状态 - * - * @param memberCode 会员编号 - * @param pkMember 会员主键 - * @return - */ - CuMemberExt queryLoginMember(@Param("memberCode") String memberCode, @Param("pkMember") Long pkMember); + CuMember getByPkId(@Param("pkId") Serializable id); /** - * 更新会员奖衔根据临时表 + * 更新会员奖衔 */ - int updateCuMemberRetailAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); - - /** - * 更新会员最高奖衔 - * - * @param period - * @param awardType - * @return - */ - int updateCuMemberMaxAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); + int updateCuMemberAwardsByPeriod(@Param("period") Integer period, @Param("awardType") Integer awardType); /** * 更新会员奖衔根据临时表 @@ -50,57 +32,12 @@ public interface CuMemberMapper extends BaseMapper { /** * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 */ - int updateCuMemberMinGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 更新会员的等级 - */ - Integer updateCuMemberGrade(@Param("period") Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 更新会员的等级(会员表) - */ - Integer updateCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); + void updateBackCuMemberRetailRangeAward(@Param("period") Integer period); /** * 更新会员奖衔根据临时表 */ - void updateBackCuMemberRetailRangeAward(@Param("period") Integer period, @Param("awardType") Integer awardType); - - /** - * 更新会员奖衔根据临时表 - */ - void updateCuMemberRetailRangeAwardByDate(@Param("settleDate") Date settleDate, @Param("awardType") Integer awardType); - - /** - * 初始化会员奖衔 - */ - void updateCuMemberRetailRangeInitAward(); - - /** - * 初始化会员V5奖衔 - */ - void updateCuMemberRetailRangeInitV5Award(); - - /** - * 查询可以分享的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(@Param("pkMember") Long pkMember); + void updateCuMemberRetailRangeAwardByDate(@Param("settleDate") Date settleDate); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java index d99dca54..6fd77473 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/IBdVertexBonusService.java @@ -3,19 +3,9 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.vertex.BdVertexBonus; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务类 */ public interface IBdVertexBonusService extends IService { - /** - * 查询体系奖金map - * - * @return - */ - Map> queryVertexBonus(); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java index 1e2341fb..03c8b431 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/ICuMemberService.java @@ -3,10 +3,8 @@ package com.hzs.bonus.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.vertex.BdVertexBonus; +import java.io.Serializable; import java.util.Date; import java.util.List; @@ -15,18 +13,12 @@ import java.util.List; */ public interface ICuMemberService extends IService { - /** - * 根据会员编号获取会员信息(查库) - * - * @param memberCode - * @return - */ - CuMemberExt getMemberByCode(String memberCode); + CuMember getByPkId(Serializable id); /** - * 更新会员奖衔根据临时表 -- 日结 + * 更新会员奖衔 */ - void updateCuMemberRetailRangeByPeriod(Integer period); + void updateCuMemberAwardsByPeriod(Integer period); /** * 更新会员奖衔根据临时表 @@ -35,13 +27,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeByList(List cuMemberAwardsList, Integer period); - /** - * 更新会员奖衔根据临时表 - * - * @param cuMemberGradeList 修改奖衔的会员 - */ - void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 * @@ -49,21 +34,6 @@ public interface ICuMemberService extends IService { */ void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period); - /** - * 根据等级更新会员等级 - */ - void updateCuMemberGradeByPeriod(Integer period); - - /** - * 查询会员等级 - */ - void updateCuMemberLevel(Date startDate, Date endDate); - - /** - * 更新会员的等级(会员表) - */ - void updateCuMemberGradeByList(List cuMemberGradeList, Integer period); - /** * 更新会员奖衔根据临时表 */ @@ -74,22 +44,4 @@ public interface ICuMemberService extends IService { */ void updateCuMemberRetailRangeAwardByDate(Date settleDate); - /** - * 初始化会员奖衔表 - */ - void updateCuMemberRetailRangeInitAward(); - - /** - * 查询可以获得分红的会员人数 - */ - List queryCuMemberShareTotal(Integer pkCountry); - - /** - * 查询体系奖项列表 - * - * @param pkMember - * @return - */ - List listVertexBonus(Long pkMember); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java index bf253722..137488c2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/BdVertexBonusServiceImpl.java @@ -1,41 +1,15 @@ package com.hzs.bonus.base.service.impl; -import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.base.mapper.BdVertexBonusMapper; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** * 体系奖金配置(记录哪个体系走特殊奖金) 服务实现类 */ @Service public class BdVertexBonusServiceImpl extends ServiceImpl implements IBdVertexBonusService { - @Override - public Map> queryVertexBonus() { - HashMap> resultMap = new HashMap<>(); - - List vertexBonusList = this.list(); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (resultMap.containsKey(bdVertexBonus.getPkVertex())) { - resultMap.get(bdVertexBonus.getPkVertex()).add(bdVertexBonus.getBonusItems()); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(bdVertexBonus.getBonusItems()); - resultMap.put(bdVertexBonus.getPkVertex(), tmpList); - } - } - } - - return resultMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java index c82fcfcb..eda97baa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/base/service/impl/CuMemberServiceImpl.java @@ -3,15 +3,12 @@ package com.hzs.bonus.base.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.base.service.*; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.*; import com.hzs.common.domain.member.base.*; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.bonus.base.mapper.CuMemberMapper; -import com.hzs.common.domain.vertex.BdVertexBonus; import org.springframework.stereotype.Service; +import java.io.Serializable; import java.util.*; /** @@ -21,75 +18,33 @@ import java.util.*; public class CuMemberServiceImpl extends ServiceImpl implements ICuMemberService { @Override - public CuMemberExt getMemberByCode(String memberCode) { - return baseMapper.queryLoginMember(memberCode, null); + public CuMember getByPkId(Serializable id) { + return baseMapper.getByPkId(id); } @Override - public void updateCuMemberRetailRangeByPeriod(Integer period) { - baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); - baseMapper.updateCuMemberRetailAwardsByPeriod(period, EAwardsType.SHARE_TYPE.getValue()); - // 更新会员最高奖衔 - baseMapper.updateCuMemberMaxAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); + public void updateCuMemberAwardsByPeriod(Integer period) { + baseMapper.updateCuMemberAwardsByPeriod(period, EAwardsType.RANGE_TYPE.getValue()); } @Override public void updateCuMemberRetailRangeByList(List cuMemberAwardsList, Integer period) { baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue()); - baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); - } - - @Override - public void updateCuMemberMinGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberMinGradeByList(cuMemberGradeList, period); } @Override public void updateCuMemberMinAwardsByList(List cuMemberAwardsList, Integer period) { baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.RANGE_TYPE.getValue()); - baseMapper.updateCuMemberRetailRangeByList(cuMemberAwardsList, period, EAwardsType.SHARE_TYPE.getValue()); - } - - @Override - public void updateCuMemberGradeByPeriod(Integer period) { - baseMapper.updateCuMemberGrade(period); - } - - @Override - public void updateCuMemberLevel(Date startDate, Date endDate) { - baseMapper.updateCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeByList(List cuMemberGradeList, Integer period) { - baseMapper.updateCuMemberGradeByList(cuMemberGradeList, period); } @Override public void updateBackCuMemberRetailRangeAward(Integer period) { - baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.RANGE_TYPE.getValue()); - baseMapper.updateBackCuMemberRetailRangeAward(period, EAwardsType.SHARE_TYPE.getValue()); + baseMapper.updateBackCuMemberRetailRangeAward(period); } @Override public void updateCuMemberRetailRangeAwardByDate(Date settleDate) { - baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.RANGE_TYPE.getValue()); - baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate, EAwardsType.SHARE_TYPE.getValue()); + baseMapper.updateCuMemberRetailRangeAwardByDate(settleDate); } - @Override - public void updateCuMemberRetailRangeInitAward() { - baseMapper.updateCuMemberRetailRangeInitAward(); - baseMapper.updateCuMemberRetailRangeInitV5Award(); - } - - @Override - public List queryCuMemberShareTotal(Integer pkCountry) { - return baseMapper.queryCuMemberShareTotal(pkCountry); - } - - @Override - public List listVertexBonus(Long pkMember) { - return baseMapper.listVertexBonus(pkMember); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java index 9b5c1e67..dc5a6d20 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/api/ApiCuMemberBonusController.java @@ -6,14 +6,12 @@ import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.param.BonusParam; import com.hzs.bonus.bonus.service.ICuMemberBonusService; import com.hzs.bonus.bonus.vo.*; -import com.hzs.common.core.enums.EBonusItems; import com.hzs.common.core.enums.EGrantStatus; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.ext.CuMemberBonusExt; -import com.hzs.common.domain.vertex.BdVertexBonus; import com.hzs.common.security.utils.SecurityUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -33,8 +31,6 @@ public class ApiCuMemberBonusController extends BaseController { @Autowired private ICuMemberBonusService iCuMemberBonusService; - @Autowired - private ICuMemberService iCuMemberService; /** * 新零售实时奖金:查询会员实时奖金,当日的奖金 @@ -47,9 +43,6 @@ public class ApiCuMemberBonusController extends BaseController { bonusParam.setEndDate(DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentDate())); bonusParam.setGrantStatus(EGrantStatus.SETTLED.getValue()); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List cuMemberBonusList = iCuMemberBonusService.queryMemberSecondBonusVoByCondition(bonusParam); List memberBonusVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { @@ -57,17 +50,12 @@ public class ApiCuMemberBonusController extends BaseController { MemberBonusVO memberBonusVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusVO.class, "settleDate"); memberBonusVO.setServiceSpend(BigDecimal.ZERO); memberBonusVO.setSettleDate(DateUtils.currentDate()); - BigDecimal serviceSpend = ComputeUtil.computeSubtract( - ComputeUtil.computeAddNum(cuMemberBonus.getRetailRangeIncome(), cuMemberBonus.getRetailSameLevelIncome(), cuMemberBonus.getRetailAreaIncome(), cuMemberBonus.getRepurRangeIncome()), - cuMemberBonus.getRetailRealSubtotal() - ); +// BigDecimal serviceSpend = ComputeUtil.computeSubtract( +// ComputeUtil.computeAddNum(cuMemberBonus.getRetailRangeIncome(), cuMemberBonus.getRetailSameLevelIncome(), cuMemberBonus.getRetailAreaIncome(), cuMemberBonus.getRepurRangeIncome()), +// cuMemberBonus.getRetailRealSubtotal() +// ); + BigDecimal serviceSpend = BigDecimal.ZERO; memberBonusVO.setBackPoints(serviceSpend); - - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusVO.setRepurRangeIncome(null); - } - memberBonusVOList.add(memberBonusVO); } }); @@ -83,17 +71,10 @@ public class ApiCuMemberBonusController extends BaseController { List cuMemberBonusList = iCuMemberBonusService.queryMemberBonusVoByCondition(bonusParam); - // 控制复购级差收益的返回 - final boolean rangeIncomeFlag = this.checkRangeIncome(); - List firstPurchaseVOList = new ArrayList<>(); cuMemberBonusList.forEach(cuMemberBonus -> { MemberBonusFirstPurchaseVO memberBonusFirstPurchaseVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusFirstPurchaseVO.class, "settleDate"); packageSettleDate(cuMemberBonus, memberBonusFirstPurchaseVO); - if (!rangeIncomeFlag) { - // 没有复购级差 - memberBonusFirstPurchaseVO.setRepurRangeIncome(null); - } firstPurchaseVOList.add(memberBonusFirstPurchaseVO); }); return getDataTable(firstPurchaseVOList); @@ -180,23 +161,4 @@ public class ApiCuMemberBonusController extends BaseController { return iCuMemberBonusService.queryMemberBonusDetailVoByCondition(bonusParam); } - /** - * 校验是否有复购级差 - * - * @return - */ - private boolean checkRangeIncome() { - List vertexBonusList = iCuMemberService.listVertexBonus(SecurityUtils.getUserId()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - for (BdVertexBonus bdVertexBonus : vertexBonusList) { - if (null != bdVertexBonus - && null != bdVertexBonus.getBonusItems() - && EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bdVertexBonus.getBonusItems()) { - return true; - } - } - } - return false; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java index 7694c77c..0af2fce7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberBonusController.java @@ -10,14 +10,11 @@ import com.hzs.bonus.bonus.vo.MemberBonusDetailSerVO; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.ColumnAuthority; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.BonusFieldConstants; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.ext.CuMemberBonusExt; @@ -180,13 +177,8 @@ public class CuMemberBonusController extends BaseController { List cuMemberBonusVoList = new ArrayList<>(cuMemberBonusExtList.size()); for (CuMemberBonusExt cuMemberBonusExt : cuMemberBonusExtList) { CuMemberBonusVO cuMemberBonusVO = BeanUtil.copyProperties(cuMemberBonusExt, CuMemberBonusVO.class); - cuMemberBonusVO.setMemberCode(cuMemberBonusExt.getMemberCode()); cuMemberBonusVO.setMemberName(cuMemberBonusExt.getMemberName()); - - for (String key : CuMemberBonusVO.INCOME_ARRAY) { - ReflectUtils.invokeSetter(cuMemberBonusVO, key + BonusFieldConstants.INCOME_SUFFIX, ComputeUtil.computeMultiply(ReflectUtils.invokeGetter(cuMemberBonusExt, key), cuMemberBonusExt.getOutExchangeRate())); - } cuMemberBonusVoList.add(cuMemberBonusVO); } return cuMemberBonusVoList; @@ -220,7 +212,7 @@ public class CuMemberBonusController extends BaseController { // 获取需要翻译的枚举翻译 Map transactionLongMap = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE, EnumsPrefixConstants.KEY_AWARD); for (MemberBonusDetailSerVO memberBonusDetailSerVO : memberBonusDetailSerVOList) { - memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getEnumLabelByValue(memberBonusDetailSerVO.getOrderType())); + memberBonusDetailSerVO.setOrderTypeVal(EOrderType.getLabelByValue(memberBonusDetailSerVO.getOrderType())); memberBonusDetailSerVO.setIncomeStatusVal(EBonusIncomeStatus.getEnumLabelByValue(memberBonusDetailSerVO.getIncomeStatus())); if (transactionLongMap.containsKey(memberBonusDetailSerVO.getPkSettleGrade())) { @@ -240,4 +232,5 @@ public class CuMemberBonusController extends BaseController { bonusParam.setTeamList(userAuthorityDto.getUserTeamList()); bonusParam.setSystemType(SecurityUtils.getSystemType()); } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java deleted file mode 100644 index 76ec1878..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberShareBonusController.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.hzs.bonus.bonus.controller.manage; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; -import com.hzs.bonus.bonus.service.ICuMemberShareBonusService; -import com.hzs.common.core.annotation.AccessPermissions; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 会员奖金-分红奖金配置 前端控制器 - * - * @author hzs - * @since 2023-07-03 - */ -@RestController -@RequestMapping("/manage/bonus") -public class CuMemberShareBonusController extends BaseController { - - private ICuMemberShareBonusService cuMemberShareBonusService; - - @Autowired - public void setCuMemberShareBonusService(ICuMemberShareBonusService cuMemberShareBonusService) { - this.cuMemberShareBonusService = cuMemberShareBonusService; - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @AccessPermissions("BonusConfig") - @PostMapping("/query-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult queryShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null) { - return AjaxResult.error("结算月份不能为空"); - } - return AjaxResult.success(cuMemberShareBonusService.queryCuMemberShareBonus(SecurityUtils.getPkCountry(), cuMemberShareBonusParam.getSettleMonth())); - } - - /** - * 查询某个月的分红配置 - * - * @return AjaxResult - */ - @PostMapping("/save-share-bonus") -// @Log(module = EOperationModule.SPECIAL_BUSINESS, method = EOperationMethod.UPDATE) - public AjaxResult saveShareBonus(@RequestBody CuMemberShareBonusParam cuMemberShareBonusParam) { - if (cuMemberShareBonusParam.getSettleMonth() == null || CollectionUtil.isEmpty(cuMemberShareBonusParam.getCuMemberShareDetailList())) { - return AjaxResult.error("结算月份不能为空"); - } - cuMemberShareBonusParam.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberShareBonusParam.setPkCreator(SecurityUtils.getUserId()); - cuMemberShareBonusService.saveMemberShareBonus(cuMemberShareBonusParam); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberSpeRetailController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberSpeRetailController.java deleted file mode 100644 index c2335b02..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/controller/manage/CuMemberSpeRetailController.java +++ /dev/null @@ -1,314 +0,0 @@ -package com.hzs.bonus.bonus.controller.manage; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.base.service.ICuMemberService; -import com.hzs.bonus.bonus.param.RetailAreaParam; -import com.hzs.bonus.bonus.service.ICuMemberSpeRetailService; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.bonus.CuMemberSpeRetail; -import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import org.springframework.web.multipart.MultipartFile; - -import javax.servlet.http.HttpServletResponse; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 注水盒数 前端控制器 - */ -@RestController -@RequestMapping("/manage/special") -public class CuMemberSpeRetailController extends BaseController { - - @Autowired - private ICuMemberService iCuMemberService; - @Autowired - private ICuMemberSpeRetailService iCuMemberSpeRetailService; - @Autowired - private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; - - /** - * 注水列表 - **/ - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.SELECT) - @GetMapping("/list") - public TableDataInfo list(RetailAreaParam retailAreaParam) { - startPage(); - retailAreaParam.setSystemType(SecurityUtils.getSystemType()); - retailAreaParam.setPkCountry(SecurityUtils.getPkCountry()); - List list = iCuMemberSpeRetailService.getCuMemberSpeRetail(retailAreaParam); - return getDataTable(list); - } - - /** - * 新增注水 - **/ - @PostMapping("/save") - @RepeatSubmitSimple - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.INSERT) - public AjaxResult saveCuBonusExpand(@RequestBody RetailAreaParam retailAreaParam) { - if (StringUtils.isEmpty(retailAreaParam.getMemberCode())) { - return AjaxResult.error("会员信息不存在"); - } - //校验团队总盒数大于小区盒数 -// if (retailAreaParam.getTeamBoxNum() < retailAreaParam.getSmallBoxNum()) { - if (retailAreaParam.getTeamBoxNum().compareTo(retailAreaParam.getSmallBoxNum()) < 0) { - return AjaxResult.error("团队盒数需大于小区盒数"); - } - //校验结算日期是否为空 - if (StringUtils.isNull(retailAreaParam.getSettleDate())) { - return AjaxResult.error("结算日期不能为空"); - } - if (iCuMemberSpeRetailService.checkCuMemberActivate(retailAreaParam.getMemberCode()) == 0) { - return AjaxResult.error("会员未激活,不可注水"); - } - Integer systemType = SecurityUtils.getSystemType(); - CuMemberExt me = iCuMemberService.getMemberByCode(retailAreaParam.getMemberCode()); - if (null == me || me.getCategory() != ECategory.NORMAL.getValue()) { - return AjaxResult.error("会员信息不存在或已撤单"); - } - - if (DateUtils.compareDateBefore(retailAreaParam.getSettleDate(), me.getCreationTime())) { - return AjaxResult.error("注水日期不能在会员创建之前"); - } - if (!DateUtils.isLatestWeek(retailAreaParam.getSettleDate(), new Date())) { - return AjaxResult.error("只能注水7天以内"); - } - - //查询最新期数 - String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, retailAreaParam.getSettleDate()); - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( - DateUtils.parseDateToStr(datestr)).getPkId(); - retailAreaParam.setPeriod(period); - - //校验是否已经注水 - LambdaUpdateWrapper cmsrQw = new LambdaUpdateWrapper<>(); - cmsrQw.eq(CuMemberSpeRetail::getMemberCode, retailAreaParam.getMemberCode()); - cmsrQw.eq(CuMemberSpeRetail::getPeriod, period); - cmsrQw.eq(CuMemberSpeRetail::getSystemType, systemType); - int check = iCuMemberSpeRetailService.count(cmsrQw); - if (check > 0) { - return AjaxResult.error("会员已注水"); - } - CuMemberSpeRetail cmsr = BeanUtil.copyProperties(retailAreaParam, CuMemberSpeRetail.class); - cmsr.setCreationTime(new Date()); - cmsr.setPkCreator(SecurityUtils.getUserId()); - cmsr.setPkCountry(SecurityUtils.getPkCountry()); - cmsr.setPeriodDate(DateUtils.getStartTime(retailAreaParam.getSettleDate())); - cmsr.setSystemType(systemType); - return AjaxResult.success(iCuMemberSpeRetailService.save(cmsr)); - } - - /** - * 批量添加秒接日志记录表 - **/ - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.IMPORT) - @PostMapping("/importData") - @RepeatSubmitSimple - public AjaxResult importData(MultipartFile file) throws Exception { - ExcelUtil util = new ExcelUtil<>(RetailAreaParam.class); - Integer pkCountry = SecurityUtils.getPkCountry(); - Integer systemType = SecurityUtils.getSystemType(); - Long pkCreator = SecurityUtils.getUserId(); - List list = util.importExcel(file.getInputStream()); - List memberList = new ArrayList<>(); - List errorlist = new ArrayList<>(); - //去重 - Set seenMemberCodesRepeat = new HashSet<>(); - List uniqueList = list.stream() - .filter(p -> seenMemberCodesRepeat.add(p.getMemberCode())) // 如果Set中不存在则保留 - .collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(list)) { - Set seenMemberCodes = new HashSet<>(); - for (RetailAreaParam cma : uniqueList) { - cma.setSystemType(systemType); - if (StringUtils.isNotEmpty(cma.getMemberCode())) { - //校验结算日期是否为空 - if (StringUtils.isNull(cma.getSettleDate())) { - cma.setMsg("结算日期不能为空"); - errorlist.add(cma); - continue; - } - //校验团队总盒数大于小区盒数 -// if (cma.getTeamBoxNum() < cma.getSmallBoxNum()) { - if (cma.getTeamBoxNum().compareTo(cma.getSmallBoxNum()) < 0) { - cma.setMsg("团队盒数需大于小区盒数"); - errorlist.add(cma); - continue; - } - if (!DateUtils.isLatestWeek(cma.getSettleDate(), new Date())) { - return AjaxResult.error("只能注水7天以内"); - } - if (iCuMemberSpeRetailService.checkCuMemberActivate(cma.getMemberCode()) == 0) { - cma.setMsg("会员未激活,不可注水"); - errorlist.add(cma); - continue; - } - //查询最新期数 - String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cma.getSettleDate()); - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( - DateUtils.parseDateToStr(datestr)).getPkId(); - cma.setPeriod(period); - cma.setPeriodDate(DateUtils.getStartTime(cma.getSettleDate())); - // 遍历传入的RetailAreaParam列表 - if (!seenMemberCodes.add(cma.getMemberCode())) { - // 如果memberCode已经在映射中存在,则表示这是一个重复项 - // 将之前存储的对象加入错误列表 - cma.setMsg("会员编号重复"); - // 并且也将当前对象加入错误列表 - errorlist.add(cma); - continue; - } - CuMemberExt me = iCuMemberService.getMemberByCode(cma.getMemberCode()); - if (null == me || me.getCategory() != ECategory.NORMAL.getValue()) { - cma.setMsg("会员信息不存在或已撤单"); - errorlist.add(cma); - continue; - } - if (DateUtils.compareDateBefore(cma.getSettleDate(), me.getCreationTime())) { - cma.setMsg("注水日期不能在会员创建之前"); - errorlist.add(cma); - continue; - } - //校验是否已经注水 - LambdaUpdateWrapper cmsr = new LambdaUpdateWrapper<>(); - cmsr.eq(CuMemberSpeRetail::getMemberCode, cma.getMemberCode()); - cmsr.eq(CuMemberSpeRetail::getPeriod, period); - cmsr.eq(CuMemberSpeRetail::getSystemType, systemType); - int check = iCuMemberSpeRetailService.count(cmsr); - if (check > 0) { - cma.setMsg("会员已注水"); - errorlist.add(cma); - continue; - } - memberList.add(cma); - } - } - } - if (CollectionUtil.isNotEmpty(memberList)) { - iCuMemberSpeRetailService.batchSpeRetail(memberList, pkCountry, pkCreator); - } - if (CollectionUtil.isNotEmpty(errorlist)) { - return AjaxResult.error(504, TransactionUtils.getContent(ConfigMsgConstants.MEMBER_DATA_ERROR), errorlist); - } - return AjaxResult.success(); - } - - /** - * 下载模板 - **/ - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.EXPORT) - @PostMapping("/download") - public void download(HttpServletResponse response) { - List list = new ArrayList<>(); - ExcelUtil util = new ExcelUtil<>(RetailAreaParam.class); - util.exportExcel(response, list, "新零售注水"); - } - - /** - * 查询单条新零售注水信息 - **/ - @GetMapping("/getOne/{pkId}") - public AjaxResult getOne(@PathVariable Long pkId) { - RetailAreaParam param = new RetailAreaParam(); - param.setPkId(pkId); - List retailAreaParam = iCuMemberSpeRetailService.getCuMemberSpeRetail(param); - if (!DateUtils.isLatestWeek(retailAreaParam.get(0).getSettleDate(), new Date())) { - return AjaxResult.error("只能修改7天以内注水"); - } - if (CollectionUtil.isNotEmpty(retailAreaParam)) { - return AjaxResult.success(retailAreaParam.get(0)); - } else { - return AjaxResult.success(); - } - } - - /** - * 修改注水 - **/ - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.UPDATE) - @PostMapping("/update") - public AjaxResult update(@RequestBody RetailAreaParam retailAreaParam) { - if (StringUtils.isEmpty(retailAreaParam.getMemberCode())) { - return AjaxResult.error("会员信息不存在"); - } - //校验团队总盒数大于小区盒数 -// if (retailAreaParam.getTeamBoxNum() < retailAreaParam.getSmallBoxNum()) { - if (retailAreaParam.getTeamBoxNum().compareTo(retailAreaParam.getSmallBoxNum()) < 0) { - return AjaxResult.error("团队盒数需大于小区盒数"); - } - //校验结算日期是否为空 - if (StringUtils.isNull(retailAreaParam.getSettleDate())) { - return AjaxResult.error("结算日期不能为空"); - } - - if (!DateUtils.isLatestWeek(retailAreaParam.getSettleDate(), new Date())) { - return AjaxResult.error("只能注水7天以内"); - } - CuMemberExt me = iCuMemberService.getMemberByCode(retailAreaParam.getMemberCode()); - if (null == me || me.getCategory() != ECategory.NORMAL.getValue()) { - return AjaxResult.error("会员信息不存在或已撤单"); - } - if (DateUtils.compareDateBefore(retailAreaParam.getSettleDate(), me.getCreationTime())) { - return AjaxResult.error("注水日期不能在会员创建之前"); - } - //查询最新期数 - String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, retailAreaParam.getSettleDate()); - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( - DateUtils.parseDateToStr(datestr)).getPkId(); - retailAreaParam.setPeriod(period); - - //校验是否已经注水 - LambdaUpdateWrapper cmsrQw = new LambdaUpdateWrapper<>(); - cmsrQw.eq(CuMemberSpeRetail::getMemberCode, retailAreaParam.getMemberCode()); - cmsrQw.eq(CuMemberSpeRetail::getPeriod, period); - cmsrQw.ne(CuMemberSpeRetail::getPkId, retailAreaParam.getPkId()); - int check = iCuMemberSpeRetailService.count(cmsrQw); - if (check > 0) { - return AjaxResult.error("会员已注水"); - } - CuMemberSpeRetail cmsr = BeanUtil.copyProperties(retailAreaParam, CuMemberSpeRetail.class); - cmsr.setPeriodDate(DateUtils.getStartTime(retailAreaParam.getSettleDate())); - cmsr.setPkModified(SecurityUtils.getUserId()); - cmsr.setModifiedTime(new Date()); - return AjaxResult.success(iCuMemberSpeRetailService.updateById(cmsr)); - } - - /** - * 删除注水 - **/ - @Log(module = EOperationModule.SPECIAL_BUSINESS, business = EOperationBusiness.INJECT_RETAIL_ACHIEVEMENT, method = EOperationMethod.DELETE) - @DeleteMapping("/{pkId}") - public AjaxResult delete(@PathVariable Long pkId) { - RetailAreaParam param = new RetailAreaParam(); - param.setPkId(pkId); - List retailAreaParam = iCuMemberSpeRetailService.getCuMemberSpeRetail(param); - if (!DateUtils.isLatestWeek(retailAreaParam.get(0).getSettleDate(), new Date())) { - return AjaxResult.error("只能删除7天以内注水"); - } - LambdaUpdateWrapper cmsrQw = new LambdaUpdateWrapper<>(); - cmsrQw.eq(CuMemberSpeRetail::getPkId, pkId); - cmsrQw.set(CuMemberSpeRetail::getDelFlag, EDelFlag.DELETE.getValue()); - cmsrQw.set(CuMemberSpeRetail::getPkModified, SecurityUtils.getUserId()); - cmsrQw.set(CuMemberSpeRetail::getModifiedTime, new Date()); - return AjaxResult.success(iCuMemberSpeRetailService.update(cmsrQw)); - } - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java new file mode 100644 index 00000000..edf551a3 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/dto/BonusStageData.java @@ -0,0 +1,55 @@ +package com.hzs.bonus.bonus.dto; + +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * 阶段数据 + */ +@Builder +@AllArgsConstructor +@NoArgsConstructor +@Data +public class BonusStageData { + + /** + * 阶段奖金 + */ + private BigDecimal bonusIncome; + /** + * 奖金获取会员 + */ + private Long targetPkMember; + /** + * 奖金达标子点位 + */ + private Integer targetChildNode; + /** + * 第几阶段 + */ + private Integer stage; + /** + * 第几个点位 + */ + private Integer stageNum; + + /** + * 三阶段走完,需要添加的待激活点位数 + */ + private Integer pointGift; + + /** + * 二阶段点位 + */ + private CuMemberRetailDetail twoRetailDetail; + /** + * 三阶段点位 + */ + private CuMemberRetailDetail threeRetailDetail; + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java index 3ce3c4d4..689617ce 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusCoachMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import com.hzs.common.domain.member.ext.CuMemberBonusCoachExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-辅导收益明细表 Mapper 接口 */ public interface CuMemberBonusCoachMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List cuMemberBonusCoachList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java index eff30d4b..cc8d9bab 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusExpandMapper.java @@ -2,42 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import com.hzs.common.domain.member.ext.CuMemberBonusExpandExt; -import com.hzs.bonus.bonus.param.BonusParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-拓展收益明细表 Mapper 接口 */ public interface CuMemberBonusExpandMapper extends BaseMapper { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(@Param("cuMemberBonusExpandList") List cuMemberBonusExpandList); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItems(BonusParam bonusParam); - - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusExpandByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusMapper.java index 6b9d96aa..45cdb0f8 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusMapper.java @@ -82,5 +82,4 @@ public interface CuMemberBonusMapper extends BaseMapper { */ void mergeBackRangeBonusIncome(@Param("pkOrder") Long pkOrder, @Param("bonusValue") Integer bonusValue); - void recalculateTeamNewBoxNum(@Param("pkId") Long pkId, @Param("retailsTableName") String retailsTableName); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java index 48caf94f..36f06fc1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushMapper.java @@ -20,13 +20,6 @@ public interface CuMemberBonusPushMapper extends BaseMapper { */ List queryMemberBonusPushByBonusItems(BonusParam bonusParam); - /** - * 根据查询条件查询固定的奖金明细 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); - /** * 删除会员奖金汇总表 * @@ -48,4 +41,11 @@ public interface CuMemberBonusPushMapper extends BaseMapper { */ void insertCuMemberBonusPush(@Param("item") CuMemberBonusPush cuMemberBonusPush); + /** + * 根据查询条件查询固定的奖金明细 + * + * @param bonusParam 查询条件 + */ + List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java new file mode 100644 index 00000000..a3e1dec7 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusStageMapper.java @@ -0,0 +1,36 @@ +package com.hzs.bonus.bonus.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.bonus.bonus.param.BonusParam; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.member.ext.CuMemberBonusDetailExt; +import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 会员奖金-阶段收益明细表 Mapper 接口 + */ +public interface CuMemberBonusStageMapper extends BaseMapper { + + /** + * 删除会员阶段奖金表 + */ + void deleteCuMemberBonusStage(Integer period); + + /** + * 批量插入会员阶段奖 + */ + void batchInsertCuMemberBonusStage(@Param("cuMemberBonusStageList") List cuMemberBonusStageList); + + + + + /** + * 根据查询条件查询固定的奖金明细(阶段收益) + * + * @param bonusParam 查询条件 + */ + List queryMemberBonusStageByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java index 3e559148..753ed3aa 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareBonusMapper.java @@ -2,16 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import org.apache.ibatis.annotations.Param; /** * 会员奖金-分红奖金配置 Mapper 接口 */ public interface CuMemberShareBonusMapper extends BaseMapper { - /* - * 查询会员分享奖金 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(@Param("pkCountry") Integer pkCountry, @Param("settleMonth") String settleMonth); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java index 3df67329..c7169a1a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberShareDetailMapper.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员奖金-分红奖金配置明细 Mapper 接口 */ public interface CuMemberShareDetailMapper extends BaseMapper { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(@Param("cuMemberShareDetailList") List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberSpeRetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberSpeRetailMapper.java deleted file mode 100644 index acd60e1d..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberSpeRetailMapper.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.hzs.bonus.bonus.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.bonus.bonus.param.RetailAreaParam; -import com.hzs.common.domain.member.bonus.CuMemberSpeRetail; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -/** - * 注水盒数 Mapper 接口 - */ -public interface CuMemberSpeRetailMapper extends BaseMapper { - - /** - * 获取注水列表 - **/ - List getCuMemberSpeRetail(RetailAreaParam param); - - int checkCuMemberActivate(@Param("memberCode") String memberCode); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java deleted file mode 100644 index f0c90b34..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareBonusParam.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.List; - -/** - * @description: 分红配置查询参数 - * @author: sui q - * @time: 2023/7/3 15:52 - * @classname: CuMemberShareBonusParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareBonusParam implements Serializable { - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 结算月 - */ - private String settleMonth; - - /** - * 明细 - */ - private List cuMemberShareDetailList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java deleted file mode 100644 index 906d10dc..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/CuMemberShareDetailParam.java +++ /dev/null @@ -1,28 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @description: 分红配置明细 - * @author: sui q - * @time: 2023/7/3 15:53 - * @classname: CuMemberShareDetailParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class CuMemberShareDetailParam implements Serializable { - - /** - * 奖衔 - */ - private Integer pkAwards; - - /** - * 实发金额 - */ - private BigDecimal realShareIncome; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/RetailAreaParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/RetailAreaParam.java deleted file mode 100644 index 5ba6f194..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/RetailAreaParam.java +++ /dev/null @@ -1,69 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -@Data -public class RetailAreaParam implements Serializable { - - private Long pkId; - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 团队总盒数 - */ - @Excel(name = "团队总盒数") - private BigDecimal teamBoxNum = BigDecimal.ZERO; - /** - * 小区盒数 - */ - @Excel(name = "小区盒数") - private BigDecimal smallBoxNum = BigDecimal.ZERO; - - /** - * 结算日期 - */ - @Excel(name = "结算日期") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date settleDate; - - - private Integer systemType; - private Integer pkCountry; - - /** - * 错误提示 - */ - private String msg; - /** - * 结算期间 - */ - private Integer period; - /** - * 结算期间时间 - */ - private Date periodDate; - - /** - * 个人消费盒数 - */ - private BigDecimal consumeBoxNum; - - /** - * 结算开始日期 - */ - private String startDate; - /** - * 结算结束日期 - */ - private String endtDate; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java index 1c436461..79822525 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusSettleService.java @@ -2,8 +2,6 @@ package com.hzs.bonus.bonus.service; import com.hzs.common.domain.sale.ext.SaOrderExt; -import java.util.List; - /** * 奖金结算服务类 */ @@ -13,13 +11,18 @@ public interface IBonusSettleService { * 计算会员奖金 * * @param date 结算日期 - * @param saOrderExtList 订单 */ - void calculateCuMemberBonus(String date, List saOrderExtList); + void calculateCuMemberBonus(String date); /** * 根据订单计算新零售奖金 */ void calculateCuMemberRetailRangeBonusBySaOrder(String orderCode); + /** + * 计算秒结表数据 + * @param orderExt + */ + void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt); + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java index 876debdf..fe73fe67 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusCoachService.java @@ -3,25 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务类 */ public interface ICuMemberBonusCoachService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusCoach(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusCoachList 会员奖金 - */ - void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java index 9143331f..c740dff3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusExpandService.java @@ -3,26 +3,9 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务类 */ public interface ICuMemberBonusExpandService extends IService { - /** - * 删除会员奖金汇总表 - * - * @param period 结算期间 - */ - void deleteCuMemberBonusExpand(Integer period); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - */ - void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusService.java index 4eb22b9a..f686a25d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusService.java @@ -144,11 +144,4 @@ public interface ICuMemberBonusService extends IService { CuMemberBonusExt initCuMemberBonus(); - /** - * 用户激活后会抛出MQ - * 在此需要补偿该用户的当日秒结的团队新增 - * - * @param pkIdList - */ - void recalculateTeamNewBoxNum(List pkIdList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java new file mode 100644 index 00000000..73ed092d --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusStageService.java @@ -0,0 +1,96 @@ +package com.hzs.bonus.bonus.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.bonus.bonus.dto.BonusStageData; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonus; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.sale.ext.SaOrderExt; + +import java.util.*; + +/** + * 会员奖金-阶段收益明细表 服务类 + */ +public interface ICuMemberBonusStageService extends IService { + + /** + * 删除会员阶段奖金表 + */ + void deleteCuMemberBonusStage(Integer period); + + /** + * 批量插入会员阶段奖 + */ + void batchInsertCuMemberBonusStage(List cuMemberBonusStageList, Set memberIdSet); + + /** + * 获取阶段收益信息 + */ + CuMemberBonusStage getCuMemberBonusStage(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, + CuMemberBonus cuMemberBonus, Integer pkBonusItems); + + /** + * 填充会员点位 + */ + String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail); + + /** + * 填充指定点位 + */ + void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理新点位是推荐第一层 + */ + void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); + + /** + * 处理新点位是推荐第二层 + */ + void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); + + /** + * 处理新点位是推荐第三层 + */ + void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList); + + /** + * 处理填充第一层 + */ + boolean firstLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第二层 + */ + boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + /** + * 处理填充第三层 + */ + boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList); + + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java index 3998d935..52bcf070 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareBonusService.java @@ -2,22 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; /** * 会员奖金-分红奖金配置 服务类 */ public interface ICuMemberShareBonusService extends IService { - /* - * 保存会员分红奖金及明细 - **/ - void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam); - - /* - * 查询分红配置的参数 - **/ - CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java index c29b99a1..a01619ea 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberShareDetailService.java @@ -2,19 +2,10 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; - -import java.util.List; -import java.util.Map; /** * 会员奖金-分红奖金配置明细 服务类 */ public interface ICuMemberShareDetailService extends IService { - /* - * 更新分享明细 - **/ - void saveMemberShareBonus(List cuMemberShareDetailList); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberSpeRetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberSpeRetailService.java deleted file mode 100644 index 27e17fd8..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberSpeRetailService.java +++ /dev/null @@ -1,27 +0,0 @@ -package com.hzs.bonus.bonus.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.bonus.bonus.param.RetailAreaParam; -import com.hzs.common.domain.member.bonus.CuMemberSpeRetail; - -import java.util.List; - -/** - * 注水盒数 服务类 - */ -public interface ICuMemberSpeRetailService extends IService { - - /** - * 批量添加注水记录表 - **/ - void batchSpeRetail(List list, Integer pkCountry, Long pkCreator); - - /** - * 获取注水列表 - **/ - List getCuMemberSpeRetail(RetailAreaParam param); - - int checkCuMemberActivate(String memberCode); - - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java index 5f3dae11..c8a4d4a2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusGrantServiceImpl.java @@ -179,9 +179,9 @@ public class BonusGrantServiceImpl implements IBonusGrantService { // 奖金币(首购+复购+云代+海粉+嗨粉+店铺) packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate); // 重销币(商城重消+平台服务费) - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); // 复购券 - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); }); List seqList = iCuMemberTradeService.batchQueryCuMemberTradeSeq(cuMemberTradeList.size()); // 新增流水明细,记录奖金明细的发放状态、消费明细 @@ -236,9 +236,9 @@ public class BonusGrantServiceImpl implements IBonusGrantService { // 奖金币(首购+复购+云代+海粉+嗨粉+店铺) packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.BONUS.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRealIncomeTotal(), currencyDTO.getOutExchangeRate()), settleDate); // 重销币(商城重消+平台服务费) - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPEAT.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getBackPoints(), currencyDTO.getOutExchangeRate()), settleDate); // 复购券 - packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); +// packAccountTrade(cuMemberTradeList, bdAccountValueMap, EAccount.REPURCHASE.getValue(), currentDateTime, cuMemberBonus, ComputeUtil.computeMultiply(cuMemberBonus.getRepurCouponSubtotal(), currencyDTO.getOutExchangeRate()), settleDate); }); List seqList = iCuMemberTradeService.batchQueryCuMemberTradeSeq(cuMemberTradeList.size()); // 新增流水明细,记录奖金明细的发放状态、消费明细 diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java index 47fc5629..d298cd9e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleHandle.java @@ -1,6 +1,6 @@ package com.hzs.bonus.bonus.service.impl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.common.core.constant.BonusFieldConstants; import com.hzs.common.core.constant.MagicNumberConstants; @@ -12,7 +12,6 @@ import com.hzs.common.domain.bonus.BdBonusDeduct; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.config.dto.BonusConfigDTO; import org.springframework.beans.factory.annotation.Autowired; @@ -26,12 +25,6 @@ public abstract class BonusSettleHandle { @Autowired protected ICuMemberTreeService cuMemberTreeService; - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - public ICuMemberSettlePeriodService getCuMemberSettlePeriodService() { - return cuMemberSettlePeriodService; - } /** * 获得奖项主键,验证该国是否有该奖项 @@ -59,67 +52,57 @@ public abstract class BonusSettleHandle { } /** - * 获得 辅导收益的备注 - * - * @param saOrder 订单编号 - * @param cuMemberBonusCoach 培育津贴 - * @param sourceCuMemberRetailExt 提供奖金的人 - * @param targetCuMemberRetailExt 获得奖金的人 + * 获得 直推收益 备注 */ - protected void retailCoachRemark(SaOrder saOrder, CuMemberBonusCoach cuMemberBonusCoach, - CuMemberRetailRangeExt sourceCuMemberRetailExt, CuMemberRetailRangeExt targetCuMemberRetailExt) { - String remark = String.format(BonusMsgConstants.RETAIL_COACH, cuMemberBonusCoach.getCurrentGeneration(), saOrder.getOrderCode(), - sourceCuMemberRetailExt.getMemberCode() + sourceCuMemberRetailExt.getMemberName(), - targetCuMemberRetailExt.getMemberCode() + targetCuMemberRetailExt.getMemberName(), - cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue()); - cuMemberBonusCoach.setRemark(remark); + protected void directIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusPush cuMemberBonusPush, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember) { + String remark = String.format(BonusMsgConstants.DIRECT_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusPush.getCalAchieve(), cuMemberBonusPush.getCalValue()); + cuMemberBonusPush.setRemark(remark); + } + + /** + * 获得 见点收益 备注 + */ + protected void repurDirectIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusPush cuMemberBonusPush, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember, + Integer algebra) { + String remark = String.format(BonusMsgConstants.REPUR_DIRECT_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + algebra + 1, + cuMemberBonusPush.getCalAchieve(), cuMemberBonusPush.getCalValue()); + cuMemberBonusPush.setRemark(remark); + } + + /** + * 获得 阶段收益 备注 + */ + protected void stageIncomeRemark(SaOrderExt saOrderExt, CuMemberBonusStage cuMemberBonusStage, + CuMemberRetailRangeExt sourceMember, CuMemberRetailRangeExt targetMember) { + String remark; + if (null != saOrderExt) { + remark = String.format(BonusMsgConstants.STAGE_INCOME, saOrderExt.getOrderCode(), + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + } else { + remark = String.format(BonusMsgConstants.STAGE_INCOME_OTHER, + sourceMember.getMemberCode() + sourceMember.getMemberName(), + targetMember.getMemberCode() + targetMember.getMemberName(), + cuMemberBonusStage.getChildNode(), cuMemberBonusStage.getStage()); + } + cuMemberBonusStage.setRemark(remark); } /** * 获得 直推级差收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 */ protected void rangeRetailRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, CuMemberRetailRangeExt targetMemberRangeExt) { String remark = String.format(BonusMsgConstants.RANGE, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getGradeName(), targetMemberRangeExt.getGradeName()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * 获得 福利极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeBenefitRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_RANGE, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * 获得 复购极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeMonthRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_MONTH_REPURCHASE_INCOME, saOrderExt.getOrderCode(), sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), cuMemberBonusRange.getCalAchieve(), sourceMemberRangeExt.getAwardsName(), targetMemberRangeExt.getAwardsName()); @@ -128,40 +111,18 @@ public abstract class BonusSettleHandle { /** * 获得 平级收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 */ - protected void oriRetailRangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.ORI_RANGE, saOrderExt.getOrderCode(), + protected void saveLevelRetailRangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, + CuMemberRetailRangeExt targetMemberRangeExt) { + String remark = String.format(BonusMsgConstants.SAME_LEVEL, saOrderExt.getOrderCode(), sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), targetMemberRangeExt.getGradeName()); + cuMemberBonusRange.getCalAchieve(), targetMemberRangeExt.getAwardsName()); cuMemberBonusRange.setRemark(remark); } - /** - * 获得 复购极差收益 备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - */ - protected void rangeRepurchaseRetailRemark(SaOrder saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberRetailRangeExt sourceMemberRangeExt, - CuMemberRetailRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RETAIL_REPURCHASE_INCOME, saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), targetMemberRangeExt.getGradeName()); - cuMemberBonusRange.setRemark(remark); - } - - protected CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, - Long pkMember, Integer incomeStatus, Integer pkCountry, Integer pkRate) { + public CuMemberBonus getCuMemberBonus(Integer period, Map cuMemberBonusMap, + Long pkMember, Integer incomeStatus, Integer pkCountry, Integer pkRate) { if (cuMemberBonusMap.containsKey(pkMember)) { return cuMemberBonusMap.get(pkMember); } else { @@ -172,7 +133,6 @@ public abstract class BonusSettleHandle { .period(period) .pkRate(pkRate) .incomeStatus(incomeStatus) - .directIncome(BigDecimal.ZERO) .expandIncome(BigDecimal.ZERO) .expandNoCapping(BigDecimal.ZERO) .expandCapping(BigDecimal.ZERO) @@ -193,23 +153,25 @@ public abstract class BonusSettleHandle { .repurCoupon(BigDecimal.ZERO) .repurCouponShare(BigDecimal.ZERO) .repurCouponSubtotal(BigDecimal.ZERO) - .globalPoints(BigDecimal.ZERO) .carAwardPoints(BigDecimal.ZERO) .hiFunIncome(BigDecimal.ZERO) .haiFunIncome(BigDecimal.ZERO) - .storeIncome(BigDecimal.ZERO) .makerDirectIncome(BigDecimal.ZERO) .makerShareIncome(BigDecimal.ZERO) .makerRealSubtotal(BigDecimal.ZERO) .realIncomeTotal(BigDecimal.ZERO) - .retailRangeIncome(BigDecimal.ZERO) - .retailSameLevelIncome(BigDecimal.ZERO) .retailAreaIncome(BigDecimal.ZERO) .retailBenefitRangeIncome(BigDecimal.ZERO) .retailMonthRepurchaseIncome(BigDecimal.ZERO) .retailBenefitAvgIncome(BigDecimal.ZERO) .retailBenefitIncome(BigDecimal.ZERO) .retailRealSubtotal(BigDecimal.ZERO) + + .directIncome(BigDecimal.ZERO) + .globalPoints(BigDecimal.ZERO) + .retailRangeIncome(BigDecimal.ZERO) + .retailSameLevelIncome(BigDecimal.ZERO) + .storeIncome(BigDecimal.ZERO) .build(); cuMemberBonus.setPkCreator(MagicNumberConstants.PK_ADMIN); cuMemberBonus.setPkCountry(pkCountry); @@ -266,8 +228,32 @@ public abstract class BonusSettleHandle { ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_TAX, incomeTax); ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.REAL_INCOME, realIncome); // 收益占比 - ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); + if (null != orderAmount && null != exchangeRate) { + ReflectUtils.invokeSetter(cuMemberDetail, BonusFieldConstants.INCOME_RATIO, ComputeUtil.computeDivide(realIncome, ComputeUtil.computeDivide(orderAmount, exchangeRate))); + } return bdBonusDeduct; } + + /** + * 处理订单累计业绩、累计金额 + */ + public void assortSaOrder(Map memberAchieveHashMap, List orderExtList) { + for (SaOrderExt saOrderExt : orderExtList) { + MemberAchieveParam cuMemberAchieve; + if (memberAchieveHashMap.containsKey(saOrderExt.getPkMember())) { + cuMemberAchieve = memberAchieveHashMap.get(saOrderExt.getPkMember()); + } else { + cuMemberAchieve = MemberAchieveParam.builder() + .pkMember(saOrderExt.getPkMember()) + .newPv(BigDecimal.ZERO) + .newAmount(BigDecimal.ZERO) + .build(); + memberAchieveHashMap.put(saOrderExt.getPkMember(), cuMemberAchieve); + } + cuMemberAchieve.setNewPv(ComputeUtil.computeAdd(cuMemberAchieve.getNewPv(), saOrderExt.getOrderAchieve())); + cuMemberAchieve.setNewAmount(ComputeUtil.computeAdd(cuMemberAchieve.getNewAmount(), saOrderExt.getOrderAmount())); + } + } + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java index 3a136ec0..9d911b55 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleRangeHandle.java @@ -1,38 +1,32 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; +import com.hzs.bonus.achieve.param.MemberAchieveParam; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; -import com.hzs.bonus.base.service.IBdVertexBonusService; import com.hzs.bonus.base.service.ICuMemberService; +import com.hzs.bonus.bonus.dto.BonusStageData; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; +import com.hzs.bonus.constant.BonusConstants; import com.hzs.bonus.detail.service.ICuMemberAwardsService; -import com.hzs.bonus.detail.service.ICuMemberGradeService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.constant.msg.BonusMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.*; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.ext.SaOrderWaresExt; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.domain.sale.wares.ext.WaresRangeTmp; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; -import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -49,25 +43,22 @@ import java.util.stream.Collectors; @Component public class BonusSettleRangeHandle extends BonusSettleHandle { + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; @Autowired private ICuMemberRetailRangeService iCuMemberRetailRangeService; @Autowired - private ICuMemberAwardsService iCuMemberAwardsService; + private ICuMemberBonusStageService iCuMemberBonusStageService; @Autowired - private ICuMemberGradeService iCuMemberGradeService; + private ICuMemberAwardsService iCuMemberAwardsService; @Autowired private ICuMemberService iCuMemberService; @Autowired private IBonusOrderService iBonusOrderService; - @Autowired - private IBdVertexBonusService iBdVertexBonusService; - - @DubboReference - ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi; /** * 秒结: - * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) + * 实时计算秒结数据(业绩、奖衔、日奖) */ List calculateCuMemberRetailRangeBonusBySecond(String settleDate, SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod, @@ -76,9 +67,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + beforePeriod; // 更新极差秒接表,用昨天的结算表(血缘伞上) iCuMemberRetailRangeService.mergeMemberSecondRetailRangeByRange(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); - // 处理会员等级(查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级) - // TODO new 秒结只影响上面,更新等级应该只更新血缘上就可以,不需要全网更新 -- 是否需要修改??? - iCuMemberGradeService.updateCuMemberGradeSecond(secondRangeTableName, currentPeriod); // 按照血缘,查询该会员血缘伞上(昨天日结表累计值 + 今天秒结表新増值) List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); @@ -86,19 +74,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 团队升级等级map(key:等级值,value:等级对象) - Map retailTeamGradeMap = new TreeMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - if (bdGrade.getBoxTotal().compareTo(BigDecimal.ZERO) > 0) { - retailTeamGradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -110,94 +85,31 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(saOrderExt.getPayTime()); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); - // 计算自消费奖衔 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - // 先算等级 注册、升级计算等级 - // 订单指定产品盒数 - BigDecimal boxNum = saOrderExt.getBoxNum(); -// BigDecimal boxNum = BigDecimal.ZERO; -// for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { -// if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode())) { -// boxNum = boxNum.add(saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity()))); -// } -// } -// saOrderExt.setBoxNum(boxNum); // 订单业绩 BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - // 注册、升级、复购、重消,盒数、业绩算个人累计数据(盒数、业绩) - sourceMemberRangeExt.setNewBoxNum(sourceMemberRangeExt.getNewBoxNum().add(boxNum)); - sourceMemberRangeExt.setConsumeBoxNum(sourceMemberRangeExt.getConsumeBoxNum().add(boxNum)); - sourceMemberRangeExt.setMonthBoxNum(sourceMemberRangeExt.getMonthBoxNum().add(boxNum)); + // 注册、升级、复购、重消、业绩算个人累计数据(业绩) sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().add(boxNum)); - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); + // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().add(orderAchieve)); - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); // 会员奖衔升级记录 List cuMemberAwardsList = new ArrayList<>(); - // 计算自己等级、奖衔等 - calculateGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, - cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、盒数,计算等级、奖衔 - cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, - secondRangeTableName, boxNum, cuMemberGradeList, activateMap)); // 奖金处理 List cuMemberBonusRangeList = new ArrayList<>(); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() - ) { - // 注册、升级订单,计算奖金: 直推级差收益 + 平级收益 - for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { - if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode()) - && EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { - // 指定盒数商品 - // 计算直推级差收益 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, currentPeriod, saOrderItems, saOrderExt)); - } - } + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { + // 注册,计算奖金: 直推级差收益 + 平级收益 } - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailSecondRangeByCounty(rangeTableName, secondRangeTableName, saOrderExt.getRecCounty()); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, currentPeriod, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } - - // TODO 2025.07.04 部分体系单独奖项处理 if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = iBonusOrderService.getWaresRange(Collections.singletonList(saOrderExt)); // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, currentPeriod, cuMemberBonusMap)); } - // 回退会员等级 - iCuMemberGradeService.updateCuMemberGrade(secondRangeTableName, saOrderExt.getPkId()); - - if (cuMemberGradeList.size() > 0) { - // 插入会员等级升级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表会员等级 - iCuMemberService.updateCuMemberGradeByList(cuMemberGradeList, currentPeriod); - } if (cuMemberAwardsList.size() > 0) { // 插入会员奖衔升级记录 iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); @@ -213,7 +125,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 撤单秒结:实时计算撤单数据(业绩、盒数、等级、奖衔、日奖) + * 撤单秒结:实时计算撤单数据(业绩、奖衔、日奖) */ void calculateCuMemberBackRetailIncome(SaOrderExt saOrderExt, BonusConfigDTO bonusConfigDTO, String secondRangeTableName, int beforePeriod, int currentPeriod) { @@ -225,10 +137,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (isSecond) { // 当天撤单 - // 实时网体查询血缘伞上会员,更新秒结表等级、奖衔 + // 实时网体查询血缘伞上会员,更新秒结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(secondRangeTableName, saOrderExt.getPkMember(), EYesNo.YES.getIntValue()); // 恢复秒结表奖衔 - iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod, EYesNo.YES.getIntValue()); + iCuMemberAwardsService.mergeCuMemberBackAwards(secondRangeTableName, saOrderExt.getPkMember(), currentPeriod); // 查询 昨天日结 + 今天秒结 血缘伞上+直推 memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeParent(rangeTableName, secondRangeTableName, saOrderExt.getPkMember()); } else { @@ -236,10 +148,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + currentPeriod; List retailOrderList = new ArrayList<>(); retailOrderList.add(saOrderExt); - // 实时网体查询血缘上会员,更新订单支付日结表等级、奖衔 + // 实时网体查询血缘上会员,更新订单支付日结表奖衔 iCuMemberRetailRangeService.mergeMemberRetailGradeByMember(rangeTableName, saOrderExt.getPkMember(), EYesNo.NO.getIntValue()); // 恢复日结表奖衔 - iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod, EYesNo.NO.getIntValue()); + iCuMemberAwardsService.mergeCuMemberBackAwards(rangeTableName, saOrderExt.getPkMember(), beforePeriod); // 查询 订单下单日结 血缘上会员结算数据 memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); } @@ -247,20 +159,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 团队升级等级map(key:等级值,value:等级对象) - Map retailTeamGradeMap = new TreeMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retailGradeList = bonusConfigDTO.getRetaiGradeList(); - // 等级 - for (BdGrade bdGrade : retailGradeList) { - if (bdGrade.getBoxTotal().compareTo(BigDecimal.ZERO) > 0) { - retailTeamGradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } - // 奖衔map(key:奖衔值,value:奖衔对象) Map retailAwardsMap = new HashMap<>(); List awardsList = bonusConfigDTO.getAwardsList(); @@ -274,92 +172,31 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { // 计算自消费奖衔 CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - // 先算等级 注册、升级计算等级 - BigDecimal boxNum = saOrderExt.getBoxNum(); -// BigDecimal boxNum = BigDecimal.ZERO; -// for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { -// if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode())) { -// boxNum = boxNum.add(saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity()))); -// } -// } -// saOrderExt.setBoxNum(boxNum); // 订单业绩 BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - // 复购、重消,盒数、业绩算个人累计数据(盒数、业绩) - sourceMemberRangeExt.setNewBoxNum(sourceMemberRangeExt.getNewBoxNum().subtract(boxNum)); - sourceMemberRangeExt.setConsumeBoxNum(sourceMemberRangeExt.getConsumeBoxNum().subtract(boxNum)); - sourceMemberRangeExt.setMonthBoxNum(sourceMemberRangeExt.getMonthBoxNum().subtract(boxNum)); + // 复购、重消,业绩算个人累计数据(业绩) sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); sourceMemberRangeExt.setConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getConsumePv(), orderAchieve)); sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeSubtract(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); if (isSecond) { // 当天 - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - sourceMemberRangeExt.setAllNewBoxNum(sourceMemberRangeExt.getAllNewBoxNum().subtract(boxNum)); - sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); + // 累计业绩,不管激活不激活都处理,兼容不激活判断显示有问题 +// sourceMemberRangeExt.setAllNewConsumePv(sourceMemberRangeExt.getAllNewConsumePv().subtract(orderAchieve)); } - // 会员等级map - Map cuMemberGradeMap = new HashMap<>(); // 会员奖衔map Map cuMemberAwardsMap = new HashMap<>(); // 会员分红奖衔map Map cuMemberShareAwardsMap = new HashMap<>(); - // 计算自己等级、奖衔等 - calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); - // 计算团队业绩、盒数,计算等级、奖衔 - List cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, - secondRangeTableName, boxNum, cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); + // 计算自己奖衔等 + calculateBackGrade(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, + cuMemberAwardsMap, cuMemberShareAwardsMap, sourceMemberRangeExt); + // 计算团队业绩,计算奖衔 + List cuMemberRetailRangeExtList = calculateRetailBackRangeGradeAwards(currentPeriod, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, + secondRangeTableName, cuMemberAwardsMap, cuMemberShareAwardsMap, isSecond); cuMemberRetailRangeExtList.add(sourceMemberRangeExt); - // 查询期间的等级(来源 cu_member_grade) - List memberGradeList = iCuMemberGradeService.queryCuMemberGrade(cuMemberRetailRangeExtList, currentPeriod); - // 查询最大的手动等级(来源 cu_member_grade) - List cuMemberGradeList1 = iCuMemberGradeService.queryCuMemberGradeByList(currentPeriod, memberRetailRangeExtList); - if (cuMemberGradeList1.size() > 0) { - Map memberGradeMap = new HashMap<>(); - for (CuMemberGrade cuMemberGrade : cuMemberGradeList1) { - cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); - memberGradeMap.put(cuMemberGrade.getPkMember(), cuMemberGrade); - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (memberGradeMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - CuMemberGrade cuMemberGrade = memberGradeMap.get(cuMemberRetailRangeExt.getPkMember()); - if (cuMemberRetailRangeExt.getPkGrade() < cuMemberGrade.getNewLevel()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getNewLevel()); - BdGrade bdGrade = gradeIdMap.get(cuMemberGrade.getNewLevel()); - cuMemberRetailRangeExt.setGradeValue(bdGrade.getGradeValue()); - } - BdGrade bdGrade = gradeIdMap.get(cuMemberRetailRangeExt.getPkGrade()); - if (bdGrade != null && bdGrade.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) { - // 如果是合伙人,奖衔肯定得有,不能置为无 - cuMemberRetailRangeExt.setPkAwards(11); - } - } - } - } - if (memberGradeList.size() > 0) { - List cuMemberGradeList = new ArrayList<>(); - for (CuMemberGrade cuMemberGrade : memberGradeList) { - String key = cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(); - if (!cuMemberGradeMap.containsKey(key)) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberGrade.getPkMember()); - if (cuMemberGrade.getOldLevel() < cuMemberRetailRangeExt.getPkGrade()) { - cuMemberRetailRangeExt.setPkGrade(cuMemberGrade.getOldLevel()); - } - cuMemberGrade.setNewLevel(cuMemberGrade.getOldLevel()); - cuMemberGradeList.add(cuMemberGrade); - } - } - if (cuMemberGradeList.size() > 0) { - // 删除等级(cu_member_grade) - iCuMemberGradeService.deleteCuMemberGrade(cuMemberGradeList, currentPeriod); - // 批量更新会员等级(更新 cu_member) - iCuMemberService.updateCuMemberMinGradeByList(cuMemberGradeList, currentPeriod); - } - } // 当期的所有奖衔升级记录 List memberAwardsList = iCuMemberAwardsService.queryCuMemberAwards(cuMemberRetailRangeExtList, currentPeriod); if (memberAwardsList.size() > 0) { @@ -377,11 +214,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { if (cuMemberAwards.getOldLevel() < cuMemberRetailRangeExt.getPkAwards()) { cuMemberRetailRangeExt.setPkAwards(cuMemberAwards.getOldLevel()); } - if (cuMemberRetailRangeExt.getGradeValue() == EGrade.S_VIP.getValue() && cuMemberRetailRangeExt.getPkAwards() < 11) { - // 如果是合伙人,奖衔肯定得有,不能置为无 - cuMemberRetailRangeExt.setPkAwards(11); - continue; - } cuMemberAwards.setNewLevel(cuMemberAwards.getOldLevel()); cuMemberAwardsList.add(cuMemberAwards); } @@ -401,7 +233,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - // 处理等级、奖衔 + // 处理奖衔 if (cuMemberAwardsList.size() > 0) { // 删除会员奖衔记录 iCuMemberAwardsService.deleteCuMemberAwards(cuMemberAwardsList, currentPeriod); @@ -419,400 +251,186 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } } - private CuMemberGrade getCuMemberGrade(int currentPeriod, CuMemberRetailRangeExt sourceMemberRangeExt, BdGrade bdGrade) { - CuMemberGrade cuMemberGrade = CuMemberGrade.builder() - .pkMember(sourceMemberRangeExt.getPkMember()) - .period(currentPeriod) - .oldLevel(sourceMemberRangeExt.getPkGrade()) - .newLevel(bdGrade.getPkId()) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - .build(); - cuMemberGrade.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberGrade.setPkCountry(sourceMemberRangeExt.getPkSettleCountry()); - return cuMemberGrade; - } - /** * 日结: - * 计算新零售团队的奖金,极差、平级、福利、福利分红、区域 + * 计算奖金,直推、阶段、级差、平级收益 */ - void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, BonusRecordDetailVO bonusRecordDetailVO, - Integer period, Integer yesterdayPeriod, Boolean isSameMonth, Map> vertexBonusMap) { + void calculateRetailBonusByDay(String settleDate, Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, + BonusRecordDetailVO bonusRecordDetailVO, Integer period, Integer yesterdayPeriod, Boolean isSameMonth) { // 结算期间日期 Date settleStartDate = DateUtils.parseStringToDate(settleDate); // 结算期间日期后一天 Date settleEndDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleStartDate); - // 所有有效订单列表 - List retailOrderList = new ArrayList<>(); - // 复购订单列表 - List repurchaseOrderList = new ArrayList<>(); - // 新零售订单 - List orderList = iBonusOrderService.queryRetailSaOrderByDay(settleStartDate, settleEndDate, null); - for (SaOrderExt saOrderExt : orderList) { - if (saOrderExt.getDelFlag() == EYesNo.YES.getIntValue()) { - retailOrderList.add(saOrderExt); - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单 - repurchaseOrderList.add(saOrderExt); - } - } - } + // 订单(精品、甄选、商城、五折) + List orderList = iBonusOrderService.listRetailSaOrder(settleStartDate, settleEndDate, null, + Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue(), EOrderType.DISCOUNT_ORDER.getValue())); // 更新当月会员, 将昨天业绩更到到今天,更新当月会员考核结果,有消费的考核通过 // 结算期间表 String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; // 结算期间前一天表 String yesterdayRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + yesterdayPeriod; + // 结算明细表 + String rangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + period; + // 结算明细前一天表 + String yesterdayRangeDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + yesterdayPeriod; - // 回退奖衔,将奖衔回退到结算前状态 - iCuMemberAwardsService.calculateCuMemberRetailRangeAwardsInit(settleDate, period, rangeTableName); - // 更新网体 - iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(settleEndDate, rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算网体数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeByYesterday(rangeTableName, yesterdayRangeTableName, isSameMonth); + // 初始化结算明细数据(昨天数据更新到今天数据) + iCuMemberRetailRangeService.mergeMemberRetailRangeDetailByYesterday(rangeDetailTableName, yesterdayRangeDetailTableName); - // 回退历史注水 - iCuMemberRetailRangeService.mergeCuMemberRetailBackBoxBySpecial(rangeTableName, yesterdayRangeTableName, period); - // 更新注水 - iCuMemberRetailRangeService.mergeCuMemberRetailRangeBySpecial(rangeTableName, period); + // 升阶段点位列表 + List stageList = new ArrayList<>(); - // 当期的手动激活的记录列表 - Map activateMap = this.getActivateMap(settleStartDate); + if (orderList.size() > 0) { + // 奖衔 + Map awardsMap = new HashMap<>(); + List awardsList = bonusConfigDTO.getAwardsList(); + awardsList.forEach(bdAwards -> awardsMap.put(bdAwards.getAwardsValue(), bdAwards)); - if (retailOrderList.size() > 0) { - // 复购订单级差数据map(key:订单ID,value:订单明细+级差) - Map> rangeOrderMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(repurchaseOrderList)) { - rangeOrderMap = iBonusOrderService.getWaresRange(repurchaseOrderList); - } + // 直推收益、见点收益 + List cuMemberBonusPushList = new ArrayList<>(); + // 领导奖收益、平级奖收益 + List cuMemberBonusRangeList = new ArrayList<>(); + // 阶段收益 + List cuMemberBonusStageList = new ArrayList<>(); - Map memberLevelMap = new HashMap<>(); - List memberLevelList = iCuMemberGradeService.calculateCuMemberRetailGradeInit(period, settleStartDate, settleEndDate, rangeTableName); - memberLevelList.forEach(cuMemberLevel -> memberLevelMap.put(cuMemberLevel.getPkOrder(), cuMemberLevel)); + // 更新血缘上个人、团队累计业绩,用于处理奖衔 + Map memberAchieveHashMap = new HashMap<>(); + // 订单累计业绩、累计金额 + assortSaOrder(memberAchieveHashMap, orderList); + // 更新血缘上业绩、金额 + iCuMemberRetailRangeService.updateMemberParentDate(rangeTableName, memberAchieveHashMap); + // 处理奖衔 + iCuMemberAwardsService.calculateCuMemberAwards(rangeTableName, awardsList, settleStartDate, period); // 按照血缘,查询该会员所有伞上会员 - List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, retailOrderList); - + List memberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeParent(rangeTableName, orderList); // 会员结算map(key:会员ID,value:结算扩展) Map memberRangeExtMap = new HashMap<>(); - // 团队升级等级map(key:等级值,value:等级对象) - Map retailTeamGradeMap = new TreeMap<>(); - // 等级map(key:等级值,value:等级对象) - Map gradeMap = new HashMap<>(); - // 等级map(key:等级ID,value:等级对象) - Map gradeIdMap = new HashMap<>(); - // 等级列表 - List retaiGradeList = bonusConfigDTO.getRetaiGradeList(); - for (BdGrade bdGrade : retaiGradeList) { - if (bdGrade.getBoxTotal().compareTo(BigDecimal.ZERO) > 0) { - retailTeamGradeMap.put(bdGrade.getGradeValue(), bdGrade); - } - gradeMap.put(bdGrade.getGradeValue(), bdGrade); - gradeIdMap.put(bdGrade.getPkId(), bdGrade); - } - - // 奖衔 - Map retailAwardsMap = new HashMap<>(); - List awardsList = bonusConfigDTO.getAwardsList(); - awardsList.forEach(bdAwards -> retailAwardsMap.put(bdAwards.getAwardsValue(), bdAwards)); - // 会员转map for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { if (!memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt); } } + // 查询血缘会员明细数据(一阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.ONE, EBonusStageStatus.NO, null); - // 区域处理 - List countyRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByCounty(rangeTableName); - // 区域会员map(key:区域分组ID + 区ID ,value: 区域会员结算数据) - Map countyRangeExtMap = new HashMap<>(); - countyRangeExtList.forEach(cuMemberRetailRangeExt -> - countyRangeExtMap.put(cuMemberRetailRangeExt.getRegionVertexPkId() + "_" + cuMemberRetailRangeExt.getRegionAddress(), cuMemberRetailRangeExt)); - - // 会员等级升级记录 - List cuMemberGradeList = new ArrayList<>(); - // 会员奖衔升级记录 - List cuMemberAwardsList = new ArrayList<>(); - // 平级收益 + 复购级差收益 - List cuMemberBonusRangeList = new ArrayList<>(); - // 会员奖金明细 - List cuMemberBonusDetailList = new ArrayList<>(); - - // 上面更新网体,按会员表是否激活进行处理 - for (SaOrderExt saOrderExt : retailOrderList) { - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || - EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 注册、升级才能算激活状态 - sourceMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); + for (SaOrderExt saOrderExt : orderList) { + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(saOrderExt.getPkMember()); + if (null == sourceMember) { + log.warn("订单会员不存在, pkMember: {}", saOrderExt.getPkMember()); + continue; } - } - - for (SaOrderExt saOrderExt : retailOrderList) { - // 计算自消费奖衔 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - - // 订单指定产品盒数(计算等级使用) - BigDecimal boxNum = saOrderExt.getBoxNum(); -// BigDecimal boxNum = BigDecimal.ZERO; -// for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { -// if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode())) { -// boxNum = boxNum.add(saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity()))); -// } -// } - - // 个人累计消费pv BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - // 复购、重消,盒数、业绩算个人累计数据(盒数、业绩) - sourceMemberRangeExt.setNewBoxNum(sourceMemberRangeExt.getNewBoxNum().add(boxNum)); - sourceMemberRangeExt.setConsumeBoxNum(sourceMemberRangeExt.getConsumeBoxNum().add(boxNum)); - sourceMemberRangeExt.setMonthBoxNum(sourceMemberRangeExt.getMonthBoxNum().add(boxNum)); - sourceMemberRangeExt.setNewConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getNewConsumePv(), orderAchieve)); - sourceMemberRangeExt.setConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getConsumePv(), orderAchieve)); - sourceMemberRangeExt.setMonthConsumePv(ComputeUtil.computeAdd(sourceMemberRangeExt.getMonthConsumePv(), orderAchieve)); + BigDecimal orderAmount = saOrderExt.getOrderAmount(); - // 计算自己等级、奖衔等 - calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, - null, cuMemberGradeList, cuMemberAwardsList, sourceMemberRangeExt, activateMap); - // 计算团队业绩、盒数,计算等级、奖衔 - cuMemberAwardsList.addAll(calculateRetailRangeGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, - retailTeamGradeMap, retailAwardsMap, null, boxNum, cuMemberGradeList, activateMap)); + // 自己消费的相关金额、业绩处理 + sourceMember.setNewConsumePv(orderAchieve); + sourceMember.setMonthConsumePv(sourceMember.getMonthConsumePv().add(orderAchieve)); + sourceMember.setNewConsumeAmount(orderAmount); + sourceMember.setMonthConsumeAmount(sourceMember.getMonthConsumeAmount().add(orderAmount)); +// // 自己计算奖衔,目前业绩都只往下传,所以此处暂时不需要处理订单会员的奖衔 +// this.calculateAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, cuMemberAwardsList, sourceMember); + // 累计团队业绩、金额 + this.calculateParentDate(memberRangeExtMap, sourceMember, saOrderExt); - // 计算奖金 直推级差 + 平级收益 - if ((EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) - && boxNum.compareTo(BigDecimal.ZERO) > 0 - ) { - // 注册或升级订单并且存在盒数产品,才有 直推级差收益 和 平级收益 - for (SaOrderWaresExt saOrderItems : saOrderExt.getOrderWaresExtList()) { - if (RetailConstants.ALL_BOX_WARES_LIST.contains(saOrderItems.getWaresCode()) - && EDelFlag.UN_DELETE.getValue() == saOrderItems.getDelFlag()) { - // 盒数商品 计算 直推级差 + 平级收益 - cuMemberBonusRangeList.addAll(calculateRetailRangeBonus(memberRangeExtMap, cuMemberBonusMap, gradeMap, bonusConfigDTO, period, saOrderItems, saOrderExt)); - } - } + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区、甄选专区 + sourceMember.setRegConsumeNewPv(sourceMember.getRegConsumeNewPv().add(orderAchieve)); + sourceMember.setRegConsumeNewAmount(sourceMember.getRegConsumeNewAmount().add(orderAmount)); - // 订单存在升级记录 - if (memberLevelMap.containsKey(saOrderExt.getPkId())) { - CuMemberLevel cuMemberLevel = memberLevelMap.get(saOrderExt.getPkId()); - if (gradeIdMap.containsKey(cuMemberLevel.getNewLevel())) { - BdGrade bdGrade = gradeIdMap.get(cuMemberLevel.getNewLevel()); - if (bdGrade.getGradeValue() > sourceMemberRangeExt.getGradeValue()) { - sourceMemberRangeExt.setPkGrade(bdGrade.getPkId()); - sourceMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - sourceMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } - } - } - } + // 一阶段收益 -- 来源订单金额 + stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, sourceMember, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName)); + // 直推收益 -- 来源订单金额,直推拿金额的10% + this.calculateDirectIncome(cuMemberBonusPushList, memberRangeExtMap, sourceMember, saOrderExt, + bonusConfigDTO, period, cuMemberBonusMap); + // 领导级差收益、平级收益 -- 来源PV + this.calculateRetailRangeBonus(cuMemberBonusRangeList, memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, + awardsMap, saOrderExt, sourceMember); + } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + // 商城专区 + sourceMember.setRepConsumeNewPv(sourceMember.getRepConsumeNewPv().add(orderAchieve)); + sourceMember.setRepConsumeNewAmount(sourceMember.getRepConsumeNewAmount().add(orderAmount)); - // 计算区域奖 - CuMemberBonusDetail cuMemberBonusDetail = calculateRetailAreaBonus(countyRangeExtMap, bonusConfigDTO, period, memberRangeExtMap, cuMemberBonusMap, saOrderExt); - if (cuMemberBonusDetail != null) { - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } + // 一阶段收益 -- 来源订单累计业绩 + stageList.addAll(this.calculateStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, sourceMember, saOrderExt, settleStartDate, rangeTableName, rangeDetailTableName)); + // 见点收益 -- 来源订单业绩,血缘上20代,每代拿业绩的10% + this.calculateRepurDirectIncome(cuMemberBonusPushList, memberRangeExtMap, sourceMember, saOrderExt, + bonusConfigDTO, period, cuMemberBonusMap); + // 领导级差收益、平级收益 -- 来源PV + this.calculateRetailRangeBonus(cuMemberBonusRangeList, memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, + awardsMap, saOrderExt, sourceMember); + } else if (EOrderType.DISCOUNT_ORDER.getValue() == saOrderExt.getOrderType()) { + // 五折专区 + sourceMember.setRepConsumeNewPv(sourceMember.getRepConsumeNewPv().add(orderAchieve)); + sourceMember.setRepConsumeNewAmount(sourceMember.getRepConsumeNewAmount().add(orderAmount)); - // TODO 2025.07.04 部分体系单独奖项处理 - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单 - cuMemberBonusRangeList.addAll(this.calculateRepurchaseRangeBonus(saOrderExt, memberRangeExtMap, vertexBonusMap, rangeOrderMap, - bonusConfigDTO, period, cuMemberBonusMap)); + // 领导级差收益 -- 来源PV + this.calculateRetailRangeBonus(cuMemberBonusRangeList, memberRangeExtMap, cuMemberBonusMap, bonusConfigDTO, period, + awardsMap, saOrderExt, sourceMember); } } + // 处理升二阶段点位 + if (CollectionUtil.isNotEmpty(stageList)) { + List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); + // 查询血缘会员明细数据(二阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.TWO, EBonusStageStatus.NO, findMemberList); + // 二阶段收益 + stageList = this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.TWO, stageList); + } + + // 处理升三阶段点位 + if (CollectionUtil.isNotEmpty(stageList)) { + List stageMemberList = stageList.stream().map(CuMemberRetailDetail::getPkMember).collect(Collectors.toList()); + // 查询升阶段点位血缘上所有会员ID + List findMemberList = this.findParent(memberRangeExtMap, stageMemberList); + // 查询血缘会员明细数据(三阶段) + iCuMemberRetailDetailService.listMemberRetailDetail(rangeDetailTableName, memberRangeExtMap, EBonusStage.THREE, EBonusStageStatus.NO, findMemberList); + // 三阶段收益 + this.calculateStageIncomeTwoThree(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, settleStartDate, rangeTableName, rangeDetailTableName, EBonusStage.THREE, stageList); + } + + if (cuMemberBonusPushList.size() > 0) { + bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); + } if (cuMemberBonusRangeList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusRangeList() == null) { - bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); - } else { - bonusRecordDetailVO.getCuMemberBonusRangeList().addAll(cuMemberBonusRangeList); - } + bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); } - if (cuMemberBonusDetailList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusDetailList() == null) { - bonusRecordDetailVO.setCuMemberBonusDetailList(cuMemberBonusDetailList); - } else { - bonusRecordDetailVO.getCuMemberBonusDetailList().addAll(cuMemberBonusDetailList); - } + if (cuMemberBonusStageList.size() > 0) { + bonusRecordDetailVO.setCuMemberBonusStageList(cuMemberBonusStageList); } - if (cuMemberAwardsList.size() > 0) { - // 批量插入会员奖衔记录 - iCuMemberAwardsService.saveBatchCuMemberAwards(cuMemberAwardsList); - // 更新会员表奖衔数据 - iCuMemberService.updateCuMemberRetailRangeByPeriod(period); - } - if (cuMemberGradeList.size() > 0) { - // 批量插入会员等级记录 - iCuMemberGradeService.insertCuMemberGrade(cuMemberGradeList); - // 更新会员表(cu_member)等级数据(来源 cu_member_grade) - iCuMemberService.updateCuMemberGradeByPeriod(period); - // 更新会员表(cu_member)等级数据(来源 cu_member_level) - iCuMemberService.updateCuMemberLevel(settleStartDate, settleEndDate); - } - // 更新网体 + // 更新日结数据 iCuMemberRetailRangeService.updateCuMemberRetailRange(rangeTableName, memberRangeExtMap); + // 更新日结明细数据 + iCuMemberRetailRangeService.updateCuMemberRetailDetail(rangeDetailTableName, memberRangeExtMap); } } /** - * 计算团队等级、奖衔 -- 秒结、日结 - */ - public List calculateRetailRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailTeamGradeMap, Map retailAwardsMap, String secondRangeTableName, - BigDecimal boxNum, List cuMemberGradeList, Map activateMap) { - // 会员奖衔升级列表 - List cuMemberAwardsList = new ArrayList<>(); - // 订单会员 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - // 订单会员的推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(sourceMemberRangeExt.getPkParent()); - - BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); - BigDecimal orderAmount = saOrderExt.getOrderAmount(); - while (null != targetMemberRangeExt) { - // 手动激活时间 - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().add(boxNum)); - targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().add(boxNum)); - targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().add(boxNum)); - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().add(orderAchieve)); - targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().add(orderAchieve)); - targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().add(orderAchieve)); - - // 激活的账号才能累计业绩和盒数(有注册、升级订单) - if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) { - // 累计盒数 - targetMemberRangeExt.setTeamNewBoxNum(targetMemberRangeExt.getTeamNewBoxNum().add(boxNum)); - targetMemberRangeExt.setTeamBoxNum(targetMemberRangeExt.getTeamBoxNum().add(boxNum)); - targetMemberRangeExt.setTeamMonthBoxNum(targetMemberRangeExt.getTeamMonthBoxNum().add(boxNum)); - // 累计业绩 - targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); - targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); - targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 累计金额 - targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); - targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); - targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 计算等级 - calculateGradeAwards(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, - secondRangeTableName, cuMemberGradeList, cuMemberAwardsList, targetMemberRangeExt, activateMap); - } - targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); - } - return cuMemberAwardsList; - } - - /** - * 计算等级、奖衔 -- 日结、秒结 + * 计算奖衔 -- 日结、秒结 */ private void calculateGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, - SaOrderExt saOrderExt, Map retailTeamGradeMap, Map retailAwardsMap, - String secondRangeTableName, List cuMemberGradeList, List cuMemberAwardsList, - CuMemberRetailRangeExt targetMemberRangeExt, Map activateMap) { - if (EYesNo.NO.getIntValue() == targetMemberRangeExt.getEnableStatus() - && activateMap.containsKey(targetMemberRangeExt.getPkMember())) { - // 存在手动激活 - targetMemberRangeExt.setEnableStatus(EYesNo.YES.getIntValue()); - } - - // 遍历团队等级map(V4,V5) - for (Integer gradeValue : retailTeamGradeMap.keySet()) { - BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); - // 等级总盒数 - BigDecimal boxTotal = bdGrade.getBoxTotal(); - // 等级小市场盒数 - BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - - if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { - // TODO 需要根据配置写死的体系,进行单独处理 - // V4: 总 500,小 100 - // V5: 总 2000,小 400 - if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; - boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; - } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; - boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; - } - } - - // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级 - if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue() - && boxTotal.compareTo( - targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()) - ) <= 0 - ) { - // 验证小区,计算小区累计盒数 查询伞下会员 - List cuMemberRangeExtList; - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - - // new 新逻辑确认:注水 2 个虚拟区,自己消费 1 个虚拟区,伞下直推,所有的最大 - // 大区盒数(默认为自己累计消费盒数) - BigDecimal bigBoxNum = targetMemberRangeExt.getConsumeBoxNum(); - if (targetMemberRangeExt.getBigBoxNum().compareTo(bigBoxNum) > 0) { - // 注水大区如果大则使用注水盒数为大区 - bigBoxNum = targetMemberRangeExt.getBigBoxNum(); - } - if (targetMemberRangeExt.getSmallBoxNum().compareTo(bigBoxNum) > 0) { - // 注水小区如果大则使用注水盒数为大区 - bigBoxNum = targetMemberRangeExt.getSmallBoxNum(); - } - // 秒结补全直推数据,此处秒结和日结可以使用同一逻辑 - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 伞下团队累计盒数 + 自己消费盒数 - BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); - if (areaBoxNum.compareTo(bigBoxNum) > 0) { - // 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区 - bigBoxNum = areaBoxNum; - } - } - - // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) - BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { - // 小区盒数 大于等于 升级小区盒数 - CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); - cuMemberGradeList.add(cuMemberGrade); - targetMemberRangeExt.setPkGrade(bdGrade.getPkId()); - targetMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - targetMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } - } - } - - if (null != secondRangeTableName) { - if (targetMemberRangeExt.getPkMember().equals(saOrderExt.getPkMember())) { - // new 兼容购买等级多送2级的问题,秒结处理V4 V5方式不一样,会出现秒结等级和实际等级不匹配 - CuMemberRetailRangeExt memberRetailLevel = iCuMemberGradeService.getMemberLevel(saOrderExt.getPkMember(), saOrderExt.getPkId()); - if (null != memberRetailLevel) { - if (memberRetailLevel.getGradeValue() > targetMemberRangeExt.getGradeValue()) { - targetMemberRangeExt.setPkGrade(memberRetailLevel.getPkGrade()); - targetMemberRangeExt.setGradeValue(memberRetailLevel.getGradeValue()); - } - } - } - } - + SaOrderExt saOrderExt, Map retailAwardsMap, + String secondRangeTableName, List cuMemberAwardsList, + CuMemberRetailRangeExt targetMemberRangeExt) { // 计算当月奖衔 while (true) { // 当月奖衔值 + 5,获取下一个奖衔值 int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断: 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 @@ -827,94 +445,14 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } break; } - - // 校验大小区会员数据 - List cuMemberRangeExtList = null; - // 校验累计小部门会员数据 - List cuMemberRetailRangeExtList = null; - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 再验证小区,计算小区业绩(拉取直推会员数据) - if (null == cuMemberRangeExtList) { - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - if (null == cuMemberRetailRangeExtList) { - // 非秒结需要查询日结相关数据,秒结表使用上面查出的数据就可以 - if (null != secondRangeTableName) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = cuMemberRangeExtList; - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - cuMemberAwardsList.add(getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards())); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } } /** * 计算团队极差奖衔 -- 退单秒结 */ public List calculateRetailBackRangeGradeAwards(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailTeamGradeMap, Map retailAwardsMap, String secondRangeTableName, BigDecimal boxNum, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map retailAwardsMap, String secondRangeTableName, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, boolean isSecond) { List cuMemberRetailRangeExtList = new ArrayList<>(); // 订单会员 @@ -925,123 +463,33 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); BigDecimal orderAmount = saOrderExt.getOrderAmount(); while (targetMemberRangeExt != null) { - // 累计盒数、业绩,不管激活不激活都处理,兼容不激活判断显示有问题 - if (isSecond) { - // 当天,秒结处理 - targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum)); - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve)); - } else { - // 非当天,日结处理 - targetMemberRangeExt.setAllTeamNewBoxNum(targetMemberRangeExt.getAllTeamNewBoxNum().subtract(boxNum)); - targetMemberRangeExt.setAllTeamBoxNum(targetMemberRangeExt.getAllTeamBoxNum().subtract(boxNum)); - targetMemberRangeExt.setAllTeamMonthBoxNum(targetMemberRangeExt.getAllTeamMonthBoxNum().subtract(boxNum)); - targetMemberRangeExt.setAllTeamNewPv(targetMemberRangeExt.getAllTeamNewPv().subtract(orderAchieve)); - targetMemberRangeExt.setAllTeamConsumePv(targetMemberRangeExt.getAllTeamConsumePv().subtract(orderAchieve)); - targetMemberRangeExt.setAllTeamMonthPv(targetMemberRangeExt.getAllTeamMonthPv().subtract(orderAchieve)); - } - - // 激活的账号才能累计业绩和盒数(有注册、升级订单) - if (targetMemberRangeExt.getEnableStatus() == EYesNo.YES.getIntValue()) { - // 累计盒数 - targetMemberRangeExt.setTeamNewBoxNum(targetMemberRangeExt.getTeamNewBoxNum().subtract(boxNum)); - targetMemberRangeExt.setTeamBoxNum(targetMemberRangeExt.getTeamBoxNum().subtract(boxNum)); - targetMemberRangeExt.setTeamMonthBoxNum(targetMemberRangeExt.getTeamMonthBoxNum().subtract(boxNum)); - // 累计金额 - targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); - targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); - targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); - // 累计业绩 - targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); - targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); - targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); - // 计算等级 - calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailTeamGradeMap, retailAwardsMap, secondRangeTableName, - cuMemberGradeMap, cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); - cuMemberRetailRangeExtList.add(targetMemberRangeExt); - } - // 计算等级 + // 累计金额 + targetMemberRangeExt.setTeamNewAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewAmount(), orderAmount)); + targetMemberRangeExt.setTeamConsumeAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumeAmount(), orderAmount)); + targetMemberRangeExt.setTeamMonthAmount(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthAmount(), orderAmount)); + // 累计业绩 + targetMemberRangeExt.setTeamNewPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamNewPv(), orderAchieve)); + targetMemberRangeExt.setTeamConsumePv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamConsumePv(), orderAchieve)); + targetMemberRangeExt.setTeamMonthPv(ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), orderAchieve)); + // 计算 + calculateBackGrade(period, memberRangeExtMap, rangeTableName, saOrderExt, retailAwardsMap, secondRangeTableName, + cuMemberAwardsMap, cuMemberShareAwardsMap, targetMemberRangeExt); + cuMemberRetailRangeExtList.add(targetMemberRangeExt); + // 计算 targetMemberRangeExt = memberRangeExtMap.get(targetMemberRangeExt.getPkParent()); } return cuMemberRetailRangeExtList; } private void calculateBackGrade(Integer period, Map memberRangeExtMap, String rangeTableName, SaOrderExt saOrderExt, - Map retailTeamGradeMap, Map retailAwardsMap, String secondRangeTableName, - Map cuMemberGradeMap, Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, + Map retailAwardsMap, String secondRangeTableName, + Map cuMemberAwardsMap, Map cuMemberShareAwardsMap, CuMemberRetailRangeExt targetMemberRangeExt) { - // 遍历团队等级map(V4,V5) - for (Integer gradeValue : retailTeamGradeMap.keySet()) { - BdGrade bdGrade = retailTeamGradeMap.get(gradeValue); - // 等级总盒数 - BigDecimal boxTotal = bdGrade.getBoxTotal(); - // 等级小市场盒数 - BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal(); - - if (RetailConstants.VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) { - // TODO 需要根据配置写死的体系,进行单独处理 - // V4: 总 500,小 100 - // V5: 总 2000,小 400 - if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = RetailConstants.VERTEX_V4_TOTAL_BOX; - boxSmallTotal = RetailConstants.VERTEX_V4_SMALL_BOX; - } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) { - boxTotal = RetailConstants.VERTEX_V5_TOTAL_BOX; - boxSmallTotal = RetailConstants.VERTEX_V5_SMALL_BOX; - } - } - - if (boxTotal.compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) { - // 验证小区,计算小区累计盒数 查询伞下会员 - List cuMemberRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - - // new 新逻辑确认:注水 2 个虚拟区,自己消费 1 个虚拟区,伞下直推,所有的最大 - // 大区盒数(默认为自己累计消费盒数) - BigDecimal bigBoxNum = targetMemberRangeExt.getConsumeBoxNum(); - if (targetMemberRangeExt.getBigBoxNum().compareTo(bigBoxNum) > 0) { - // 注水大区如果大则使用注水盒数为大区 - bigBoxNum = targetMemberRangeExt.getBigBoxNum(); - } - if (targetMemberRangeExt.getSmallBoxNum().compareTo(bigBoxNum) > 0) { - // 注水小区如果大则使用注水盒数为大区 - bigBoxNum = targetMemberRangeExt.getSmallBoxNum(); - } - // 秒结补全直推数据,此处秒结和日结可以使用同一逻辑 - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 伞下团队累计盒数 + 自己消费盒数 - BigDecimal areaBoxNum = cuMemberRetailRangeExt.getAllTeamBoxNum().add(cuMemberRetailRangeExt.getConsumeBoxNum()); - if (areaBoxNum.compareTo(bigBoxNum) > 0) { - // 实际订单累计盒数 大于 累计消费盒数,实际订单累计盒数为大区 - bigBoxNum = areaBoxNum; - } - } - - // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数) - BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum); - if (smallBoxNum.compareTo(boxSmallTotal) >= 0) { - // 小区盒数 大于等于 升级小区盒数 - CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade); - cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade); - targetMemberRangeExt.setGradeValue(bdGrade.getGradeValue()); - targetMemberRangeExt.setPkGrade(bdGrade.getPkId()); - targetMemberRangeExt.setGradeName(bdGrade.getGradeName()); - } - } - } // 计算奖衔(荣誉级别) while (true) { int awardsValue = targetMemberRangeExt.getAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - // 等级达到V5 并且 存在下个奖衔,判断是否能升奖衔 + if (retailAwardsMap.containsKey(awardsValue)) { + // 存在下个奖衔,判断是否能升奖衔 BdAwards bdAwards = retailAwardsMap.get(awardsValue); // 先验证累计业绩 // new 升级奖衔判断为当月累计业绩,累计业绩为团队业绩 + 个人消费业绩 @@ -1057,986 +505,18 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } break; } - - // 计算分红奖衔 - while (true) { - // 当月奖衔值 + 5,获取下一个奖衔值 - int awardsValue = targetMemberRangeExt.getShareAwardsValue() + 5; - if (targetMemberRangeExt.getGradeValue().equals(EGrade.S_VIP.getValue()) && retailAwardsMap.containsKey(awardsValue)) { - BdAwards bdAwards = retailAwardsMap.get(awardsValue); - // 先验证累计业绩 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(targetMemberRangeExt.getTeamMonthPv(), targetMemberRangeExt.getMonthConsumePv()), bdAwards.getShareTotalCheck())) { - // 验证小区,计算小区业绩(拉取直推会员数据) - List cuMemberRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMemberRangeExt.getPkMember()); - } - // 本人月消费业绩(默认为大区) - BigDecimal consumeBigPv = targetMemberRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - // 月累计业绩 = 本人月消费业绩 + 团队月消费业绩 - BigDecimal consumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { - // 月累计业绩 > 大区业绩,则月累计就成为大区了 - consumeBigPv = consumePv; - } - } - - // 小区业绩 = 本人月消费业绩 + 团队月消费业绩 - 大区业绩 - BigDecimal smallAreaPv = ComputeUtil.computeAdd(targetMemberRangeExt.getMonthConsumePv(), ComputeUtil.computeSubtract(targetMemberRangeExt.getTeamMonthPv(), consumeBigPv)); - if (ComputeUtil.compareValue(smallAreaPv, bdAwards.getShareCommunityCheck())) { - // 小区业绩 >= 小区考核业绩 - if (bdAwards.getPlaceDeptNum() > 0) { - // 验证是否有多个区满足业绩 - List cuMemberRetailRangeExtList; - if (secondRangeTableName != null) { - // 会员表 关联 秒结表 和 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberSecondRangeExtByParent(rangeTableName, secondRangeTableName, targetMemberRangeExt.getPkMember()); - } else { - // 昨日结算表,查询订单会员直推数据 - cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeEnoughAchieve(rangeTableName, targetMemberRangeExt.getPkMember(), bdAwards.getShareCommunityCheck()); - } - - int enoughNum = 0; - if (ComputeUtil.compareValue(targetMemberRangeExt.getMonthConsumePv(), bdAwards.getShareCommunityCheck())) { - enoughNum += 1; - } - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRetailRangeExtList) { - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberRetailRangeExt.getMonthConsumePv(), cuMemberRetailRangeExt.getAllTeamMonthPv()), bdAwards.getShareCommunityCheck())) { - // 本人月消费业绩 + 团队月消费业绩 >= 小区考核业绩,则满足条件小部门 +1 - enoughNum += 1; - } - } - if (bdAwards.getPlaceDeptNum() > enoughNum) { - break; - } - } - CuMemberAwards cuMemberRetailAwards = getCuMemberRetailAwards(targetMemberRangeExt, period, saOrderExt, bdAwards, EAwardsType.SHARE_TYPE.getValue(), targetMemberRangeExt.getPkShareAwards()); - cuMemberShareAwardsMap.put(cuMemberRetailAwards.getPkMember() + "_" + cuMemberRetailAwards.getNewLevel(), cuMemberRetailAwards); - targetMemberRangeExt.setShareAwardsValue(bdAwards.getAwardsValue()); - targetMemberRangeExt.setPkShareAwards(bdAwards.getPkId()); - continue; - } - } - } - break; - } - } - - - /** - * 计算直推级差收益,根据直推级差收益计算平级收益 - */ - List calculateRetailRangeBonus(Map memberRangeExtMap, Map cuMemberBonusMap, - Map gradeMap, BonusConfigDTO bonusConfigDTO, Integer period, - SaOrderWaresExt saOrderItems, SaOrderExt saOrderExt) { - // 直推级差返回数据 - List memberBonusRangeList = new ArrayList<>(); - // 用等级计算,按照一级级算 - - // 订单下单人自己 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); - // 推荐人 - long pkParent = sourceMemberRangeExt.getPkParent(); - -// // 商品价格 -// BigDecimal beginBuyPrice = saOrderItems.getWaresPrice(); -// BigDecimal comBuyPrice = saOrderItems.getWaresPrice(); -// -// // 开始计算等级值 -// int beginGradeValue = sourceMemberRangeExt.getGradeValue(); -// // 直推级差收益 -// BigDecimal calBonusIncome = BigDecimal.ZERO; - - // 商品最终价格(总价,带数量的价格) - BigDecimal waresPrice = saOrderItems.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - - // 前一个会员等级 - int beforeGradeValue = 0; - // 前一个会员等级的平级收益人数 - int beforeSameAlgebra = 0; - // 前一个会员等级的平级收益 - BigDecimal beforeSameBonus = BigDecimal.ZERO; - // 计算直推级差 - while (true) { - // 推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (targetMemberRangeExt == null) { - break; - } - // 推荐人的推荐人 - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 - continue; - } - // 当前会员等级值 - int calGradeValue = targetMemberRangeExt.getGradeValue(); - // 当前会员等级 - BdGrade bdGrade = gradeMap.get(calGradeValue); - - // 直推级差税前收益 - BigDecimal rangeBonusIncome = null; - // 平级税前收益 - BigDecimal sameBonusIncome = null; - - if (beforeGradeValue == 0) { - // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // VIP,拿 1 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice); - } else if (EGrade.YOU_KE.getValue() == calGradeValue) { - // SVIP,拿 2 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2")); - } else if (EGrade.MAKER.getValue() == calGradeValue) { - // 卓越,拿 3 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3")); - } else if (EGrade.VIP.getValue() == calGradeValue) { - // 首席,拿 4 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4")); - } else if (EGrade.S_VIP.getValue() == calGradeValue) { - // 合伙人,拿 5 份 10% - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5")); - } - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - } else if (calGradeValue == beforeGradeValue) { - // 当前会员等级 = 前一个会员等级 - if (EGrade.HAI_FAN.getValue() == calGradeValue) { - // V1 没有平级收益 - continue; - } - if (beforeSameAlgebra >= bdGrade.getAlgebra()) { - // 平级收益已经满10代,不继续处理平级收益 - if (EGrade.S_VIP.getValue() == beforeGradeValue) { - // 平级处理等级为最高级V5,则结束处理 - break; - } - continue; - } - // 平级收益(商品价格 * 千分之五) -- 6位小数,四舍五入 - sameBonusIncome = waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig); - // 平级收益累计 - beforeSameBonus = beforeSameBonus.add(sameBonusIncome); - // 平级等级代数等级 - beforeSameAlgebra += 1; - } else if (calGradeValue > beforeGradeValue) { - // 当前会员等级 > 前一个会员等级 - int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10; - - // 新等级的直推级差收益 - rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal)); - // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益 - rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus); - - // 赋值前一个会员等级 - beforeGradeValue = calGradeValue; - // 平级收益记录从新开始计算 - beforeSameAlgebra = 0; - beforeSameBonus = BigDecimal.ZERO; - } else { - // 当前会员等级 < 前一个会员等级,直接跳过 - continue; - } - - if (null != rangeBonusIncome) { - // 处理直推级差收益 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setCalAchieve(waresPrice); - cuMemberBonusRange.setPretaxIncome(rangeBonusIncome); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); - rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - } - if (null != sameBonusIncome) { - // 处理平级收益 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); - CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - oriMemberBonusRange.setCalValue(RetailConstants.SAME_RATIO); - oriMemberBonusRange.setCalAchieve(waresPrice); - oriMemberBonusRange.setPretaxIncome(sameBonusIncome); - oriMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - oriMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); - oriMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); - oriRetailRangeRemark(saOrderExt, oriMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, oriMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == oriMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, oriMemberBonusRange); - } - memberBonusRangeList.add(oriMemberBonusRange); - } - -// // 如果价格是209,代表是第一单激活,只有平级收益,只有V5有平级收益 -// if (beginBuyPrice.equals(BigDecimal.valueOf(209))) { -// calGradeValue = EGrade.S_VIP.getValue(); -// if (beginGradeValue < EGrade.S_VIP.getValue()) { -// beginGradeValue = EGrade.S_VIP.getValue(); -// } -// } -// BdGrade bdGrade = gradeMap.get(calGradeValue); -// BigDecimal buyPrice = bdGrade.getBuyPrice(); -// boolean isRange = Boolean.FALSE; -// // 有极差或者有平级 -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, buyPrice)) { -// // 计算极差 -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_RANGE_INCOME.getValue()); -// CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// cuMemberBonusRange.setCalValue(BigDecimal.ZERO); -// cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(ComputeUtil.computeSubtract(beginBuyPrice, buyPrice), calBonusIncome), saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// cuMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); -// } -// memberBonusRangeList.add(cuMemberBonusRange); -// -// beginBuyPrice = buyPrice; -// comBuyPrice = buyPrice; -// beginGradeValue = calGradeValue; -// sourceMemberRangeExt = targetMemberRangeExt; -// calBonusIncome = BigDecimal.ZERO; -// } else { -// isRange = Boolean.TRUE; -// pkParent = targetMemberRangeExt.getPkMember(); -// } -// if (saOrderExt.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// continue; -// } -// if (bdGrade.getAlgebra() > 0) { -// Long lastPkParent = pkParent; -// for (int j = 0; j < bdGrade.getAlgebra(); j++) { -// targetMemberRangeExt = memberRangeExtMap.get(lastPkParent); -// if (targetMemberRangeExt == null) { -// if (memberRangeExtMap.get(pkParent) == null) { -// break; -// } -// pkParent = memberRangeExtMap.get(pkParent).getPkParent(); -// break; -// } -// calGradeValue = targetMemberRangeExt.getGradeValue(); -// BigDecimal sameBuyPrice = gradeMap.get(calGradeValue).getBuyPrice(); -// // 有平级 -// if (ComputeUtil.compareGreaterThan(sameBuyPrice, comBuyPrice)) { -// lastPkParent = targetMemberRangeExt.getPkParent(); -// pkParent = targetMemberRangeExt.getPkParent(); -// j--; -// continue; -// } -// if (ComputeUtil.compareGreaterThan(beginBuyPrice, sameBuyPrice)) { -// pkParent = lastPkParent; -// break; -// } -// lastPkParent = targetMemberRangeExt.getPkParent(); -// if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() || -// ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() || -// targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() || -// EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { -// j--; -// continue; -// } -// BigDecimal bonusIncome = BigDecimal.ZERO; -// if (j == 0) { -// bonusIncome = bdGrade.getFirstAlgebra(); -// } else if (j == 1) { -// bonusIncome = bdGrade.getSecondAlgebra(); -// } else if (j == 2) { -// bonusIncome = bdGrade.getThirdAlgebra(); -// } -// if (ComputeUtil.compareEqual(beginBuyPrice, sameBuyPrice)) { -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), -// targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); -// int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue()); -// CuMemberBonusRange oriMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); -// oriMemberBonusRange.setCalValue(BigDecimal.valueOf(10)); -// oriMemberBonusRange.setPretaxIncome(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(bonusIncome, saOrderItems.getWaresQuantity()), BigDecimal.ONE)); -// oriMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); -// oriMemberBonusRange.setPkOrderItems(saOrderItems.getPkId()); -// oriRetailRangeRemark(saOrderExt, oriMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); -// BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, oriMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); -// if (EBonusIncomeStatus.NORMAL.getValue() == oriMemberBonusRange.getIncomeStatus()) { -// cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), oriMemberBonusRange.getPretaxIncome())); -// setRetailTotal(bdBonusDeduct, cuMemberBonus, oriMemberBonusRange); -// } -// memberBonusRangeList.add(oriMemberBonusRange); -// calBonusIncome = ComputeUtil.computeAdd(calBonusIncome, bonusIncome); -// pkParent = lastPkParent; -// } else { -// j--; -// } -// if (j == bdGrade.getAlgebra() - 1) { -// beginGradeValue += 1; -// comBuyPrice = ComputeUtil.computeSubtract(comBuyPrice, BigDecimal.ONE); -// break; -// } -// } -// } else { -// if (isRange) { -// pkParent = targetMemberRangeExt.getPkParent(); -// } -// } -// if (beginGradeValue > EGrade.S_VIP.getValue()) { -// break; -// } - } - return memberBonusRangeList; - } - - /** - * 计算区域奖 - * - * @param countyRangeExtMap - * @param saOrder - * @param bonusConfigDTO - * @param period - * @param memberRangeExtMap - * @param cuMemberBonusMap - * @return - */ - CuMemberBonusDetail calculateRetailAreaBonus(Map countyRangeExtMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map memberRangeExtMap, - Map cuMemberBonusMap, SaOrderExt saOrder) { - // 重消订单没有区域分红 - if (saOrder.getOrderType().equals(EOrderType.RETAIL_CONSUME.getValue())) { - return null; - } -// // 区域分红根据商品盒数来,如果没有盒数,直接返回为空 -// if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) == 0) { -// return null; -// } - - CuMemberRetailRangeExt sourceRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 获取对应区域会员 - CuMemberRetailRangeExt cuMemberRetailRangeExt = countyRangeExtMap.get(sourceRetailRangeExt.getRegionVertexPkId() + "_" + saOrder.getRecCounty()); - if (null == cuMemberRetailRangeExt) { - return null; - } - // 获取区域会员结算数据 - if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - } - - // 非正常用户 或者 停止收益 或 未激活,不能获取区域收益 - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || cuMemberRetailRangeExt.getEnableStatus() == EYesNo.NO.getIntValue()) { - return null; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_AREA_INCOME.getValue())) { - return null; - } - // 没有盒数商品,直接返回空 - if (CollectionUtil.isEmpty(saOrder.getOrderWaresExtList())) { - return null; - } - - // 处理区域收益 -- 计算比例为 0.5% - BigDecimal benefitIncome = BigDecimal.ZERO; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { - // 注册、升级订单, 区域收益 = 商品价格 * 0.5% * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - // 商品最终价格 - BigDecimal waresPrice = saOrderWaresExt.getWaresPrice(); - // 商品数量 - BigDecimal waresQuantityBig = saOrderWaresExt.getWaresQuantity(); - // 单个商品价格 - BigDecimal waresOnePrice = waresPrice.divide(waresQuantityBig, 6, RoundingMode.FLOOR); - - benefitIncome = benefitIncome.add(waresOnePrice.multiply(RetailConstants.SAME_RATIO).setScale(6, BigDecimal.ROUND_HALF_UP).multiply(waresQuantityBig)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单, 区域收益 = 复购区域分红 * 商品数量 - for (SaOrderWaresExt saOrderWaresExt : saOrder.getOrderWaresExtList()) { - if (EDelFlag.UN_DELETE.getValue() == saOrderWaresExt.getDelFlag()) { - if (ERatioType.VALUE.getValue() == saOrderWaresExt.getAreaIncomeType()) { - // 按比值处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getAreaIncome().multiply(saOrderWaresExt.getWaresQuantity())); - } else { - // 按比率处理 - benefitIncome = benefitIncome.add(saOrderWaresExt.getWaresPrice().multiply(saOrderWaresExt.getAreaIncome()).divide(new BigDecimal("100"), 6, BigDecimal.ROUND_HALF_UP)); - } - } - } - } - - CuMemberBonusDetail cuMemberBonusDetail = packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, null, RetailConstants.SAME_RATIO, benefitIncome, - cuMemberRetailRangeExt, EBonusItems.RETAIL_AREA_INCOME.getValue(), BonusMsgConstants.RETAIL_AREA_INCOME); - // 计算业绩以盒数做为基础 - cuMemberBonusDetail.setCalAchieve(saOrder.getBoxNum()); - cuMemberBonusDetail.setPkOrder(saOrder.getPkId()); - String remark = String.format(BonusMsgConstants.RETAIL_AREA_INCOME, saOrder.getOrderCode(), - memberRangeExtMap.get(saOrder.getPkMember()).getMemberCode() + memberRangeExtMap.get(saOrder.getPkMember()).getMemberName(), - cuMemberRetailRangeExt.getMemberCode() + cuMemberRetailRangeExt.getMemberName(), - cuMemberBonusDetail.getPretaxIncome(), cuMemberRetailRangeExt.getCountryName()); - cuMemberBonusDetail.setRemark(remark); - return cuMemberBonusDetail; - } - - /** - * 团队福利、福利分红等奖金 -- 月奖 - * - * @param settleDateStr 结算日期 - */ - void calculateRetailShareBonus(String settleDateStr, BonusConfigDTO bonusConfigDTO, - Integer period, BonusRecordDetailVO bonusRecordDetailVO, Map cuMemberBonusMap) { - // 结算日期 - Date settleDate = DateUtils.parseStringToDate(settleDateStr); - // 上月最后一天 - String beforeMonthLastDate = DateUtils.beforeMonthLastDateStr(settleDate); - // 上月最后一天期数 - CuMemberSettlePeriod beforeMonthLast = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(beforeMonthLastDate); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE; - // 如果上月最后一期有值则使用,没有值则使用昨天期数 - if (ObjectUtil.isNotEmpty(beforeMonthLast)) { - rangeTableName += beforeMonthLast.getPkId(); - } else { - rangeTableName += period; - } - - // 查询上月订单 - // 结算月第一天(上月第一天) - Date currentMonthFirstDate = DateUtils.beforeMonthFirstDate(settleDate); - // 结算月下月第一天(本月第一天) - Date nextMonthFirstDate = DateUtils.currentMonthFirstDate(settleDate); - - List orderType = new ArrayList<>(); - orderType.add(EOrderType.RETAIL_REGISTER.getValue()); - orderType.add(EOrderType.RETAIL_UPGRADE.getValue()); - orderType.add(EOrderType.RETAIL_REPURCHASE.getValue()); - - // 月订单列表 - List totalMonthOrderList = new ArrayList<>(); - // 级差收益(福利级差、复购级差) - List memberBonusRangeList = new ArrayList<>(); - // 培训津贴 - List memberBonusCoachList = new ArrayList<>(); - // 月度分红收益 - List memberBonusDetailList = new ArrayList<>(); - // 当前年月 - String month = DateUtils.getMonth(settleDateStr); - - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,只查昨天订单 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, settleDate); - log.info("测试环境,月结日期: {}", endDate); - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(settleDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - // 测试环境奖衔取当前结算期 - rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - log.info("测试环境,月结期间: {}", rangeTableName); - } else { - // 非测试环境 - while (!DateUtils.compareDateEqual(currentMonthFirstDate, nextMonthFirstDate)) { - // 从上月第一天开始,每天查一次订单,查到本月第一天停止 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, currentMonthFirstDate); - // 查询指定时间范围内订单 - List currentMonthOrderList = iBonusOrderService.listSaOrderByTime(currentMonthFirstDate, endDate, orderType); - totalMonthOrderList.addAll(currentMonthOrderList); - currentMonthFirstDate = endDate; - } - } - - if (totalMonthOrderList.size() > 0) { - // 会员ID集合 - Set pkMemberSet = new HashSet<>(); - totalMonthOrderList.forEach(saOrder -> pkMemberSet.add(saOrder.getPkMember())); - // 查询会员血缘伞上数据 - List cuMemberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByMemberPk(rangeTableName, pkMemberSet); - // 会员结算map(key:会员ID, value:会员结算数据) - Map memberRangeExtMap = new HashMap<>(); - cuMemberRetailRangeExtList.forEach(cuMemberRetailRangeExt -> - memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt)); - - // 按照系统类型将订单区分 -- 目前只有一个系统类型 - // key:会员体系,value:会员订单列表 - Map> orderMap = new HashMap<>(); - for (SaOrder saOrder : totalMonthOrderList) { - if (memberRangeExtMap.containsKey(saOrder.getPkMember())) { - CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - if (orderMap.containsKey(cuMemberRetailRangeExt.getSystemType())) { - orderMap.get(cuMemberRetailRangeExt.getSystemType()).add(saOrder); - } else { - List orderList = new ArrayList<>(); - orderList.add(saOrder); - orderMap.put(cuMemberRetailRangeExt.getSystemType(), orderList); - } - } - } - - // 当月总pv,用于计算月度分红(福利平均、福利加权) - for (Integer systemType : orderMap.keySet()) { - List saOrders = orderMap.get(systemType); - // 月所有订单业绩(注册、升级、复购) - BigDecimal totalMonthConsumePv = BigDecimal.ZERO; - // 订单对应map - Map saOrderMap = new HashMap<>(); - - // new 两个月奖 - // 月度级差:注册、升级订单,从自己开始往上算,最多拨出10代(紧缩) - // 复购级差:复购订单,从自己开始往上算,最多拨出10代(紧缩) - for (SaOrder saOrder : saOrders) { - // 累计订单业绩 - totalMonthConsumePv = ComputeUtil.computeAdd(totalMonthConsumePv, saOrder.getOrderAchieve()); - // 封装订单map - saOrderMap.put(saOrder.getPkId(), saOrder); - - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { - // 注册、升级订单,计算福利级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getRangeRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getRangeRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) - && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 福利极差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeBenefitRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailBenefitRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单,计算复购级差收益 - // 订单会员 - CuMemberRetailRangeExt sourceMemberRetailRangeExt = memberRangeExtMap.get(saOrder.getPkMember()); - // 会员奖衔级差比例 -- 初始为下单会员奖衔级差比例 - BigDecimal rangeRatio = sourceMemberRetailRangeExt.getMonthRepurchaseRatio(); - // 从自己开始往上算,第一个人用自己处理 - long pkParent = sourceMemberRetailRangeExt.getPkMember(); - while (true) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - pkParent = targetMemberRangeExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - // 当前会员奖衔级差比例 - BigDecimal targetRangeRatio = targetMemberRangeExt.getMonthRepurchaseRatio(); - if ((targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember()) && ComputeUtil.compareValue(rangeRatio)) - || ComputeUtil.compareGreaterThan(targetRangeRatio, rangeRatio)) { - // 第一代是自己 并且 级差比例大于0 或者 级差比例大于前一代会员的奖衔级差比例 - // 计算极差 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate()); - // 复购级差收益 - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrder, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - if (targetMemberRangeExt.getPkMember().equals(saOrder.getPkMember())) { - cuMemberBonusRange.setCalValue(targetRangeRatio); - } else { - cuMemberBonusRange.setCalValue(ComputeUtil.computeSubtract(targetRangeRatio, rangeRatio)); - } - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeBonusMultiply(saOrder.getOrderAchieve(), cuMemberBonusRange.getCalValue())); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRetailRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeMonthRepurchaseRetailRemark(saOrder, cuMemberBonusRange, sourceMemberRetailRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrder.getOrderAmount(), BigDecimal.ONE); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRetailMonthRepurchaseIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailMonthRepurchaseIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - // 下一代会员 - rangeRatio = targetRangeRatio; - sourceMemberRetailRangeExt = targetMemberRangeExt; - } - } - } - } - - // 培育津贴 - if (CollectionUtil.isNotEmpty(memberBonusRangeList)) { - for (CuMemberBonusRange cuMemberBonusRange : memberBonusRangeList) { - // 第一代开始 - int i = MagicNumberConstants.BLOOD_GENERATION_START; - // 推荐人 - Long pkMember = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()).getPkParent(); - // 提供奖金会员 - CuMemberRetailRangeExt sourceMemberRetailExt = memberRangeExtMap.get(cuMemberBonusRange.getPkBonus()); - // 级差所产生的培育津贴列表 - List rangeBonusCoachList = new ArrayList<>(); - // 最多发十代 - while (i <= MagicNumberConstants.BLOOD_GENERATION_END) { - // 当前需要拿奖金的会员 - CuMemberRetailRangeExt targetMemberRetailExt = memberRangeExtMap.get(pkMember); - if (null == targetMemberRetailExt) { - break; - } - pkMember = targetMemberRetailExt.getPkParent(); - - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRetailExt.getCategory() - || targetMemberRetailExt.getGradeValue() != EGrade.S_VIP.getValue() - || targetMemberRetailExt.getEnableStatus() == EYesNo.NO.getIntValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRetailExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级不为合伙人、停止收益,直接跳过 - continue; - } - - if (validatePkBonusItems(bonusConfigDTO, targetMemberRetailExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) { - // 校验当前国家是否有该奖项 - continue; - } - - // 奖金订单 - SaOrder saOrder = saOrderMap.get(cuMemberBonusRange.getPkOrder()); - if (null == saOrder) { - log.warn("培育津贴因订单为空跳过, cuMemberBonusRange: {}", cuMemberBonusRange); - continue; - } - - // 获取奖衔能拿多少代领导奖的奖衔值 - Integer awardsValue = targetMemberRetailExt.getCoachAlgebra(); - - // 判断是否有奖金 - if (awardsValue >= i) { - // 培育津贴比例 - BigDecimal awardCalRadio = targetMemberRetailExt.getCoachRatio(); - // 生成培育津贴明细 - CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusRange, i, targetMemberRetailExt, awardCalRadio); - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRetailExt.getPkMember(), - targetMemberRetailExt.getIncomeStatus(), targetMemberRetailExt.getPkSettleCountry(), targetMemberRetailExt.getPkRate()); - - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusCoach, saOrder.getOrderAmount(), BigDecimal.ONE); - retailCoachRemark(saOrder, cuMemberBonusCoach, sourceMemberRetailExt, targetMemberRetailExt); - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus()) { - cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach); - } - rangeBonusCoachList.add(cuMemberBonusCoach); - - // 这一代领导奖计算完,计算代数加1 - i++; - } - } - - if (rangeBonusCoachList.size() > 0) { - // 共多少代 - --i; - for (CuMemberBonusCoach cuMemberBonusCoach : rangeBonusCoachList) { - cuMemberBonusCoach.setCoachGeneration(i); - cuMemberBonusCoach.setRemark(cuMemberBonusCoach.getRemark().replace("#", cuMemberBonusCoach.getCoachGeneration().toString())); - memberBonusCoachList.add(cuMemberBonusCoach); - } - } - } - } - - // 查询 v5 等级 且 分红奖衔 >= S4 - List memberRetailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByAwards(rangeTableName); - if (memberRetailRangeExtList.size() > 0) { - // 查询月度分红会员的直推 - List retailRangeExtList = iCuMemberRetailRangeService.batchQueryMemberRetailRangeByParent(rangeTableName, memberRetailRangeExtList); - // 推荐会员列表(key:推荐人,value:推荐会员列表) - Map> parentMemberRangeExtMap = new HashMap<>(); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkParent())) { - parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkParent()).add(cuMemberRetailRangeExt); - } else { - List cuMemberRangeExtList = new ArrayList<>(); - cuMemberRangeExtList.add(cuMemberRetailRangeExt); - parentMemberRangeExtMap.put(cuMemberRetailRangeExt.getPkParent(), cuMemberRangeExtList); - } - } - // 奖衔分红分类 - // 4 5 6 级奖衔会员 - List firstAwardsRetailRangeList = new ArrayList<>(); - // 4 5 6 级奖衔累计业绩 - BigDecimal firstConsumePv = BigDecimal.ZERO; - // 4 5 6 月度分红平均 比例 - BigDecimal benefitAvgRatio = BigDecimal.ZERO; - // 4 5 6 月度分红加权 比例 - BigDecimal benefitShareRatio = BigDecimal.ZERO; - - // 7 8 9 级奖衔会员 - List secondAwardsRetailRangeList = new ArrayList<>(); - // 7 8 9 级奖衔累计业绩 - BigDecimal secondConsumePv = BigDecimal.ZERO; - // 7 8 9 月度分红平均 比例 - BigDecimal secondBenefitAvgRatio = BigDecimal.ZERO; - // 7 8 9 月度分红加权 比例 - BigDecimal secondBenefitShareRatio = BigDecimal.ZERO; - - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : memberRetailRangeExtList) { - if (parentMemberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { - // 获取会员的推荐数据 - List rangeExtList = parentMemberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); - // 计算小区(本人月消费默认为大区) - BigDecimal bigConsumePv = cuMemberRetailRangeExt.getMonthConsumePv(); - for (CuMemberRetailRangeExt memberRetailRangeExt : rangeExtList) { - // 本人消费 + 团队消费 - BigDecimal monthConsumePv = ComputeUtil.computeAdd(memberRetailRangeExt.getMonthConsumePv(), memberRetailRangeExt.getTeamMonthPv()); - if (ComputeUtil.compareGreaterThan(monthConsumePv, bigConsumePv)) { - bigConsumePv = monthConsumePv; - } - } - // 小区业绩 = 本人月团队 + 本人月消费 - 大区业绩 - cuMemberRetailRangeExt.setSmallAreaConsumePv(ComputeUtil.computeSubtract(cuMemberRetailRangeExt.getTeamMonthPv().add(cuMemberRetailRangeExt.getMonthConsumePv()), bigConsumePv)); - } else { - cuMemberRetailRangeExt.setSmallAreaConsumePv(BigDecimal.ZERO); - } - if (cuMemberRetailRangeExt.getShareAwardsValue() >= EAwards.SENIOR_MANAGER.getValue() - && cuMemberRetailRangeExt.getShareAwardsValue() <= EAwards.HIGH_CHIEF.getValue()) { - // 奖衔 4 5 6 级数据处理 - firstAwardsRetailRangeList.add(cuMemberRetailRangeExt); - benefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - benefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - firstConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), firstConsumePv); - } else { - // 奖衔 7 8 9 级数据处理 - secondAwardsRetailRangeList.add(cuMemberRetailRangeExt); - secondBenefitAvgRatio = cuMemberRetailRangeExt.getBenefitAvgRatio(); - secondBenefitShareRatio = cuMemberRetailRangeExt.getBenefitShareRatio(); - secondConsumePv = ComputeUtil.computeAdd(cuMemberRetailRangeExt.getSmallAreaConsumePv(), secondConsumePv); - } - } - if (firstAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitAvgRatio), BigDecimal.valueOf(firstAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, benefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : firstAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), firstConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, benefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - if (secondAwardsRetailRangeList.size() > 0) { - // 月度分红平均收益 = 订单总业绩 乘 分红平均比例 除 奖衔人数 - BigDecimal benefitAvgIncome = ComputeUtil.computeDivide(ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitAvgRatio), BigDecimal.valueOf(secondAwardsRetailRangeList.size())); - // 月度分红加权总收益 = 订单总业绩 乘 分红加权比例 - BigDecimal benefitShareIncome = ComputeUtil.computeBonusMultiply(totalMonthConsumePv, secondBenefitShareRatio); - for (CuMemberRetailRangeExt cuMemberRetailRangeExt : secondAwardsRetailRangeList) { - if (ECategory.NORMAL.getValue() != cuMemberRetailRangeExt.getCategory() - || EAccountStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getAccountStatus() - || EIncomeStatus.STOP_INCOME.getValue() == cuMemberRetailRangeExt.getIncomeStatus()) { - // 非正常状态、停算状态、停止收益,直接跳过 - continue; - } - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue())) { - continue; - } - // 月度分红 - 平均收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitAvgRatio, - benefitAvgIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_AVG_INCOME)); - // 月度分红加权收益 = 月度分红加权总收益 乘 小市场业绩 除 总小市场业绩 - BigDecimal bonusIncome = ComputeUtil.computeDivide(ComputeUtil.computeMultiply(benefitShareIncome, cuMemberRetailRangeExt.getSmallAreaConsumePv()), secondConsumePv); - // 月度分红 - 加权收益 - memberBonusDetailList.add(packageBenefitIncome(bonusConfigDTO, period, cuMemberBonusMap, month, secondBenefitShareRatio, - bonusIncome, cuMemberRetailRangeExt, EBonusItems.RETAIL_BENEFIT_INCOME.getValue(), BonusMsgConstants.RETAIL_BENEFIT_INCOME)); - } - } - } - } - } - if (memberBonusDetailList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusDetailList() == null) { - bonusRecordDetailVO.setCuMemberBonusDetailList(memberBonusDetailList); - } else { - bonusRecordDetailVO.getCuMemberBonusDetailList().addAll(memberBonusDetailList); - } - } - if (memberBonusCoachList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusCoachList() == null) { - bonusRecordDetailVO.setCuMemberBonusCoachList(memberBonusCoachList); - } else { - bonusRecordDetailVO.getCuMemberBonusCoachList().addAll(memberBonusCoachList); - } - } - if (memberBonusRangeList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusRangeList() == null) { - bonusRecordDetailVO.setCuMemberBonusRangeList(memberBonusRangeList); - } else { - bonusRecordDetailVO.getCuMemberBonusRangeList().addAll(memberBonusRangeList); - } - } - } - - private CuMemberBonusDetail packageBenefitIncome(BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, String month, - BigDecimal benefitAvgRatio, BigDecimal benefitAvgIncome, CuMemberRetailRangeExt cuMemberRetailRangeExt, Integer bonusItemsValue, String msg) { - // 获取会员奖金数据 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, cuMemberRetailRangeExt.getPkMember(), - cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberRetailRangeExt.getPkRate()); - - SaOrder saOrderExt = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build(); - CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, cuMemberRetailRangeExt.getIncomeStatus(), cuMemberRetailRangeExt.getPkSettleCountry(), cuMemberBonus); - - // 计算比例 - cuMemberBonusDetail.setCalValue(benefitAvgRatio); - cuMemberBonusDetail.setPretaxIncome(benefitAvgIncome); - cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, cuMemberRetailRangeExt.getPkSettleCountry(), bonusItemsValue)); - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusDetail, BigDecimal.ZERO, BigDecimal.ONE); - if (bonusItemsValue != EBonusItems.RETAIL_AREA_INCOME.getValue()) { - String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome(), month); - cuMemberBonusDetail.setRemark(remark); - } - - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { - if (bonusItemsValue == EBonusItems.RETAIL_AREA_INCOME.getValue()) { - cuMemberBonus.setRetailAreaIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailAreaIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else if (bonusItemsValue == EBonusItems.RETAIL_BENEFIT_AVG_INCOME.getValue()) { - cuMemberBonus.setRetailBenefitAvgIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitAvgIncome(), cuMemberBonusDetail.getPretaxIncome())); - } else { - cuMemberBonus.setRetailBenefitIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailBenefitIncome(), cuMemberBonusDetail.getPretaxIncome())); - } - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); - } - return cuMemberBonusDetail; - } - - - protected CuMemberBonusCoach getCuMemberBonusCoach(BonusConfigDTO bonusConfigDTO, CuMemberBonusRange cuMemberBonusRange, - int i, CuMemberRetailRangeExt targetMemberRangeExt, BigDecimal awardCalRadio) { - CuMemberBonusCoach cuMemberBonusCoach = CuMemberBonusCoach.builder() - .pkBonus(targetMemberRangeExt.getPkMember()) - .pkOrder(cuMemberBonusRange.getPkOrder()) - .pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.RETAIL_COACHING_INCOME.getValue())) - .incomeStatus(targetMemberRangeExt.getIncomeStatus()) - .calType(ECalType.RATIO.getValue()) - .calAchieve(cuMemberBonusRange.getCalAchieve()) - .currentGeneration(i) - // 计算比例 - .calValue(awardCalRadio) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .pretaxIncome(ComputeUtil.computeBonusMultiply(cuMemberBonusRange.getPretaxIncome(), awardCalRadio)) - .coachNoCapping(BigDecimal.ZERO) - .coachCapping(BigDecimal.ZERO) - .coachNormalHalf(BigDecimal.ZERO) - .coachNormalReal(BigDecimal.ZERO) - .build(); - cuMemberBonusCoach.setPkCountry(targetMemberRangeExt.getPkSettleCountry()); - cuMemberBonusCoach.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusCoach; } private CuMemberBonusRange getCuMemberRetailBonusRange(SaOrder saOrderExt, CuMemberRetailRangeExt targetMemberRangeExt, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { CuMemberBonusRange cuMemberBonusRange = CuMemberBonusRange.builder() .pkBonus(cuMemberBonus.getPkId()) - .incomeStatus(targetMemberRangeExt.getIncomeStatus()) .pkOrder(saOrderExt.getPkId()) + .pkOrderItems(0L) .pkBonusItems(pkBonusItems) + .incomeStatus(targetMemberRangeExt.getIncomeStatus()) + .calType(ECalType.RATIO.getValue()) .calAchieve(saOrderExt.getOrderAchieve()) - .calType(ECalType.VALUE.getValue()) .calValue(BigDecimal.ZERO) .incomeRatio(BigDecimal.ZERO) .incomeDialRatio(BigDecimal.ZERO) @@ -2069,154 +549,689 @@ public class BonusSettleRangeHandle extends BonusSettleHandle { } /** - * 奖金明细 - * - * @param saOrderExt 订单 - * @param cuMemberBonus 奖金主表 + * 计算直推收益 -- 精品专区 */ - private CuMemberBonusDetail getCuMemberBonusDetail(SaOrder saOrderExt, Integer incomeStatus, Integer pkCountry, CuMemberBonus cuMemberBonus) { - CuMemberBonusDetail cuMemberBonusDetail = CuMemberBonusDetail.builder() - .pkOrder(saOrderExt.getPkId()) - .calType(ECalType.RATIO.getValue()) - .incomeStatus(incomeStatus) - .calAchieve(saOrderExt.getOrderAchieve()) + private void calculateDirectIncome(List cuMemberBonusPushList, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt, + BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { + // 订单会员推荐人 + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent()); + if (null == targetMember) { + log.warn("直推收益:订单会员推荐人不存在, pkParent: {}", sourceMember.getPkParent()); + return; + } + // 死点 或 停算收益 或 顾客 没有奖金 + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EIncomeStatus.STOP_INCOME.getValue() == targetMember.getIncomeStatus() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + // 非正常会员、停止收益、停算收益,直接跳过 + log.warn("直推收益:订单会员推荐人不满足计算奖金条件, memberCode: {}", targetMember.getMemberCode()); + return; + } + // 订单金额 + BigDecimal orderAmount = saOrderExt.getOrderAmount(); + // 奖金金额 + BigDecimal bonusIncome = orderAmount.multiply(RetailConstants.DIRECT_BONUS_RATIO); + + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 直推奖金明细 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.DIRECT_INCOME.getValue()); + // 直推收益明细 + CuMemberBonusPush cuMemberBonusPush = getCuMemberBonusPush(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusPush.setCalAchieve(orderAmount); + cuMemberBonusPush.setCalValue(RetailConstants.DIRECT_BONUS_RATIO); + cuMemberBonusPush.setPretaxIncome(bonusIncome); + directIncomeRemark(saOrderExt, cuMemberBonusPush, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusPush, orderAmount, saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusPush.getIncomeStatus()) { + cuMemberBonus.setDirectIncome(ComputeUtil.computeAdd(cuMemberBonus.getDirectIncome(), cuMemberBonusPush.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusPush); + } + cuMemberBonusPushList.add(cuMemberBonusPush); + } + + /** + * 计算见点收益 -- 商城专区 + */ + private void calculateRepurDirectIncome(List cuMemberBonusPushList, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt, + BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { + // 推荐人 + long pkParent = sourceMember.getPkParent(); + // 代数 + int algebra = 0; + + while (true) { + if (algebra >= RetailConstants.REPUR_DIRECT_ALGEBRA) { + // 20代拿完,则结束 + break; + } + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 推荐人不存在则结束 + log.warn("见点收益:订单会员血缘上推荐人不存在, pkParent: {}", sourceMember.getPkParent()); + break; + } + // 死点 或 停算收益 或 顾客 没有奖金 + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EIncomeStatus.STOP_INCOME.getValue() == targetMember.getIncomeStatus() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + // 非正常会员、停止收益、停算收益,直接跳过 + log.warn("见点收益:订单会员血缘上推荐人不满足计算奖金条件, memberCode: {}", targetMember.getMemberCode()); + return; + } + pkParent = targetMember.getPkParent(); + + // 订单业绩 + BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); + // 奖金金额 + BigDecimal bonusIncome = orderAchieve.multiply(RetailConstants.DIRECT_BONUS_RATIO); + + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + + // 直推奖金明细 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.REPUR_DIRECT_INCOME.getValue()); + // 直推收益明细 + CuMemberBonusPush cuMemberBonusPush = getCuMemberBonusPush(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusPush.setCalAchieve(orderAchieve); + cuMemberBonusPush.setCalValue(RetailConstants.DIRECT_BONUS_RATIO); + cuMemberBonusPush.setPretaxIncome(bonusIncome); + repurDirectIncomeRemark(saOrderExt, cuMemberBonusPush, sourceMember, targetMember, algebra); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusPush, orderAchieve, saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusPush.getIncomeStatus()) { + cuMemberBonus.setGlobalPoints(ComputeUtil.computeAdd(cuMemberBonus.getGlobalPoints(), cuMemberBonusPush.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusPush); + } + cuMemberBonusPushList.add(cuMemberBonusPush); + + // 代数 + 1 + algebra++; + } + } + + /** + * 获取直推、见点收益信息 + */ + CuMemberBonusPush getCuMemberBonusPush(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusPush cuMemberBonusPush = CuMemberBonusPush.builder() .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(saOrderExt.getPkId()) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.RATIO.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) .pretaxIncome(BigDecimal.ZERO) .incomeTax(BigDecimal.ZERO) .realIncome(BigDecimal.ZERO) + .round(-1) + .second(-1) .incomeRatio(BigDecimal.ZERO) .incomeDialRatio(BigDecimal.ZERO) .orderDialRatio(BigDecimal.ZERO) .build(); - cuMemberBonusDetail.setPkCountry(pkCountry); - cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusDetail; + cuMemberBonusPush.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusPush.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusPush; } /** - * 获取手动激活map - * - * @param settleStartDate - * @return + * 计算一阶段收益 -- 精品专区、商城专区 */ - private Map getActivateMap(Date settleStartDate) { - // 当期的手动激活的记录列表 - List activateList = iCuMemberServiceLogServiceApi.listActivateLog(settleStartDate).getData(); - return activateList.stream() - .collect(Collectors.groupingBy( - CuMemberServiceLog::getPkMember, - Collectors.collectingAndThen( - Collectors.minBy(Comparator.comparing(CuMemberServiceLog::getCreationTime)), - optional -> optional.get().getCreationTime() - ) - )); + private List calculateStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, Map memberRangeExtMap, + CuMemberRetailRangeExt sourceMember, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName) { + List returnRetailDetailList = new ArrayList<>(); + + // 订单生成新点位数量 + int newPointInt; + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区按订单金额计算 + BigDecimal orderAmount = saOrderExt.getOrderAmount(); + // 订单金额除50取整,为新増点位数量 + newPointInt = orderAmount.divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + if (orderAmount.compareTo(BonusConstants.GIFT_TWO_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 2) { + // 首次订单金额大于等于2万,每个点位完成三阶段赠送2个点位 + sourceMember.setGiftPoint(2); + } else if (orderAmount.compareTo(BonusConstants.GIFT_ONE_AMOUNT) >= 0 && sourceMember.getGiftPoint() < 1) { + // 首次订单金额大于等于1万,每个点位完成三阶段赠送1个点位 + sourceMember.setGiftPoint(1); + } + } else { + // 商城专区按累计业绩处理 + BigDecimal repPvBalance = sourceMember.getRepPvBalance().add(saOrderExt.getOrderAchieve()); + newPointInt = repPvBalance.divide(RetailConstants.POINT_VAL, 0, RoundingMode.DOWN).intValue(); + sourceMember.setRepPvBalance(repPvBalance.subtract(RetailConstants.POINT_VAL.multiply(new BigDecimal(newPointInt)))); + } + if (newPointInt == 0) { + // 当前订单不足生成点位 + return returnRetailDetailList; + } + // 赠送点位 + int pointGift = sourceMember.getGiftPoint(); + + // 会员一阶段子点位列表 + LinkedHashMap detailList = sourceMember.getOneDetailMap(); + if (null == detailList) { + detailList = new LinkedHashMap<>(); + sourceMember.setOneDetailMap(detailList); + sourceMember.setTwoDetailMap(new LinkedHashMap<>()); + sourceMember.setThreeDetailMap(new LinkedHashMap<>()); + } + // 当前会员子点位总数 + int pointCount = sourceMember.getPointCount(); + for (int i = 1; i <= newPointInt; i++) { + // 订单会员生成的新点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.NORMAL.getValue()) + .pointGift(pointGift) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build(); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + + // 处理阶段点位填充(一阶段) + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, + sourceMember, newRetailDetail, returnRetailDetailList); + } + pointCount += newPointInt; + sourceMember.setPointCount(pointCount); + + // 待激活点位 + int waitPointCount = sourceMember.getWaitPointCount(); + if (waitPointCount != 0) { + int giftNewPointInt = 0; + for (int i = 1; i <= newPointInt; i++) { + if (waitPointCount > 0) { + // 购买一个点位,激活一个待激活点位 + CuMemberRetailDetail newRetailDetail = CuMemberRetailDetail.builder() + .pkMember(sourceMember.getPkMember()) + .childNode(pointCount + i) + .pkParent(sourceMember.getPkParent()) + .stage(EBonusStage.ONE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(EBonusStageType.GIFT.getValue()) + .pointGift(0) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build(); + detailList.put(newRetailDetail.getChildNode(), newRetailDetail); + + // 处理阶段点位填充(一阶段赠点) + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE, + sourceMember, newRetailDetail, returnRetailDetailList); + + waitPointCount = waitPointCount - 1; + giftNewPointInt += 1; + } else { + break; + } + } + sourceMember.setPointCount(sourceMember.getPointCount() + giftNewPointInt); + sourceMember.setWaitPointCount(waitPointCount); + } + return returnRetailDetailList; } /** - * 处理复购级差 + * 计算二、三阶段收益 */ - private List calculateRepurchaseRangeBonus(SaOrderExt saOrderExt, Map memberRangeExtMap, - Map> vertexBonusMap, Map> rangeOrderMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap) { - // 直推级差返回数据 - List memberBonusRangeList = new ArrayList<>(); - // 订单会员 - CuMemberRetailRangeExt sourceMemberRangeExt = memberRangeExtMap.get(saOrderExt.getPkMember()); + private List calculateStageIncomeTwoThree(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage, + List stageList) { + List returnRetailDetailList = new ArrayList<>(); + for (CuMemberRetailDetail memberRetailDetail : stageList) { + // 订单会员 + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(memberRetailDetail.getPkMember()); + if (null == sourceMember) { + log.error("阶段收益处理失败,{} 会员不存在. pkMember: {}", eBonusStage.getLabel(), memberRetailDetail.getPkMember()); + return returnRetailDetailList; + } - List vertexBonusList = vertexBonusMap.get(sourceMemberRangeExt.getPkVertex()); - if (CollectionUtil.isNotEmpty(vertexBonusList)) { - // 存在体系奖项 - for (Integer bonusItems : vertexBonusList) { - if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItems) { - // 复购级差收益(key:会员ID,value:复购级差收益) - Map bonusIncomeMap = new HashMap<>(); + // 处理阶段点位填充 + this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period, + memberRangeExtMap, null, settleDate, rangeTableName, rangeDetailTableName, eBonusStage, + sourceMember, memberRetailDetail, returnRetailDetailList); + } + return returnRetailDetailList; + } - List saOrderItemsExtList = rangeOrderMap.get(saOrderExt.getPkId()); - for (SaOrderItemsExt saOrderItemsExt : saOrderItemsExtList) { - // 级别值比当前等级高的级差数据列表 - Map itemsRangePriceMap = saOrderItemsExt.getWaresRangeTmpList().stream() - .collect(Collectors.toMap(WaresRangeTmp::getRangeValue, WaresRangeTmp::getRangePrice)); + /** + * 处理阶段收益(一、二、三阶段) + */ + private void handleStageIncome(List cuMemberBonusStageList, Map cuMemberBonusMap, + BonusConfigDTO bonusConfigDTO, Integer period, + Map memberRangeExtMap, SaOrderExt saOrderExt, + Date settleDate, String rangeTableName, String rangeDetailTableName, EBonusStage eBonusStage, + CuMemberRetailRangeExt sourceMember, CuMemberRetailDetail newRetailDetail, + List returnRetailDetailList) { + // 阶段奖金处理列表 + List bonusStageDataList = new ArrayList<>(); - // 临时价格(跟着每一次变动) - BigDecimal tmpPrice = saOrderItemsExt.getPrice(); - // 推荐人 - long pkParent = sourceMemberRangeExt.getPkParent(); - // 计算级差 - while (true) { - // 推荐人 - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(pkParent); - if (null == targetMemberRangeExt) { - break; - } - // 上一级推荐人 - pkParent = targetMemberRangeExt.getPkParent(); + boolean giftBool = false; + if (EBonusStageType.GIFT.getValue() == newRetailDetail.getPointType()) { + // 赠送点位处理,赠送点位给自己直推会员轮流布点 + iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap, + sourceMember, eBonusStage); + // 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充 + LinkedHashMap childRetailMap = sourceMember.getChildRetailMap(); + if (childRetailMap.size() > 0) { + // 获取最后一条数据 key + Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1); + // 获取最新的会员注册时间,如果没有则设置一个初始化时间 + Date giftPayTime = sourceMember.getGiftPayTime(); + if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) { + giftPayTime = BonusConstants.GIFT_PAY_TIME; + } - if (EAccountStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getAccountStatus() - || ECategory.NORMAL.getValue() != targetMemberRangeExt.getCategory() - || targetMemberRangeExt.getEnableStatus() == EYesNo.NO.getIntValue() - || targetMemberRangeExt.getGradeValue() == EGrade.START_UP.getValue() - || EIncomeStatus.STOP_INCOME.getValue() == targetMemberRangeExt.getIncomeStatus()) { - // 停算收益、非正常会员、未激活、等级为顾客、停止收益,直接跳过 - continue; - } - // 当前会员等级值 - Integer calGradeValue = EAwards.getGradeValueByValue(targetMemberRangeExt.getGradeValue()); - // 当前会员的级差价格 - BigDecimal targetRangePrice = itemsRangePriceMap.get(calGradeValue); - if (targetRangePrice.compareTo(tmpPrice) < 0) { - // 当前级差价格比上一次的低 - // 差价就是级差收益 - BigDecimal bonusIncome; - if (bonusIncomeMap.containsKey(targetMemberRangeExt.getPkMember())) { - bonusIncome = bonusIncomeMap.get(targetMemberRangeExt.getPkMember()).add(tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity()))); - } else { - bonusIncome = tmpPrice.subtract(targetRangePrice).multiply(new BigDecimal(saOrderItemsExt.getWaresQuantity())); - } + for (Date keyDate : childRetailMap.keySet()) { + if (keyDate.compareTo(giftPayTime) > 0) { + // 当前会员注册比之前的要晚,则顺序进行填充 + giftPayTime = keyDate; + // 需要填充的直推会员 + CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate); - bonusIncomeMap.put(targetMemberRangeExt.getPkMember(), bonusIncome); - // 临时价格更新 - tmpPrice = targetRangePrice; - } + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EIncomeStatus.STOP_INCOME.getValue() == targetMember.getIncomeStatus() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + // 非正常会员、停止收益、停算收益,直接跳过 + log.warn("阶段收益:订单会员推荐人不满足计算奖金条件, memberCode: {}", targetMember.getMemberCode()); + continue; + } - // 最高等级则退出 - if (calGradeValue == EGrade.S_VIP.getValue()) { - break; - } + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = targetMember.getOneDetailMap(); + if (CollectionUtil.isEmpty(parentDetailList)) { + continue; + } + + // 推荐人第一层点位处理 + giftBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第二层点位处理 + giftBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第三层点位处理 + giftBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (giftBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; } } + } + if (giftBool) { + sourceMember.setGiftPayTime(giftPayTime); + } + } + } - if (bonusIncomeMap.size() > 0) { - for (Long key : bonusIncomeMap.keySet()) { - // 复购级差收益 - BigDecimal rangeBonusIncome = bonusIncomeMap.get(key); - if (rangeBonusIncome.compareTo(BigDecimal.ZERO) > 0) { - CuMemberRetailRangeExt targetMemberRangeExt = memberRangeExtMap.get(key); - // 处理复购级差收益 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMemberRangeExt.getPkMember(), - targetMemberRangeExt.getIncomeStatus(), targetMemberRangeExt.getPkSettleCountry(), targetMemberRangeExt.getPkRate() == null ? saOrderExt.getPkRate() : targetMemberRangeExt.getPkRate()); - int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberRangeExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()); - CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMemberRangeExt, cuMemberBonus, pkBonusItems); - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setCalAchieve(saOrderExt.getOrderAmount()); - cuMemberBonusRange.setPretaxIncome(rangeBonusIncome); - cuMemberBonusRange.setPkRange(targetMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkBeforeRange(sourceMemberRangeExt.getPkGrade()); - cuMemberBonusRange.setPkOrder(saOrderExt.getPkId()); - cuMemberBonusRange.setPkOrderItems(0L); - rangeRepurchaseRetailRemark(saOrderExt, cuMemberBonusRange, sourceMemberRangeExt, targetMemberRangeExt); - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - memberBonusRangeList.add(cuMemberBonusRange); - } - } + if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType() + || !giftBool) { + // 普通点位处理 + // 推荐人 + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + // 没有推荐人了,则直接结束 + break; + } + pkParent = targetMember.getPkParent(); + + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EIncomeStatus.STOP_INCOME.getValue() == targetMember.getIncomeStatus() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + // 非正常会员、停止收益、停算收益,直接跳过 + log.warn("阶段收益:订单会员推荐人不满足计算奖金条件, memberCode: {}", targetMember.getMemberCode()); + continue; + } + + // 推荐人一阶段子点位列表 + LinkedHashMap parentDetailList = null; + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + parentDetailList = targetMember.getThreeDetailMap(); + } + if (CollectionUtil.isEmpty(parentDetailList)) { + // 推荐人没有未完成点位,继续往上找 + continue; + } + + // 推荐人第一层点位处理 + boolean forBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第一层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第二层点位处理 + forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第二层找到并填充点位,就开始下一个点位的处理 + break; + } + // 推荐人第三层点位处理 + forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName, + memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList); + if (forBool) { + // 在第三层找到并填充点位,就开始下一个点位的处理 + break; + } + } + } + + if (CollectionUtil.isNotEmpty(bonusStageDataList)) { + // 有需要生成奖金的数据 + for (BonusStageData bonusStageData : bonusStageDataList) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(bonusStageData.getTargetPkMember()); + // 会员奖金数据 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), targetMember.getIncomeStatus(), + targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? (saOrderExt != null ? saOrderExt.getPkRate() : 0) : targetMember.getPkRate()); + // 阶段奖金 + int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.STAGE_INCOME.getValue()); + // 阶段收益明细 + CuMemberBonusStage cuMemberBonusStage = iCuMemberBonusStageService.getCuMemberBonusStage(saOrderExt, targetMember, cuMemberBonus, pkBonusItem); + cuMemberBonusStage.setPretaxIncome(bonusStageData.getBonusIncome()); + cuMemberBonusStage.setChildNode(bonusStageData.getTargetChildNode()); + cuMemberBonusStage.setStage(bonusStageData.getStage()); + cuMemberBonusStage.setStageNum(bonusStageData.getStageNum()); + cuMemberBonusStage.setPkSourceMember(sourceMember.getPkMember()); + stageIncomeRemark(saOrderExt, cuMemberBonusStage, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusStage, saOrderExt != null ? saOrderExt.getOrderAmount() : null, saOrderExt != null ? saOrderExt.getInExchangeRate() : null); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusStage.getIncomeStatus()) { + cuMemberBonus.setStoreIncome(ComputeUtil.computeAdd(cuMemberBonus.getStoreIncome(), cuMemberBonusStage.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusStage); + } + cuMemberBonusStageList.add(cuMemberBonusStage); + + // 升阶段数据 + if (EBonusStage.ONE.getValue() == bonusStageData.getStage()) { + // 一阶段需要处理升阶段 + CuMemberRetailDetail twoRetailDetail = bonusStageData.getTwoRetailDetail(); + targetMember.getTwoDetailMap().put(twoRetailDetail.getChildNode(), twoRetailDetail); + returnRetailDetailList.add(twoRetailDetail); + } else if (EBonusStage.TWO.getValue() == bonusStageData.getStage()) { + // 二阶段需要处理升阶段 + CuMemberRetailDetail threeRetailDetail = bonusStageData.getThreeRetailDetail(); + targetMember.getThreeDetailMap().put(threeRetailDetail.getChildNode(), threeRetailDetail); + returnRetailDetailList.add(threeRetailDetail); + } else if (EBonusStage.THREE.getValue() == bonusStageData.getStage()) { + // 三阶段填充满,判断是否需要赠送点位 + if (bonusStageData.getPointGift() != 0) { + // 需要添加赠送的待激活点位 + targetMember.setWaitPointCount(targetMember.getWaitPointCount() + bonusStageData.getPointGift()); } } } } - return memberBonusRangeList; } + /** + * 查找血缘上所有会员 + */ + private List findParent(Map memberRangeExtMap, List pkMemberList) { + List resultList = new ArrayList<>(); + for (Long pkMember : pkMemberList) { + CuMemberRetailRangeExt sourceMember = memberRangeExtMap.get(pkMember); + resultList.add(sourceMember.getPkMember()); + + Long pkParent = sourceMember.getPkParent(); + while (true) { + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + resultList.add(targetMember.getPkMember()); + pkParent = targetMember.getPkParent(); + } + } + return resultList; + } + +// /** +// * 计算奖衔 +// */ +// private void calculateAwards(Integer period, Map memberRangeExtMap, String rangeTableName, +// SaOrderExt saOrderExt, Map retailAwardsMap, List cuMemberAwardsList, +// CuMemberRetailRangeExt targetMember) { +// // 校验大小区会员数据 +// List cuMemberRangeExtList = null; +// // 计算分红奖衔 +// while (true) { +// // 当月奖衔值 + 5,获取下一个奖衔值 +// int awardsValue = targetMember.getAwardsValue() + 5; +// if (retailAwardsMap.containsKey(awardsValue)) { +// BdAwards bdAwards = retailAwardsMap.get(awardsValue); +// +// if (ComputeUtil.compareValue(targetMember.getTeamConsumePv(), bdAwards.getTotalCheck())) { +// // 团队累计业绩 >= 奖衔累计业绩 +// if (null == cuMemberRangeExtList) { +// // 昨日结算表,查询会员直推数据 +// cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); +// } +// // 大区 +// BigDecimal consumeBigPv = BigDecimal.ZERO; +// for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { +// if (memberRangeExtMap.containsKey(cuMemberRetailRangeExt.getPkMember())) { +// cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember()); +// } +// // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 +// BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); +// if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { +// // 累计业绩 > 大区业绩,则累计就成为大区 +// consumeBigPv = consumePv; +// } +// } +// // 小区业绩 = 团队累计业绩 - 大区业绩 +// BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); +// if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { +// // 小区业绩 >= 考核小区业绩 +// if (bdAwards.getPlaceDeptNum() > 0) { +// // 验证每条血缘下,满足达标数量 +// List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), +// cuMemberRangeExtList.stream().map(CuMemberRetailRangeExt::getPkMember).collect(Collectors.toList())); +// if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); +// targetMember.setPkAwards(bdAwards.getPkId()); +// targetMember.setAwardsValue(bdAwards.getAwardsValue()); +// continue; +// } +// } else { +// // 不需要考核血缘达标,直接给奖衔 +// cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, saOrderExt, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards())); +// targetMember.setPkAwards(bdAwards.getPkId()); +// targetMember.setAwardsValue(bdAwards.getAwardsValue()); +// continue; +// } +// } +// } +// } +// break; +// } +// } + + /** + * 计算团队数据 + */ + private void calculateParentDate(Map memberRangeExtMap, CuMemberRetailRangeExt sourceMember, + SaOrderExt saOrderExt) { + // 订单会员的推荐人 + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(sourceMember.getPkParent()); + + BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); + BigDecimal orderAmount = saOrderExt.getOrderAmount(); + while (null != targetMember) { + // 累计业绩 + targetMember.setTeamNewPv(targetMember.getTeamNewPv().add(orderAchieve)); + targetMember.setTeamMonthPv(targetMember.getTeamMonthPv().add(orderAchieve)); + // 累计金额 + targetMember.setTeamNewAmount(targetMember.getTeamNewAmount().add(orderAmount)); + targetMember.setTeamMonthAmount(targetMember.getTeamMonthAmount().add(orderAmount)); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() + ) { + // 团队精品专区 + targetMember.setRegTeamNewPv(targetMember.getRegTeamNewPv().add(orderAchieve)); + targetMember.setRegTeamNewAmount(targetMember.getRegTeamNewAmount().add(orderAmount)); + } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() + || EOrderType.DISCOUNT_ORDER.getValue() == saOrderExt.getOrderType()) { + // 团队商城专区 + targetMember.setRepTeamNewPv(targetMember.getRepTeamNewPv().add(orderAchieve)); + targetMember.setRepTeamNewAmount(targetMember.getRepTeamNewAmount().add(orderAmount)); + } + targetMember = memberRangeExtMap.get(targetMember.getPkParent()); + } + } + + + /** + * 计算领导奖、平级奖 + */ + private void calculateRetailRangeBonus(List cuMemberBonusRangeList, Map memberRangeExtMap, + Map cuMemberBonusMap, BonusConfigDTO bonusConfigDTO, Integer period, + Map awardsMap, SaOrderExt saOrderExt, CuMemberRetailRangeExt sourceMember) { + // 订单PV + BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { + // 精品专区、甄选专区,最大值为350PV超过的也算350PV + if (orderAchieve.compareTo(BonusConstants.RANGE_BONUS_ACHIEVE) > 0) { + orderAchieve = BonusConstants.RANGE_BONUS_ACHIEVE; + } + } + + // 领导奖从自己开始算 + long pkParent = sourceMember.getPkMember(); + + // 前一个会员奖衔 + int beforeAwardsValue = 0; + // 前一个会员级差比例 + BigDecimal beforeRangeRatio = BigDecimal.ZERO; + // 前一个会员等级的平级收益人数 + int beforeSameAlgebra = 0; + // 计算直推级差 + while (true) { + // 推荐人 + CuMemberRetailRangeExt targetMember = memberRangeExtMap.get(pkParent); + if (null == targetMember) { + break; + } + // 推荐人的推荐人 + pkParent = targetMember.getPkParent(); + + if (ECategory.NORMAL.getValue() != targetMember.getCategory() + || EIncomeStatus.STOP_INCOME.getValue() == targetMember.getIncomeStatus() + || EAccountStatus.STOP_INCOME.getValue() == targetMember.getAccountStatus()) { + // 非正常会员、停止收益、停算收益,直接跳过 + log.warn("领导奖或平级奖收益:订单会员推荐人不满足计算奖金条件, memberCode: {}", targetMember.getMemberCode()); + continue; + } + // 当前会员奖衔值 + int calAwardsValue = targetMember.getAwardsValue(); + // 当前会员奖衔 + BdAwards bdAwards = awardsMap.get(calAwardsValue); + + // 领导奖级差税前收益 + BigDecimal rangeBonusIncome = null; + // 领导奖平级税前收益 + BigDecimal sameBonusIncome = null; + + if (calAwardsValue > beforeAwardsValue) { + // 当前会员奖衔值大于前一个奖衔值,会有领导奖级差 + rangeBonusIncome = orderAchieve.multiply(bdAwards.getRangeRatio().subtract(beforeRangeRatio)); + + beforeRangeRatio = bdAwards.getRangeRatio(); + beforeAwardsValue = calAwardsValue; + } else if (EAwards.GLOBAL_CHAIRMAN.getValue() == beforeAwardsValue && beforeSameAlgebra < 3 + && EOrderType.DISCOUNT_ORDER.getValue() != saOrderExt.getOrderType()) { + // 前一个等级是皇冠大使,需要有3代平级(五折专区不走平级收益) + sameBonusIncome = orderAchieve.multiply(BonusConstants.SAME_LEVEL_RATIO).multiply(bdAwards.getSameLevelRatio()); + beforeSameAlgebra += 1; + } + + if (null != rangeBonusIncome) { + // 处理领导奖收益 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), + targetMember.getIncomeStatus(), targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.RANGE_INCOME.getValue()); + CuMemberBonusRange cuMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMember, cuMemberBonus, pkBonusItems); + cuMemberBonusRange.setCalValue(bdAwards.getRangeRatio()); + cuMemberBonusRange.setPkRange(targetMember.getPkAwards()); + cuMemberBonusRange.setPkBeforeRange(sourceMember.getPkAwards()); + cuMemberBonusRange.setPretaxIncome(rangeBonusIncome); + rangeRetailRemark(saOrderExt, cuMemberBonusRange, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { + cuMemberBonus.setRetailRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailRangeIncome(), cuMemberBonusRange.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); + } + cuMemberBonusRangeList.add(cuMemberBonusRange); + } + if (null != sameBonusIncome) { + // 处理平级奖收益 + CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, targetMember.getPkMember(), + targetMember.getIncomeStatus(), targetMember.getPkSettleCountry(), targetMember.getPkRate() == null ? saOrderExt.getPkRate() : targetMember.getPkRate()); + int pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMember.getPkSettleCountry(), EBonusItems.SAME_LEVEL_INCOME.getValue()); + CuMemberBonusRange sameLevelMemberBonusRange = getCuMemberRetailBonusRange(saOrderExt, targetMember, cuMemberBonus, pkBonusItems); + sameLevelMemberBonusRange.setCalValue(BonusConstants.SAME_LEVEL_RATIO.multiply(bdAwards.getSameLevelRatio())); + sameLevelMemberBonusRange.setPkRange(targetMember.getPkAwards()); + sameLevelMemberBonusRange.setPkBeforeRange(sourceMember.getPkAwards()); + sameLevelMemberBonusRange.setPretaxIncome(sameBonusIncome); + saveLevelRetailRangeRemark(saOrderExt, sameLevelMemberBonusRange, sourceMember, targetMember); + BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, sameLevelMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); + if (EBonusIncomeStatus.NORMAL.getValue() == sameLevelMemberBonusRange.getIncomeStatus()) { + cuMemberBonus.setRetailSameLevelIncome(ComputeUtil.computeAdd(cuMemberBonus.getRetailSameLevelIncome(), sameLevelMemberBonusRange.getPretaxIncome())); + setRetailTotal(bdBonusDeduct, cuMemberBonus, sameLevelMemberBonusRange); + } + cuMemberBonusRangeList.add(sameLevelMemberBonusRange); + } + + if (EOrderType.DISCOUNT_ORDER.getValue() != saOrderExt.getOrderType() + && EAwards.GLOBAL_CHAIRMAN.getValue() == beforeAwardsValue && beforeSameAlgebra >= 3) { + // 非五折专区,有领导奖、平级奖,本次奖衔是最高,并且已经拿满3次,直接退回 + break; + } else if (EOrderType.DISCOUNT_ORDER.getValue() == saOrderExt.getOrderType() + && EAwards.GLOBAL_CHAIRMAN.getValue() == beforeAwardsValue) { + // 五折专区,只有领导奖,本次奖衔是最高,直接退回 + break; + } + } + } + + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java index 4e499148..c5187eb5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleServiceImpl.java @@ -1,19 +1,24 @@ package com.hzs.bonus.bonus.service.impl; +import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.base.service.IBdVertexBonusService; +import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; -import com.hzs.bonus.detail.service.ICuRegionAssessService; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.*; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.report.order.IPerformanceSummaryServiceApi; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; import lombok.extern.slf4j.Slf4j; @@ -24,6 +29,7 @@ import org.springframework.transaction.annotation.Transactional; import java.time.temporal.ChronoUnit; import java.util.*; +import java.util.stream.Collectors; /** * 奖金结算服务类 @@ -34,29 +40,29 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @DubboReference IBonusItemsServiceApi iBonusItemsServiceApi; + @DubboReference + IPerformanceSummaryServiceApi iPerformanceSummaryServiceApi; @Autowired private IBonusOrderService iBonusOrderService; @Autowired - private ICuRegionAssessService cuRegionAssessService; - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - @Autowired private BonusSettleRangeHandle bonusSettleRangeHandle; @Autowired - private ICuMemberBonusService cuMemberBonusService; + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @Autowired - private ICuMemberBonusPushService cuMemberBonusPushService; + private ICuMemberBonusService iCuMemberBonusService; @Autowired - private ICuMemberBonusExpandService cuMemberBonusExpandService; + private ICuMemberBonusPushService iCuMemberBonusPushService; @Autowired - private ICuMemberBonusCoachService cuMemberBonusCoachService; + private ICuMemberBonusStageService iCuMemberBonusStageService; @Autowired - private ICuMemberBonusDetailService cuMemberBonusDetailService; + private ICuMemberBonusRangeService iCuMemberBonusRangeService; @Autowired - private ICuMemberBonusRangeService cuMemberBonusRangeService; + private ICuMemberBonusDetailService iCuMemberBonusDetailService; @Autowired - private IBdVertexBonusService iBdVertexBonusService; + private ICuMemberRetailRangeService iCuMemberRetailRangeService; + @Autowired + private ICuMemberService iCuMemberService; /** @@ -69,24 +75,22 @@ public class BonusSettleServiceImpl implements IBonusSettleService { List cuMemberBonusList = setCuMemberBonusSeq(settleDate, cuMemberBonusMap); if (cuMemberBonusList.size() > 0) { // 插入奖金主表 - cuMemberBonusService.insertOrUpdateCuMemberBonus(cuMemberBonusList); - List cuMemberBonuses = cuMemberBonusService.queryCuMemberBonus(period, cuMemberBonusList); + iCuMemberBonusService.insertOrUpdateCuMemberBonus(cuMemberBonusList); + List cuMemberBonuses = iCuMemberBonusService.queryCuMemberBonus(period, cuMemberBonusList); cuMemberBonuses.forEach(cuMemberBonus -> cuMemberBonusMap.put(cuMemberBonus.getPkMember(), cuMemberBonus)); } } @Override @Transactional(rollbackFor = Exception.class) - public void calculateCuMemberBonus(String settleDate, List saOrderExtList) { + public void calculateCuMemberBonus(String settleDate) { try { // 结算期间 - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + Integer period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); String yesterday = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, settleDate); // 结算期间前一天期间 - Integer yesterdayPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId(); + Integer yesterdayPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId(); - // 将删除的订单的点位变为死点 - //********************************* 更新当天最新的业绩*************************/ // 获取所有国家的奖金项 key = 国家 + 奖金项的值 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 会员奖金map(key:会员ID, @@ -95,40 +99,23 @@ public class BonusSettleServiceImpl implements IBonusSettleService { BonusRecordDetailVO recordDetailVO = new BonusRecordDetailVO(); // 今天和昨天是否同月 Boolean isSameMonth = DateUtils.getMonth(settleDate).equals(DateUtils.getMonth(yesterday)); - // 查询体系奖项配置 - Map> vertexBonusMap = iBdVertexBonusService.queryVertexBonus(); - // 计算新零售团队奖金 - bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, recordDetailVO, - period, yesterdayPeriod, isSameMonth, vertexBonusMap); + // 计算奖金 + bonusSettleRangeHandle.calculateRetailBonusByDay(settleDate, cuMemberBonusMap, bonusConfigDTO, + recordDetailVO, period, yesterdayPeriod, isSameMonth); - // new 每月1号,需要计算4个月奖 - if (EEnv.TEST.getValue().equals(BdConfig.getEnv())) { - // 测试环境,每天都执行 - // 计算新零售团队福利、福利分红等奖金 - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } else { - // 非测试环境 - if (settleDate.endsWith("01")) { - // 计算新零售团队福利、福利分红等奖金 - log.info("正式处理:{}", settleDate); - bonusSettleRangeHandle.calculateRetailShareBonus(settleDate, bonusConfigDTO, period, recordDetailVO, cuMemberBonusMap); - } - } - - Date currentDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.parseStringToDate(settleDate)); - String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate); - if (afterDate.endsWith("01")) { - // 计算完月奖,计算考核(区域6个月要达到蓝宝以上) - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - } // 保存当日计算的奖金 insertCuMemberBonus(settleDate, period, cuMemberBonusMap, recordDetailVO); } catch (Exception e) { log.error("奖金结算异常", e); throw new RuntimeException(e); } + try { + // 调用统计业绩汇总接口 + iPerformanceSummaryServiceApi.createDataByDay(settleDate); + } catch (Exception e) { + log.error("每日数据业绩汇总异常", e); + } } @Override @@ -136,7 +123,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 查询奖金参数 BonusConfigDTO bonusConfigDTO = iBonusItemsServiceApi.queryBonusConfigDTO().getData(); // 需要处理的订单 - List retailOrderList = iBonusOrderService.queryRetailSaOrderByDay(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode); + List retailOrderList = iBonusOrderService.listRetailSaOrder(DateUtils.beforeDate(6, ChronoUnit.DAYS), DateUtils.afterDate(1, ChronoUnit.DAYS), orderCode, null); if (CollectionUtil.isNotEmpty(retailOrderList)) { // 会员奖金map @@ -147,10 +134,10 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 处理奖金结算秒结表,判断是否存在当天结算的秒接表,从cu_member中获取网体,从昨日结算表中获取累计、结余数据 // 今天结算期数 String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, saOrderExt.getPayTime()); - int currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + int currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); // 昨天结算期数 String beforeDay = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS, saOrderExt.getPayTime())); - int beforePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDay).getPkId(); + int beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDay).getPkId(); // 秒结表名 String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; @@ -158,37 +145,70 @@ public class BonusSettleServiceImpl implements IBonusSettleService { // 订单下单处理(正向) // 会员奖金明细 List cuMemberBonusDetailList = new ArrayList<>(); - // 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖) + // 实时计算秒结数据(业绩、等级、奖衔、日奖) List cuMemberBonusRangeList = bonusSettleRangeHandle.calculateCuMemberRetailRangeBonusBySecond(settleDate, saOrderExt, bonusConfigDTO, secondRangeTableName, beforePeriod, currentPeriod, cuMemberBonusMap, cuMemberBonusDetailList); saveCuMemberBonus(currentPeriod, settleDate, cuMemberBonusMap); - Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(currentPeriod); + Set memberIdSet = iCuMemberBonusService.queryMemberBonusByPeriod(currentPeriod); if (cuMemberBonusRangeList.size() > 0) { cuMemberBonusRangeList.forEach(cuMemberBonusRange -> cuMemberBonusRange.setPkBonus(cuMemberBonusMap.get(cuMemberBonusRange.getPkBonus()).getPkId())); - cuMemberBonusRangeService.batchInsertCuMemberBonusRange(cuMemberBonusRangeList, memberIdSet); + iCuMemberBonusRangeService.batchInsertCuMemberBonusRange(cuMemberBonusRangeList, memberIdSet); } if (cuMemberBonusDetailList.size() > 0) { cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); - cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(cuMemberBonusDetailList, memberIdSet); + iCuMemberBonusDetailService.batchInsertCuMemberBonusDetail(cuMemberBonusDetailList, memberIdSet); } } else { // 订单撤单处理(逆向) if (!DateUtils.isSameDay(saOrderExt.getPayTime(), DateUtils.currentDate())) { settleDate = DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS)); - currentPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); } - // 实时计算撤单数据(业绩、盒数、等级、奖衔、日奖) + // 实时计算撤单数据(业绩、等级、奖衔、日奖) bonusSettleRangeHandle.calculateCuMemberBackRetailIncome(saOrderExt, bonusConfigDTO, secondRangeTableName, beforePeriod, currentPeriod); // 处理收益 - cuMemberBonusService.mergeBackMemberBonusIncome(saOrderExt.getPkId()); + iCuMemberBonusService.mergeBackMemberBonusIncome(saOrderExt.getPkId()); } } } + @Override + public void calculateCuMemberRetailRangeBySaOrder(SaOrderExt orderExt) { + Integer updateType = null; + String symbol = orderExt.getCancelBool() ? "-" : "+"; + if (orderExt.getOrderType().equals(EOrderType.RETAIL_REGISTER.getValue()) + || orderExt.getOrderType().equals(EOrderType.RETAIL_UPGRADE.getValue()) + ) { + updateType = 1; + } else if (orderExt.getOrderType().equals(EOrderType.RETAIL_REPURCHASE.getValue())) { + updateType = 2; + } + if (ObjectUtil.isEmpty(updateType)) { + return; + } + // 今天结算期数 + String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, orderExt.getPayTime()); + int currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); + // 秒结表名 + String secondRangeTableName = TableNameConstants.CU_MEMBER_RETAIL_S + currentPeriod; + List memberList = iCuMemberRetailRangeService.findParentMemberList(orderExt.getPkMember()); + CuMember self = iCuMemberService.getByPkId(orderExt.getPkMember()); + CuMemberExt initSelf = new CuMemberExt(); + BeanUtil.copyProperties(self, initSelf); + List initMemberList = new ArrayList<>(); + initMemberList.add(initSelf); + initMemberList.addAll(memberList); + for (CuMemberExt memberExt : initMemberList) { + iCuMemberRetailRangeService.initMemberRetailSecondRange(secondRangeTableName, memberExt); + } + iCuMemberRetailRangeService.updateMemberRetailSecondRangeSelf(secondRangeTableName, orderExt, self, updateType, symbol); + iCuMemberRetailRangeService.updateMemberRetailSecondRangeParent(secondRangeTableName, orderExt, memberList, updateType, symbol); + } + /** * 计算每天的奖金入库 * @@ -196,63 +216,40 @@ public class BonusSettleServiceImpl implements IBonusSettleService { * @param bonusRecordDetailVO 奖金明细表 */ void insertCuMemberBonus(String settleDate, Integer period, Map cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO) { - cuMemberBonusPushService.deleteCuMemberBonusPush(period); - cuMemberBonusExpandService.deleteCuMemberBonusExpand(period); - cuMemberBonusCoachService.deleteCuMemberBonusCoach(period); - cuMemberBonusDetailService.deleteCuMemberBonusDetail(period); - cuMemberBonusRangeService.deleteCuMemberBonusRange(period); - cuMemberBonusService.deleteCuMemberBonus(period); + iCuMemberBonusPushService.deleteCuMemberBonusPush(period); + iCuMemberBonusStageService.deleteCuMemberBonusStage(period); + iCuMemberBonusRangeService.deleteCuMemberBonusRange(period); + iCuMemberBonusService.deleteCuMemberBonus(period); if (cuMemberBonusMap.size() == 0) { return; } - List batchMemberBonusPushList = new ArrayList<>(); - List batchMemberBonusExpandList = new ArrayList<>(); - List batchMemberBonusCoachList = new ArrayList<>(); - List batchMemberBonusDetailList = new ArrayList<>(); - List batchMemberBonusRangeList = new ArrayList<>(); + List cuMemberBonusList = setCuMemberBonusSeq(settleDate, cuMemberBonusMap); List cuMemberBonusPushList = bonusRecordDetailVO.getCuMemberBonusPushList(); - List cuMemberBonusExpandList = bonusRecordDetailVO.getCuMemberBonusExpandList(); - List cuMemberBonusCoachList = bonusRecordDetailVO.getCuMemberBonusCoachList(); - List cuMemberBonusDetailList = bonusRecordDetailVO.getCuMemberBonusDetailList(); List cuMemberBonusRangeList = bonusRecordDetailVO.getCuMemberBonusRangeList(); + List cuMemberBonusStageList = bonusRecordDetailVO.getCuMemberBonusStageList(); if (cuMemberBonusPushList != null && cuMemberBonusPushList.size() > 0) { cuMemberBonusPushList.forEach(cuMemberBonusPush -> cuMemberBonusPush.setPkBonus(cuMemberBonusMap.get(cuMemberBonusPush.getPkBonus()).getPkId())); - batchMemberBonusPushList.addAll(cuMemberBonusPushList); - } - if (cuMemberBonusExpandList != null && cuMemberBonusExpandList.size() > 0) { - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> - cuMemberBonusExpand.setPkBonus(cuMemberBonusMap.get(cuMemberBonusExpand.getPkBonus()).getPkId())); - batchMemberBonusExpandList.addAll(cuMemberBonusExpandList); - } - if (cuMemberBonusCoachList != null && cuMemberBonusCoachList.size() > 0) { - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> - cuMemberBonusCoach.setPkBonus(cuMemberBonusMap.get(cuMemberBonusCoach.getPkBonus()).getPkId())); - batchMemberBonusCoachList.addAll(cuMemberBonusCoachList); - } - if (cuMemberBonusDetailList != null && cuMemberBonusDetailList.size() > 0) { - cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> - cuMemberBonusDetail.setPkBonus(cuMemberBonusMap.get(cuMemberBonusDetail.getPkBonus()).getPkId())); - batchMemberBonusDetailList.addAll(cuMemberBonusDetailList); } if (cuMemberBonusRangeList != null && cuMemberBonusRangeList.size() > 0) { cuMemberBonusRangeList.forEach(cuMemberBonusRange -> cuMemberBonusRange.setPkBonus(cuMemberBonusMap.get(cuMemberBonusRange.getPkBonus()).getPkId())); - batchMemberBonusRangeList.addAll(cuMemberBonusRangeList); + } + if (cuMemberBonusStageList != null && cuMemberBonusStageList.size() > 0) { + cuMemberBonusStageList.forEach(cuMemberBonusStage -> + cuMemberBonusStage.setPkBonus(cuMemberBonusMap.get(cuMemberBonusStage.getPkBonus()).getPkId())); } // 插入奖金主表 - cuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); - Set memberIdSet = cuMemberBonusService.queryMemberBonusByPeriod(period); - cuMemberBonusPushService.batchInsertCuMemberBonusPush(batchMemberBonusPushList, memberIdSet); - cuMemberBonusExpandService.batchInsertCuMemberBonusExpand(batchMemberBonusExpandList, memberIdSet); - cuMemberBonusCoachService.batchInsertCuMemberBonusCoach(batchMemberBonusCoachList, memberIdSet); - cuMemberBonusDetailService.batchInsertCuMemberBonusDetail(batchMemberBonusDetailList, memberIdSet); - cuMemberBonusRangeService.batchInsertCuMemberBonusRange(batchMemberBonusRangeList, memberIdSet); + iCuMemberBonusService.batchInsertCuMemberBonus(cuMemberBonusList); + Set memberIdSet = iCuMemberBonusService.queryMemberBonusByPeriod(period); + iCuMemberBonusPushService.batchInsertCuMemberBonusPush(cuMemberBonusPushList, memberIdSet); + iCuMemberBonusRangeService.batchInsertCuMemberBonusRange(cuMemberBonusRangeList, memberIdSet); + iCuMemberBonusStageService.batchInsertCuMemberBonusStage(cuMemberBonusStageList, memberIdSet); } private List setCuMemberBonusSeq(String settleDate, Map cuMemberBonusMap) { - List pkIdList = cuMemberBonusService.batchQueryCuMemberBonusSeq(cuMemberBonusMap.size()); + List pkIdList = iCuMemberBonusService.batchQueryCuMemberBonusSeq(cuMemberBonusMap.size()); int i = 0; // 判断时间,重算的时候直接是已公布 Integer grantStatus = EGrantStatus.SETTLED.getValue(); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java index 6d8fc67c..97979af2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusCoachServiceImpl.java @@ -1,47 +1,15 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusCoachService; import com.hzs.common.domain.member.bonus.CuMemberBonusCoach; import com.hzs.bonus.bonus.mapper.CuMemberBonusCoachMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-辅导收益明细表 服务实现类 */ @Service public class CuMemberBonusCoachServiceImpl extends ServiceImpl implements ICuMemberBonusCoachService { - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - public void deleteCuMemberBonusCoach(Integer period) { - baseMapper.deleteCuMemberBonusCoach(period); - } - - @Override - public void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet) { - if (cuMemberBonusCoachList.size() == 0) { - return; - } - List cuMemberBonusCoaches = new ArrayList<>(); - for (CuMemberBonusCoach cuMemberBonusCoach : cuMemberBonusCoachList) { - if (memberIdSet.contains(cuMemberBonusCoach.getPkBonus())) { - cuMemberBonusCoaches.add(cuMemberBonusCoach); - } - } - if (cuMemberBonusCoaches.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusCoaches); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusCoach(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java index a7f3669b..99fa29e6 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusExpandServiceImpl.java @@ -1,53 +1,17 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusExpandService; import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; import com.hzs.bonus.bonus.mapper.CuMemberBonusExpandMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** * 会员奖金-拓展收益明细表 服务实现类 */ @Service public class CuMemberBonusExpandServiceImpl extends ServiceImpl implements ICuMemberBonusExpandService { - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } - - @Override - public void deleteCuMemberBonusExpand(Integer period) { - baseMapper.deleteCuMemberBonusExpand(period); - } - - @Override - public void batchInsertCuMemberBonusExpand(List cuMemberBonusExpandList, Set memberIdSet) { - if (cuMemberBonusExpandList.size() == 0) { - return; - } - List memberBonusExpands = new ArrayList<>(); - for (CuMemberBonusExpand cuMemberBonusExpand : cuMemberBonusExpandList) { - if (memberIdSet.contains(cuMemberBonusExpand.getPkBonus())) { - memberBonusExpands.add(cuMemberBonusExpand); - } - } - if (memberBonusExpands.size() == 0) { - return; - } - List> lists = cuMemberBonusSettle.handleCutList(memberBonusExpands); - lists.forEach(list -> - baseMapper.batchInsertCuMemberBonusExpand(list)); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java index d82a5da1..ff220c5a 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.bonus.bonus.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusPushService; @@ -18,12 +19,8 @@ import java.util.Set; @Service public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusPushService { - private CuMemberBonusSettle cuMemberBonusSettle; - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private CuMemberBonusSettle cuMemberBonusSettle; @Override public void deleteCuMemberBonusPush(Integer period) { @@ -32,16 +29,16 @@ public class CuMemberBonusPushServiceImpl extends ServiceImpl cuMemberBonusPushList, Set memberIdSet) { - if(cuMemberBonusPushList.size() == 0){ + if (CollectionUtil.isEmpty(cuMemberBonusPushList)) { return; } List addMemberBonusPushList = new ArrayList<>(); for (CuMemberBonusPush cuMemberBonusPush : cuMemberBonusPushList) { - if(memberIdSet.contains(cuMemberBonusPush.getPkBonus())){ + if (memberIdSet.contains(cuMemberBonusPush.getPkBonus())) { addMemberBonusPushList.add(cuMemberBonusPush); } } - if(addMemberBonusPushList.size() ==0){ + if (addMemberBonusPushList.size() == 0) { return; } List> lists = cuMemberBonusSettle.handleCutList(addMemberBonusPushList); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusRangeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusRangeServiceImpl.java index 3d8040bc..7a5f44d3 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusRangeServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusRangeServiceImpl.java @@ -1,5 +1,6 @@ package com.hzs.bonus.bonus.service.impl; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.bonus.service.ICuMemberBonusRangeService; @@ -28,7 +29,7 @@ public class CuMemberBonusRangeServiceImpl extends ServiceImpl cuMemberBonusRangeList, Set memberIdSet) { - if (cuMemberBonusRangeList.size() == 0) { + if (CollectionUtil.isEmpty(cuMemberBonusRangeList)) { return; } List cuMemberBonusRanges = new ArrayList<>(); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java index 71bfba83..8dc67205 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusServiceImpl.java @@ -1,7 +1,6 @@ package com.hzs.bonus.bonus.service.impl; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -26,7 +25,6 @@ import com.hzs.common.domain.member.ext.*; import com.hzs.common.domain.system.config.BdBonusItems; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IBonusItemsServiceApi; import lombok.extern.slf4j.Slf4j; @@ -34,6 +32,7 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDate; import java.time.format.DateTimeFormatter; @@ -48,8 +47,6 @@ import java.util.stream.Collectors; @Slf4j public class CuMemberBonusServiceImpl extends ServiceImpl implements ICuMemberBonusService { - @DubboReference - ISystemConfigServiceApi iSystemConfigServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @DubboReference @@ -58,15 +55,14 @@ public class CuMemberBonusServiceImpl extends ServiceImpl batchQueryCuMemberBonusSeq(Integer rowNum) { return baseMapper.batchQueryCuMemberBonusSeq(rowNum); @@ -121,20 +92,10 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryMemberBonusVoByCondition(BonusParam bonusParam) { -// String value = iSystemConfigServiceApi.getBonusSystemConfig(bonusParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// // 周结的话不能查询当前周的数据,只能查询上周的数据 -// bonusParam.setEndDate(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(bonusParam.getEndDate()))); -// } return handleMemberBonusPurchase(getCuMemberBonusExtList(bonusParam), bonusParam); } private List handleMemberBonusPurchase(List cuMemberBonusExtList, BonusParam bonusParam) { -// if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { -// Collections.reverse(cuMemberBonusExtList); -// return cuMemberBonusExtList; -// } - List memberBonusExtList = new ArrayList<>(); Map cuMemberBonusExtMap = new HashMap<>(); cuMemberBonusExtList.forEach(cuMemberBonusExt -> cuMemberBonusExtMap.put(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonusExt.getSettleDate()), cuMemberBonusExt)); @@ -151,36 +112,38 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusExpand.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusExpand.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.COACHING_INCOME.getValue() == bonusItemsValue) { - // 辅导收益 - // 拓展收益、复购拓展收益 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItems(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailVO.class); - memberBonusDetailVO.setSourceMemberCode(cuMemberBonusCoach.getSourceMemberCode()); - memberBonusDetailVO.setSourceMemberName(cuMemberBonusCoach.getSourceMemberName()); - memberBonusDetailVOList.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue) { + } else if (EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue) { // 复购极差 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItems(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); @@ -445,43 +393,38 @@ public class CuMemberBonusServiceImpl extends ServiceImpl cuMemberBonusPushList = cuMemberBonusPushMapper.queryMemberBonusPushByBonusItemsFoServer(bonusParam); dataTable = getDataTable(cuMemberBonusPushList); cuMemberBonusPushList.forEach(cuMemberBonusPush -> { MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusPush, MemberBonusDetailSerVO.class); memberBonusDetailSerVoS.add(memberBonusDetailVO); }); - } else if (EBonusItems.EXPANSION_INCOME.getValue() == bonusItemsValue - || EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue() == bonusItemsValue) { - // 拓展收益、复购拓展收益 - List cuMemberBonusExpandList = cuMemberBonusExpandMapper.queryMemberBonusExpandByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusExpandList); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusExpand, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.RETAIL_COACHING_INCOME.getValue() == bonusItemsValue) { - // 培育津贴 - List cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItemsForServer(bonusParam); - dataTable = getDataTable(cuMemberBonusCoachList); - cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { - MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailSerVO.class); - memberBonusDetailSerVoS.add(memberBonusDetailVO); - }); - } else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_SAME_LEVEL_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_BENEFIT_RANGE_INCOME.getValue() == bonusItemsValue - || EBonusItems.RETAIL_MONTH_REPURCHASE_INCOME.getValue() == bonusItemsValue) { - // 直推收益、平级收益、福利级差、复购级差 +// List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); +// dataTable = getDataTable(cuMemberBonusRangeList); +// cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { +// MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusRange, MemberBonusDetailSerVO.class); +// memberBonusDetailSerVoS.add(memberBonusDetailVO); +// }); + } else if (EBonusItems.RANGE_INCOME.getValue() == bonusItemsValue + || EBonusItems.SAME_LEVEL_INCOME.getValue() == bonusItemsValue) { + // 领导奖收益、平级奖收益 List cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam); dataTable = getDataTable(cuMemberBonusRangeList); cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusRange, MemberBonusDetailSerVO.class); memberBonusDetailSerVoS.add(memberBonusDetailVO); }); + } else if (EBonusItems.STAGE_INCOME.getValue() == bonusItemsValue) { + // 阶段收益 + List cuMemberBonusDetailList = cuMemberBonusStageMapper.queryMemberBonusStageByBonusItemsFoServer(bonusParam); + dataTable = getDataTable(cuMemberBonusDetailList); + cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> { + MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusDetail, MemberBonusDetailSerVO.class); + memberBonusDetailSerVoS.add(memberBonusDetailVO); + }); } else { // 其他收益 区域分红、月度分红平均、月度分红加权 List cuMemberBonusDetailList = cuMemberBonusDetailMapper.queryMemberBonusDetailByBonusItemsForServer(bonusParam); @@ -515,7 +458,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl pkIdList) { - String retailsTableName = getDayTableName(); - log.info("recalculateTeamNewBoxNum: pkIdList: {}, tableName: {}", JSONUtil.toJsonStr(pkIdList), retailsTableName); - for (Long pkId : pkIdList) { - baseMapper.recalculateTeamNewBoxNum(pkId, retailsTableName); - } - } - - private String getDayTableName() { - String localDate = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(localDate).getPkId(); - return TableNameConstants.CU_MEMBER_RETAIL_S + period; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java new file mode 100644 index 00000000..f63e5f05 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusStageServiceImpl.java @@ -0,0 +1,852 @@ +package com.hzs.bonus.bonus.service.impl; + +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.ReflectUtil; +import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper; +import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService; +import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; +import com.hzs.bonus.bonus.dto.BonusStageData; +import com.hzs.bonus.bonus.mapper.CuMemberBonusStageMapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.bonus.bonus.service.ICuMemberBonusStageService; +import com.hzs.bonus.constant.BonusConstants; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.enums.*; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; +import com.hzs.common.domain.member.bonus.CuMemberBonus; +import com.hzs.common.domain.member.bonus.CuMemberBonusStage; +import com.hzs.common.domain.sale.ext.SaOrderExt; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.lang.reflect.Field; +import java.math.BigDecimal; +import java.util.*; + +/** + * 会员奖金-阶段收益明细表 服务实现类 + */ +@Slf4j +@Service +public class CuMemberBonusStageServiceImpl extends ServiceImpl implements ICuMemberBonusStageService { + + @Autowired + private CuMemberBonusSettle cuMemberBonusSettle; + @Autowired + private ICuMemberRetailDetailService iCuMemberRetailDetailService; + + @Resource + private CuMemberRetailRangeMapper cuMemberRetailRangeMapper; + + @Override + public void deleteCuMemberBonusStage(Integer period) { + baseMapper.deleteCuMemberBonusStage(period); + } + + @Override + public void batchInsertCuMemberBonusStage(List cuMemberBonusStageList, Set memberIdSet) { + if (CollectionUtil.isEmpty(cuMemberBonusStageList)) { + return; + } + List addMemberBonusStageList = new ArrayList<>(); + for (CuMemberBonusStage cuMemberBonusStage : cuMemberBonusStageList) { + if (memberIdSet.contains(cuMemberBonusStage.getPkBonus())) { + addMemberBonusStageList.add(cuMemberBonusStage); + } + } + if (addMemberBonusStageList.size() == 0) { + return; + } + List> lists = cuMemberBonusSettle.handleCutList(addMemberBonusStageList); + lists.forEach(list -> + baseMapper.batchInsertCuMemberBonusStage(list)); + } + + /** + * 获取阶段收益信息 + */ + @Override + public CuMemberBonusStage getCuMemberBonusStage(SaOrderExt saOrderExt, CuMemberRetailRangeExt cuMemberRetailRange, CuMemberBonus cuMemberBonus, Integer pkBonusItems) { + CuMemberBonusStage cuMemberBonusStage = CuMemberBonusStage.builder() + .pkBonus(cuMemberBonus.getPkId()) + .pkOrder(null != saOrderExt ? saOrderExt.getPkId() : 0) + .pkBonusItems(pkBonusItems) + .incomeStatus(cuMemberRetailRange.getIncomeStatus()) + .calType(ECalType.VALUE.getValue()) + .calAchieve(BigDecimal.ZERO) + .calValue(BigDecimal.ZERO) + .pretaxIncome(BigDecimal.ZERO) + .incomeTax(BigDecimal.ZERO) + .realIncome(BigDecimal.ZERO) + .incomeRatio(BigDecimal.ZERO) + .incomeDialRatio(BigDecimal.ZERO) + .orderDialRatio(BigDecimal.ZERO) + .build(); + cuMemberBonusStage.setPkCountry(cuMemberRetailRange.getPkSettleCountry()); + cuMemberBonusStage.setPkCreator(MagicNumberConstants.PK_ADMIN); + return cuMemberBonusStage; + } + + @Override + public String fillChildNode(CuMemberRetailDetail cuMemberRetailDetail, CuMemberRetailDetail newRetailDetail) { + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + Object pointFieldValue = ReflectUtil.getFieldValue(cuMemberRetailDetail, pointField); + if (ObjectUtil.isEmpty(pointFieldValue)) { + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointMemberField, newRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(cuMemberRetailDetail, pointField, newRetailDetail.getChildNode()); + ReflectUtil.setFieldValue(cuMemberRetailDetail, BonusConstants.UPDATE_FLAG, 0); + return suffix; + } + } + return null; + } + + /** + * 向上填充子点位 + */ + private void fillUpTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newParentRetailDetail, + CuMemberRetailDetail newRetailDetail, String node, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + if (null == targetRetailDetail) { + return; + } + for (String suffix : BonusConstants.FIELD_LIST) { + Field pointMemberField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix); + Field pointField = BonusConstants.FIELD_MAP.get(BonusConstants.POINT_FIELD_NAME + suffix); + if (newParentRetailDetail.getPkMember().equals(ReflectUtil.getFieldValue(targetRetailDetail, pointMemberField)) + && newParentRetailDetail.getChildNode().equals(ReflectUtil.getFieldValue(targetRetailDetail, pointField))) { + // 中间点位在目标点位的位置,根据位置获取新点位填充的位置 + switch (suffix) { + case BonusConstants.POINT_11: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_21.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_31, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_22.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_32, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_23.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_33, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_24.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_34, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + case BonusConstants.POINT_12: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_21.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_35, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_22.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_36, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_23.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_37, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_24.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_38, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + case BonusConstants.POINT_21: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_31, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_32, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + case BonusConstants.POINT_22: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_33, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_34, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + case BonusConstants.POINT_23: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_35, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_36, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + case BonusConstants.POINT_24: + if (BonusConstants.POINT_11.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_37, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_12.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_38, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + break; + } + break; + } + } + } + + /** + * 向下填充子点位 + */ + private void fillDownTargetRetailDetail(CuMemberRetailDetail targetRetailDetail, CuMemberRetailDetail newRetailDetail, + String node, Integer level, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + if (null == targetRetailDetail) { + return; + } + if (level.equals(1)) { + if (BonusConstants.POINT_21.equals(node) + || BonusConstants.POINT_23.equals(node) + || BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_35.equals(node) + || BonusConstants.POINT_37.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_11, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_22.equals(node) + || BonusConstants.POINT_24.equals(node) + || BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_36.equals(node) + || BonusConstants.POINT_38.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_12, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + } else if (level.equals(2)) { + if (BonusConstants.POINT_31.equals(node) + || BonusConstants.POINT_35.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_32.equals(node) + || BonusConstants.POINT_36.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_33.equals(node) + || BonusConstants.POINT_37.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } else if (BonusConstants.POINT_34.equals(node) + || BonusConstants.POINT_38.equals(node)) { + this.fillRetailDetail(targetRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + } + } + } + + /** + * 填充点位 + */ + @Override + public void fillRetailDetail(CuMemberRetailDetail targetRetailDetail, String point, + CuMemberRetailDetail sourceRetailDetail, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + point, sourceRetailDetail.getPkMember()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.POINT_FIELD_NAME + point, sourceRetailDetail.getChildNode()); + ReflectUtil.setFieldValue(targetRetailDetail, BonusConstants.UPDATE_FLAG, 0); + + if (EBonusStage.ONE.getValue() == eBonusStage.getValue() + || EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + switch (point) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 如果填充的点位是第三层,理论上有可能已经全部填满,需要判断是否已经完成 + boolean isFinish = true; + for (String suffix : BonusConstants.FIELD_LIST) { + if (null == ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + isFinish = false; + break; + } + } + if (isFinish) { + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + // 一阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.ONE_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + // 生成二阶段点位 + bonusStageData.setTwoRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.TWO.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } else { + // 二阶段,全满发放阶段奖 + // 返回奖金收益处理数据 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.TWO_BONUS) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(14) + .build(); + bonusStageData.setThreeRetailDetail(CuMemberRetailDetail.builder() + .pkMember(targetRetailDetail.getPkMember()) + .childNode(targetRetailDetail.getChildNode()) + .pkParent(targetRetailDetail.getPkParent()) + .stage(EBonusStage.THREE.getValue()) + .stageStatus(EBonusStageStatus.NO.getValue()) + .pointType(targetRetailDetail.getPointType()) + .pointGift(targetRetailDetail.getPointGift()) + .creationTime(settleDate) + .thirdBonus1(0) + .thirdBonus2(0) + .thirdBonus3(0) + .updateBool(0) + .build()); + bonusStageDataList.add(bonusStageData); + } + return; + } + break; + } + } else { + // 三阶段发放特殊处理 + switch (point) { + case BonusConstants.POINT_11: + case BonusConstants.POINT_12: + // 一阶段填满就给奖金 + if (targetRetailDetail.getThirdBonus1() < 1) { + if (null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_11) + && null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_12) + ) { + // 第一层满,需要发放奖金 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.THREE_BONUS_1) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(2) + .pointGift(0) + .build(); + bonusStageDataList.add(bonusStageData); + // 第一层发放过1次 + targetRetailDetail.setThirdBonus1(1); + } + } + break; + case BonusConstants.POINT_21: + case BonusConstants.POINT_22: + case BonusConstants.POINT_23: + case BonusConstants.POINT_24: + // 二阶段填满就给奖金 + if (targetRetailDetail.getThirdBonus2() < 1) { + if (null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_21) + && null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_22) + && null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_23) + && null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + BonusConstants.POINT_24) + ) { + // 第二层满,需要发放奖金 + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(BonusConstants.THREE_BONUS_2) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(4) + .pointGift(0) + .build(); + bonusStageDataList.add(bonusStageData); + // 第二层发放过1次 + targetRetailDetail.setThirdBonus2(1); + } + } + break; + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + // 三阶段填每个点位都给奖金,8个全满给的多 + if (targetRetailDetail.getThirdBonus3() < 8) { + int tmpInt = 0; + for (String suffix : BonusConstants.THREE_FIELD_LIST) { + if (null != ReflectUtil.getFieldValue(targetRetailDetail, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)) { + tmpInt += 1; + } + } + if (tmpInt - targetRetailDetail.getThirdBonus3() == 1) { + Integer pointGift = 0; + // 默认第三层前7个点位奖金 + BigDecimal bonus = BonusConstants.THREE_BONUS_3; + if (tmpInt == 8) { + // 第三层第8个点位 + bonus = BonusConstants.THREE_BONUS_38; + + // 三层全满,三阶段完成 + targetRetailDetail.setStageStatus(EBonusStageStatus.YES.getValue()); + targetRetailDetail.setStageDate(settleDate); + // 当前点位赠点数量 + pointGift = targetRetailDetail.getPointGift(); + } + BonusStageData bonusStageData = BonusStageData.builder() + .bonusIncome(bonus) + .targetPkMember(targetRetailDetail.getPkMember()) + .targetChildNode(targetRetailDetail.getChildNode()) + .stage(eBonusStage.getValue()) + .stageNum(tmpInt + 6) + .pointGift(pointGift) + .build(); + bonusStageDataList.add(bonusStageData); + targetRetailDetail.setThirdBonus3(tmpInt); + } + } + break; + } + } + } + + @Override + public void handlePointFirst(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { + // 新点位的上第一层 + newRetailDetail.setPointMemberFirst(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointFirst(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二、三层结算数据 + CuMemberRetailRangeExt memberFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberFirst && null != newParentRetailDetail.getPointMemberFirst()) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + CuMemberRetailRangeExt memberSecond = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null == memberSecond && null != newParentRetailDetail.getPointMemberSecond()) { + queryMemberList.add(newParentRetailDetail.getPointMemberSecond()); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); + } + } + + // 新点位的上第二层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(firstMemberRetail, eBonusStage).get(newParentRetailDetail.getPointFirst()); + if (null != memberDetail) { + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointSecond(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode, settleDate, eBonusStage, + bonusStageDataList); + } + } + + // 新点位的上第三层 + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberSecond()); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(firstMemberRetail, eBonusStage).get(newParentRetailDetail.getPointSecond()); + if (null != memberDetail) { + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberSecond()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointSecond()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode, settleDate, eBonusStage, + bonusStageDataList); + } + } + } + + @Override + public void handlePointSecond(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { + // 新点位的上第二层 + newRetailDetail.setPointMemberSecond(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointSecond(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第三层结算数据 + CuMemberRetailRangeExt memberUpFirst = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null == memberUpFirst && null != newParentRetailDetail.getPointMemberFirst()) { + queryMemberList.add(newParentRetailDetail.getPointMemberFirst()); + } + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_21: + case BonusConstants.POINT_22: + downFirstMember = newParentRetailDetail.getPointMember11(); + downFirstPoint = newParentRetailDetail.getPoint11(); + break; + case BonusConstants.POINT_23: + case BonusConstants.POINT_24: + downFirstMember = newParentRetailDetail.getPointMember12(); + downFirstPoint = newParentRetailDetail.getPoint12(); + break; + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst && null != downFirstMember) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); + } + } + + // 新点位的上第三层 + CuMemberRetailRangeExt thirdMemberRetail = memberRangeExtMap.get(newParentRetailDetail.getPointMemberFirst()); + if (null != thirdMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(thirdMemberRetail, eBonusStage).get(newParentRetailDetail.getPointFirst()); + if (null != memberDetail) { + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPointMemberFirst()); + newRetailDetail.setPointThird(newParentRetailDetail.getPointFirst()); + this.fillUpTargetRetailDetail(memberDetail, newParentRetailDetail, newRetailDetail, newNode, settleDate, eBonusStage, + bonusStageDataList); + } + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(firstMemberRetail, eBonusStage).get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(memberDetail.getPkMember()); + newRetailDetail.setPointFirst(memberDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1, settleDate, eBonusStage, + bonusStageDataList); + } + } + } + + @Override + public void handlePointThird(Map memberRangeExtMap, + CuMemberRetailDetail newRetailDetail, CuMemberRetailDetail newParentRetailDetail, + String rangeTableName, String rangeDetailTableName, String newNode, + Date settleDate, EBonusStage eBonusStage, List bonusStageDataList) { + // 新点位的上第三层 + newRetailDetail.setPointMemberThird(newParentRetailDetail.getPkMember()); + newRetailDetail.setPointThird(newParentRetailDetail.getChildNode()); + + List queryMemberList = new ArrayList<>(2); + // 获取上第二层结算数据 + Long downSecondMember = null; + Integer downSecondPoint = null; + // 获取上第一层结算数据 + Long downFirstMember = null; + Integer downFirstPoint = null; + switch (newNode) { + case BonusConstants.POINT_31: + case BonusConstants.POINT_32: + case BonusConstants.POINT_33: + case BonusConstants.POINT_34: + downSecondMember = newParentRetailDetail.getPointMember11(); + downSecondPoint = newParentRetailDetail.getPoint11(); + if (BonusConstants.POINT_31.equals(newNode) + || BonusConstants.POINT_32.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember21(); + downFirstPoint = newParentRetailDetail.getPoint21(); + } else { + downFirstMember = newParentRetailDetail.getPointMember22(); + downFirstPoint = newParentRetailDetail.getPoint22(); + } + break; + case BonusConstants.POINT_35: + case BonusConstants.POINT_36: + case BonusConstants.POINT_37: + case BonusConstants.POINT_38: + downSecondMember = newParentRetailDetail.getPointMember12(); + downSecondPoint = newParentRetailDetail.getPoint12(); + if (BonusConstants.POINT_35.equals(newNode) + || BonusConstants.POINT_36.equals(newNode)) { + downFirstMember = newParentRetailDetail.getPointMember23(); + downFirstPoint = newParentRetailDetail.getPoint23(); + } else { + downFirstMember = newParentRetailDetail.getPointMember24(); + downFirstPoint = newParentRetailDetail.getPoint24(); + } + break; + } + CuMemberRetailRangeExt memberDownSecond = memberRangeExtMap.get(downSecondMember); + if (null == memberDownSecond && null != downSecondMember) { + queryMemberList.add(downSecondMember); + } + CuMemberRetailRangeExt memberDownFirst = memberRangeExtMap.get(downFirstMember); + if (null == memberDownFirst && null != downFirstMember) { + queryMemberList.add(downFirstMember); + } + if (CollectionUtil.isNotEmpty(queryMemberList)) { + // 查询会员数据 + List retailList = cuMemberRetailRangeMapper.listCuMemberRetailRange(rangeTableName, queryMemberList); + if (CollectionUtil.isNotEmpty(retailList)) { + retailList.forEach(tmpRetail -> { + memberRangeExtMap.put(tmpRetail.getPkMember(), tmpRetail); + }); + // 查询血缘会员明细数据 + iCuMemberRetailDetailService.listMemberRetailDetailByQuery(rangeDetailTableName, memberRangeExtMap, queryMemberList, eBonusStage); + } + } + + // 新点位的上第二层 + CuMemberRetailRangeExt secondMemberRetail = memberRangeExtMap.get(downSecondMember); + if (null != secondMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(secondMemberRetail, eBonusStage).get(downSecondPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberSecond(memberDetail.getPkMember()); + newRetailDetail.setPointSecond(memberDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 2, settleDate, eBonusStage, + bonusStageDataList); + } + } + + // 新点位的上第一层 + CuMemberRetailRangeExt firstMemberRetail = memberRangeExtMap.get(downFirstMember); + if (null != firstMemberRetail) { + CuMemberRetailDetail memberDetail = this.getRetailDetailMap(firstMemberRetail, eBonusStage).get(downFirstPoint); + if (null != memberDetail) { + newRetailDetail.setPointMemberFirst(memberDetail.getPkMember()); + newRetailDetail.setPointFirst(memberDetail.getChildNode()); + this.fillDownTargetRetailDetail(memberDetail, newRetailDetail, newNode, 1, settleDate, eBonusStage, + bonusStageDataList); + } + } + } + + @Override + public boolean firstLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第一层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember11()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_11, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_11, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember12()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_12, + newRetailDetail, settleDate, eBonusStage, + bonusStageDataList); + // 新点位是推荐人点位的第一层 + this.handlePointFirst(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_12, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean thirdLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第三层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember31()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_31, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_31, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember32()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_32, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_32, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember33()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_33, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_33, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember34()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_34, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_34, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember35()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_35, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_35, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember36()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_36, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_36, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember37()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_37, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_37, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember38()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_38, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第三层 + this.handlePointThird(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_38, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + @Override + public boolean secondLevelhandle(LinkedHashMap parentDetailList, CuMemberRetailDetail newRetailDetail, + String rangeTableName, String rangeDetailTableName, + Map memberRangeExtMap, Date settleDate, EBonusStage eBonusStage, + List bonusStageDataList) { + for (Map.Entry integerCuMemberRetailDetailEntry : parentDetailList.entrySet()) { + // 第二层填充 + CuMemberRetailDetail parentRetailDetail = integerCuMemberRetailDetailEntry.getValue(); + // 遍历推荐人点位,使用第一个未完成的点位,进行填充 + if (EBonusStageStatus.NO.getValue() == parentRetailDetail.getStageStatus()) { + if (null == parentRetailDetail.getPointMember21()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_21, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_21, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember22()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_22, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_22, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember23()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_23, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_23, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } else if (null == parentRetailDetail.getPointMember24()) { + this.fillRetailDetail(parentRetailDetail, BonusConstants.POINT_24, + newRetailDetail, settleDate, eBonusStage, bonusStageDataList); + // 新点位是推荐人点位的第二层 + this.handlePointSecond(memberRangeExtMap, newRetailDetail, parentRetailDetail, + rangeTableName, rangeDetailTableName, BonusConstants.POINT_24, settleDate, eBonusStage, + bonusStageDataList); + // 当前新子点位填充完成,进入下一个新子点位 + return true; + } + } + } + return false; + } + + private LinkedHashMap getRetailDetailMap(CuMemberRetailRangeExt memberRetail, EBonusStage eBonusStage) { + if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) { + return memberRetail.getOneDetailMap(); + } else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) { + return memberRetail.getTwoDetailMap(); + } else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) { + return memberRetail.getThreeDetailMap(); + } + return new LinkedHashMap<>(); + } + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareBonusServiceImpl.java index 23e727c5..239ac526 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareBonusServiceImpl.java @@ -1,39 +1,10 @@ package com.hzs.bonus.bonus.service.impl; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.bonus.service.ICuMemberShareBonusService; -import com.hzs.bonus.bonus.service.ICuMemberShareDetailService; -import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.enums.EAwards; -import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; -import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.CuMemberShareBonus; -import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.detail.CuMemberAssess; -import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.mapper.CuMemberShareBonusMapper; -import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; -import com.hzs.bonus.bonus.param.CuMemberShareDetailParam; -import com.hzs.sale.order.ISaOrderServiceApi; -import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.IAwardsServiceApi; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.math.BigDecimal; -import java.util.*; /** * 会员奖金-分红奖金配置 服务实现类 @@ -41,143 +12,4 @@ import java.util.*; @Service public class CuMemberShareBonusServiceImpl extends ServiceImpl implements ICuMemberShareBonusService { - @DubboReference - ISaOrderServiceApi saOrderServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - - private ICuMemberShareDetailService cuMemberShareDetailService; - - private ICuMemberService cuMemberService; - - private ICuMemberAssessService cuMemberAssessService; - - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) { - this.cuMemberSettlePeriodService = cuMemberSettlePeriodService; - } - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - - @Autowired - public void setCuMemberShareDetailService(ICuMemberShareDetailService cuMemberShareDetailService) { - this.cuMemberShareDetailService = cuMemberShareDetailService; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam) { - CuMemberShareBonusExt cuMemberShareBonusExt = queryCuMemberShareBonus(cuMemberShareBonusParam.getPkCountry(), cuMemberShareBonusParam.getSettleMonth()); - CuMemberShareBonus cuMemberShareBonus = BeanUtil.copyProperties(cuMemberShareBonusExt, CuMemberShareBonus.class); - if (cuMemberShareBonus.getPkId() == null) { - cuMemberShareBonus.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareBonus.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - CuMemberSettlePeriod cuMemberSettlePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(cuMemberShareBonusExt.getSettleMonth() + "-01"); - cuMemberShareBonus.setPeriod(cuMemberSettlePeriod.getPkId()); - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(cuMemberShareBonusParam.getPkCountry()).getData(); - cuMemberShareBonus.setPkRate(currencyDTO.getPkId()); - baseMapper.insert(cuMemberShareBonus); - } else { - cuMemberShareBonus.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareBonus.setModifiedTime(DateUtils.currentDateTime()); - baseMapper.updateById(cuMemberShareBonus); - } - if (CollectionUtil.isNotEmpty(cuMemberShareBonusExt.getCuMemberShareDetailList())) { - Map cuMemberShareDetailParamMap = new HashMap<>(); - cuMemberShareBonusParam.getCuMemberShareDetailList().forEach(cuMemberShareDetailParam -> - cuMemberShareDetailParamMap.put(cuMemberShareDetailParam.getPkAwards(), cuMemberShareDetailParam)); - Date currentDateTime = DateUtils.currentDateTime(); - for (CuMemberShareDetailExt cuMemberShareDetail : cuMemberShareBonusExt.getCuMemberShareDetailList()) { - if (cuMemberShareDetailParamMap.containsKey(cuMemberShareDetail.getPkAwards())) { - CuMemberShareDetailParam cuMemberShareDetailParam = cuMemberShareDetailParamMap.get(cuMemberShareDetail.getPkAwards()); - cuMemberShareDetail.setRealShareIncome(cuMemberShareDetailParam.getRealShareIncome()); - cuMemberShareDetail.setRealShareSubtotal(ComputeUtil.computeMultiply(cuMemberShareDetailParam.getRealShareIncome(), cuMemberShareDetail.getReachTotal())); - } - if (cuMemberShareDetail.getPkId() == null) { - cuMemberShareDetail.setPkCountry(cuMemberShareBonusParam.getPkCountry()); - cuMemberShareDetail.setPkShareBonus(cuMemberShareBonus.getPkId()); - cuMemberShareDetail.setCreationTime(currentDateTime); - cuMemberShareDetail.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - } else { - cuMemberShareDetail.setPkModified(cuMemberShareBonusParam.getPkCreator()); - cuMemberShareDetail.setModifiedTime(DateUtils.currentDateTime()); - } - } - cuMemberShareDetailService.saveMemberShareBonus(cuMemberShareBonusExt.getCuMemberShareDetailList()); - } - } - - @Override - public CuMemberShareBonusExt queryCuMemberShareBonus(Integer pkCountry, String settleMonth) { - CuMemberShareBonusExt cuMemberShareBonusExt = baseMapper.queryCuMemberShareBonus(pkCountry, settleMonth); - if (cuMemberShareBonusExt == null) { - cuMemberShareBonusExt = new CuMemberShareBonusExt(); - cuMemberShareBonusExt.setSettleMonth(settleMonth); - Date endDate = DateUtils.parseDate(settleMonth + "-01"); - Date startDate = DateUtils.beforeMonthFirstDate(endDate); - SaOrder saOrder = saOrderServiceApi.queryOrderTotalAchieveByTime(startDate, endDate).getData(); - BigDecimal shareRatio = BigDecimal.ZERO; - List bdAwardsList = awardsServiceApi.queryAwards(pkCountry).getData(); - List cuMemberShareDetailList = new ArrayList<>(); - // 查询奖衔 晋升人数 - List cuMemberList = cuMemberService.queryCuMemberShareTotal(pkCountry); - Map cuMemberMap = new HashMap<>(); - cuMemberList.forEach(cuMember -> - cuMemberMap.put(cuMember.getPkAwards(), cuMember.getShareStatus())); - List cuMemberAssessList = cuMemberAssessService.queryCuMemberAssTotal(settleMonth + "-01", pkCountry); - Map cuMemberAssMap = new HashMap<>(); - cuMemberAssessList.forEach(cuMemberAssess -> - cuMemberAssMap.put(cuMemberAssess.getPkAwards(), cuMemberAssess.getAssessStatus())); - // 查询奖衔 达标人数 - for (BdAwards bdAwards : bdAwardsList) { - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue()) { - continue; - } - shareRatio = ComputeUtil.computeAdd(shareRatio, bdAwards.getAbonusRatio()); - CuMemberShareDetailExt cuMemberShareDetail = new CuMemberShareDetailExt(); - cuMemberShareDetail.setPkAwards(bdAwards.getPkId()); - cuMemberShareDetail.setPkAwardsVal(bdAwards.getAwardsName()); - cuMemberShareDetail.setPromoteTotal(0); - cuMemberShareDetail.setReachTotal(0); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareIncome(BigDecimal.ZERO); - cuMemberShareDetail.setRealShareSubtotal(BigDecimal.ZERO); - if (cuMemberMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setPromoteTotal(cuMemberMap.get(bdAwards.getPkId())); - } - if (cuMemberAssMap.containsKey(bdAwards.getPkId())) { - cuMemberShareDetail.setReachTotal(cuMemberAssMap.get(bdAwards.getPkId())); - } - cuMemberShareDetailList.add(cuMemberShareDetail); - } - cuMemberShareBonusExt.setExpectShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - cuMemberShareBonusExt.setRealShareTotal(saOrder == null ? BigDecimal.ZERO : ComputeUtil.computeMultiply(saOrder.getOrderAchieve(), shareRatio)); - // 处理预发金额 预发合计 - for (CuMemberShareDetail cuMemberShareDetail : cuMemberShareDetailList) { - int count = bdAwardsList.size(); - if (count > 0) { - cuMemberShareDetail.setExpectShareSubtotal(ComputeUtil.computeDivide(cuMemberShareBonusExt.getExpectShareTotal(), BigDecimal.valueOf(count))); - cuMemberShareDetail.setExpectShareIncome(ComputeUtil.computeDivide(cuMemberShareDetail.getExpectShareSubtotal(), BigDecimal.valueOf(cuMemberShareDetail.getPromoteTotal()))); - } else { - cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); - cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); - } - } - cuMemberShareBonusExt.setCuMemberShareDetailList(cuMemberShareDetailList); - } - return cuMemberShareBonusExt; - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java index 11371e81..df13a9be 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberShareDetailServiceImpl.java @@ -3,21 +3,13 @@ package com.hzs.bonus.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberShareDetailService; import com.hzs.common.domain.member.bonus.CuMemberShareDetail; -import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; import com.hzs.bonus.bonus.mapper.CuMemberShareDetailMapper; import org.springframework.stereotype.Service; -import java.util.List; - /** * 会员奖金-分红奖金配置明细 服务实现类 */ @Service public class CuMemberShareDetailServiceImpl extends ServiceImpl implements ICuMemberShareDetailService { - @Override - public void saveMemberShareBonus(List cuMemberShareDetailList) { - baseMapper.saveMemberShareBonus(cuMemberShareDetailList); - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberSpeRetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberSpeRetailServiceImpl.java deleted file mode 100644 index 74dbb3e3..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberSpeRetailServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.bonus.bonus.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.bonus.mapper.CuMemberSpeRetailMapper; -import com.hzs.bonus.bonus.param.RetailAreaParam; -import com.hzs.bonus.bonus.service.ICuMemberSpeRetailService; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.bonus.CuMemberSpeRetail; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - -/** - * 注水盒数 服务实现类 - */ -@Service -public class CuMemberSpeRetailServiceImpl extends ServiceImpl implements ICuMemberSpeRetailService { - - @Transactional(rollbackFor = Exception.class) - @Override - public void batchSpeRetail(List list, Integer pkCountry, Long pkCreator) { - List cmsrList = new ArrayList<>(); - Date date = new Date(); - list.forEach(item -> { - CuMemberSpeRetail cmsr = BeanUtil.copyProperties(item, CuMemberSpeRetail.class); - cmsr.setPeriodDate(DateUtils.getStartTime(item.getSettleDate())); - cmsr.setPkCountry(pkCountry); - cmsr.setPkCreator(pkCreator); - cmsr.setCreationTime(date); - cmsrList.add(cmsr); - }); - this.saveBatch(cmsrList); - } - - @Override - public List getCuMemberSpeRetail(RetailAreaParam param) { - return baseMapper.getCuMemberSpeRetail(param); - } - - @Override - public int checkCuMemberActivate(String memberCode) { - return baseMapper.checkCuMemberActivate(memberCode); - } - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java index d114e4f9..ace05141 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusRecordDetailVO.java @@ -18,27 +18,17 @@ public class BonusRecordDetailVO implements Serializable { private Long pkMember; /** - * + * 直推收益、见点收益 */ private List cuMemberBonusPushList; /** - * - */ - private List cuMemberBonusExpandList; - - /** - * 新零售 - 培育津贴 - */ - private List cuMemberBonusCoachList; - - /** - * 新零售 - 区域分红、月度分红 - */ - private List cuMemberBonusDetailList; - - /** - * 新零售 - 直推收益、平级收益、月度福利级差、月度复购级差、复购级差 + * 领导奖收益、平级奖收益 */ private List cuMemberBonusRangeList; + + /** + * 阶段收益 + */ + private List cuMemberBonusStageList; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java index f53789a6..28fa9502 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/BonusTotalVO.java @@ -38,66 +38,37 @@ public class BonusTotalVO implements Serializable { */ private Integer pkCountry; - /** - * 新零售直推收益 + * 注册直推收益-众康 */ @Excel(name = "直推收益", scale = 2) + private BigDecimal directIncome; + + /** + * 阶段收益-众康 + */ + @Excel(name = "阶段收益", scale = 2) + private BigDecimal storeIncome; + + /** + * 复购见点收益-众康 + */ + @Excel(name = "见点收益", scale = 2) + private BigDecimal globalPoints; + + /** + * 领导奖级差收益-众康 + * + */ + @Excel(name = "领导奖", scale = 2) private BigDecimal retailRangeIncome; /** - * 新零售平级收益 + * 领导奖平级收益-众康 */ - @Excel(name = "平级收益", scale = 2) + @Excel(name = "平级奖", scale = 2) private BigDecimal retailSameLevelIncome; - /** - * 新零售区域分红 - */ - @Excel(name = "区域分红", scale = 2) - private BigDecimal retailAreaIncome; - - /** - * 新零售福利级差收益 - */ - @Excel(name = "月度福利级差收益", scale = 2) - private BigDecimal retailBenefitRangeIncome; - - /** - * 新零售复购级差收益 - */ - @Excel(name = "月度复购级差收益", scale = 2) - private BigDecimal retailMonthRepurchaseIncome; - - /** - * 培育津贴 - */ - @Excel(name = "培育津贴", scale = 2) - private BigDecimal coachIncome; - - /** - * 福利分红平均收益 - */ - @Excel(name = "福利分红平均收益", scale = 2) - private BigDecimal retailBenefitAvgIncome; - - /** - * 福利分红加权收益 - */ - @Excel(name = "福利分红加权收益", scale = 2) - private BigDecimal retailBenefitIncome; - - /** - * 复购级差收益 - */ - @Excel(name = "复购级差收益", scale = 2) - private BigDecimal repurRangeIncome; - - /** - * 重消收益 - */ - @Excel(name = "重消收益", scale = 2) - private BigDecimal backPoints; /** * 实发收益总计 @@ -105,226 +76,4 @@ public class BonusTotalVO implements Serializable { @Excel(name = "实发收益总计", scale = 2) private BigDecimal realIncomeTotal; - - /** - * 直推收益 - */ - private BigDecimal directIncomeOri; - - /** - * 拓展收益 - */ - private BigDecimal expandIncomeOri; - - /** - * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶) - */ - private BigDecimal expandNoCappingOri; - - /** - * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益) - */ - private BigDecimal expandCappingOri; - - /** - * 辅导收益 - */ - private BigDecimal coachIncomeOri; - - /** - * 分红收益 - */ - private BigDecimal shareIncomeOri; - - /** - * 报单收益 - */ - private BigDecimal serviceIncomeOri; - - - /** - * 云代直推收益 - */ - private BigDecimal cloudDirectIncomeOri; - - /** - * 云代首购收益 - */ - private BigDecimal cloudPurIncomeOri; - - /** - * 云代复购收益 - */ - private BigDecimal cloudRepurIncomeOri; - - private BigDecimal repurPushIncomeOri; - - /** - * 复购拓展收益 - */ - private BigDecimal repurExpandIncomeOri; - - /** - * 复购券 - */ - private BigDecimal repurCouponOri; - - /** - * 复购券均分收益 - */ - private BigDecimal repurCouponShareOri; - - /** - * 平台服务费 - */ - private BigDecimal serviceSpendOri; - - /** - * 环球积分 - */ - private BigDecimal globalPointsOri; - - /** - * 车奖积分 - */ - private BigDecimal carAwardPointsOri; - - /** - * 店铺收益 - */ - private BigDecimal storeIncomeOri; - - /** - * 嗨粉推荐收益 - */ - private BigDecimal hiFunIncomeOri; - - /** - * 首购实发小计 - */ - private BigDecimal purRealSubtotalOri; - - /** - * 云代实发小计 - */ - private BigDecimal cloudRealSubtotalOri; - - /** - * 复购实发小计 - */ - private BigDecimal repurRealSubtotalOri; - - /** - * 复购券小计 - */ - private BigDecimal repurCouponSubtotalOri; - - /** - * 直推收益 - */ - private BigDecimal directIncome; - - /** - * 拓展收益 - */ - private BigDecimal expandIncome; - - /** - * 拓展无封 (拓展收益按等级正常比例结算,并 拓展收益按等级正常比例结算 无封顶) - */ - private BigDecimal expandNoCapping; - - /** - * 拓展封顶 (拓展收益按等级正常比例结算,不按4-N结算,根据配置的封顶值限制最大收益) - */ - private BigDecimal expandCapping; - - - /** - * 分红收益 - */ - private BigDecimal shareIncome; - - /** - * 报单收益 - */ - private BigDecimal serviceIncome; - - /** - * 云代直推收益 - */ - private BigDecimal cloudDirectIncome; - - /** - * 云代首购收益 - */ - private BigDecimal cloudPurIncome; - - /** - * 云代复购收益 - */ - private BigDecimal cloudRepurIncome; - - private BigDecimal repurPushIncome; - - /** - * 复购拓展收益 - */ - private BigDecimal repurExpandIncome; - - /** - * 复购券 - */ - private BigDecimal repurCoupon; - - /** - * 复购券均分收益 - */ - private BigDecimal repurCouponShare; - - /** - * 平台服务费 - */ - private BigDecimal serviceSpend; - - /** - * 环球积分 - */ - private BigDecimal globalPoints; - - /** - * 车奖积分 - */ - private BigDecimal carAwardPoints; - - /** - * 店铺收益 - */ - private BigDecimal storeIncome; - - /** - * 嗨粉推荐收益 - */ - private BigDecimal hiFunIncome; - - /** - * 首购实发小计 - */ - private BigDecimal purRealSubtotal; - - /** - * 云代实发小计 - */ - private BigDecimal cloudRealSubtotal; - - /** - * 复购实发小计 - */ - private BigDecimal repurRealSubtotal; - - /** - * 复购券小计 - */ - private BigDecimal repurCouponSubtotal; - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/CuMemberBonusVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/CuMemberBonusVO.java index c9557d1b..c4d55ead 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/CuMemberBonusVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/CuMemberBonusVO.java @@ -1,5 +1,6 @@ package com.hzs.bonus.bonus.vo; +import com.baomidou.mybatisplus.annotation.TableField; import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; import lombok.Data; @@ -87,104 +88,39 @@ public class CuMemberBonusVO implements Serializable { private Integer grantStatus; /** - * 需要转换人民币的 - */ - public static final String[] INCOME_ARRAY = new String[]{ - "backPoints", "retailRangeIncome", "retailSameLevelIncome", "retailAreaIncome", - "retailBenefitRangeIncome", "retailMonthRepurchaseIncome", "coachIncome", "retailBenefitAvgIncome", - "retailBenefitIncome", "retailRealSubtotal", "realIncomeTotal", "repurRangeIncome"}; - - - private BigDecimal retailRangeIncome; - /** - * 直推收益 + * 注册直推收益-众康 */ @Excel(name = "直推收益", scale = 2) - private BigDecimal retailRangeIncomeOri; + private BigDecimal directIncome; + /** + * 阶段收益-众康 + */ + @Excel(name = "阶段收益", scale = 2) + private BigDecimal storeIncome; + + /** + * 复购见点收益-众康 + */ + @Excel(name = "见点收益", scale = 2) + private BigDecimal globalPoints; + + /** + * 领导奖级差收益-众康 + */ + @Excel(name = "领导奖", scale = 2) + private BigDecimal retailRangeIncome; + + /** + * 领导奖平级收益-众康 + */ + @Excel(name = "平级奖", scale = 2) private BigDecimal retailSameLevelIncome; - /** - * 平级收益 - */ - @Excel(name = "平级收益", scale = 2) - private BigDecimal retailSameLevelIncomeOri; - - private BigDecimal retailAreaIncome; - /** - * 区域分红 - */ - @Excel(name = "区域分红", scale = 2) - private BigDecimal retailAreaIncomeOri; - - /** - * 新零售福利级差收益 - */ - private BigDecimal retailBenefitRangeIncome; - @Excel(name = "月度福利级差收益", scale = 2) - private BigDecimal retailBenefitRangeIncomeOri; - - /** - * 新零售复购级差收益 - */ - private BigDecimal retailMonthRepurchaseIncome; - @Excel(name = "月度复购级差收益", scale = 2) - private BigDecimal retailMonthRepurchaseIncomeOri; - - /** - * 培育津贴 - */ - private BigDecimal coachIncome; - @Excel(name = "培育津贴", scale = 2) - private BigDecimal coachIncomeOri; - - /** - * 新零售福利平均收益 - */ - private BigDecimal retailBenefitAvgIncome; - @Excel(name = " 福利平均收益", scale = 2) - private BigDecimal retailBenefitAvgIncomeOri; - - /** - * 新零售福利加权收益 - */ - private BigDecimal retailBenefitIncome; - @Excel(name = " 福利加权收益", scale = 2) - private BigDecimal retailBenefitIncomeOri; - - /** - * 复购级差收益 - */ - private BigDecimal repurRangeIncome; - @Excel(name = "复购级差收益", scale = 2) - private BigDecimal repurRangeIncomeOri; - - /** - * 商城重消 - */ - @Excel(name = "商城重消", scale = 2) - private BigDecimal backPointsOri; - - /** - * 商城重消 - */ - private BigDecimal backPoints; - - /** - * 新零售收益小计 - */ - private BigDecimal retailRealSubtotal; - -// @Excel(name = "收益小计", scale = 2) - private BigDecimal retailRealSubtotalOri; /** * 实发收益总计 */ @Excel(name = "实发收益总计", scale = 2) - private BigDecimal realIncomeTotalOri; - - /** - * 实发收益总计 - */ private BigDecimal realIncomeTotal; + } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java index 0e7cfaa5..f1d22fb4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/vo/MemberBonusFirstPurchaseVO.java @@ -1,6 +1,7 @@ package com.hzs.bonus.bonus.vo; import com.hzs.common.core.annotation.BigDecimalFormat; +import com.hzs.common.core.annotation.Excel; import lombok.*; import java.math.BigDecimal; @@ -15,116 +16,46 @@ import java.math.BigDecimal; @NoArgsConstructor public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO { -// /** -// * 直推收益 -// */ -// private BigDecimal directIncome; -// -// /** -// * 拓展收益 -// */ -// private BigDecimal expandIncome; -// -// /** -// * 分红收益 -// */ -// private BigDecimal shareIncome; -// -// /** -// * 报单收益 -// */ -// private BigDecimal serviceIncome; + /** + * 注册直推收益-众康 + */ + @BigDecimalFormat + private BigDecimal directIncome; /** - * 商城重消 + * 阶段收益-众康 */ - @BigDecimalFormat("#0.00") - private BigDecimal backPoints; -// -// /** -// * 首购实发小计 -// */ -// private BigDecimal purRealSubtotal; -// -// /** -// * 复购推荐收益 -// */ -// private BigDecimal repurPushIncome; -// -// /** -// * 复购拓展收益 -// */ -// private BigDecimal repurExpandIncome; + @BigDecimalFormat + private BigDecimal storeIncome; /** - * 复购级差收益 + * 复购见点收益-众康 */ - @BigDecimalFormat("#0.00") - private BigDecimal repurRangeIncome; - -// /** -// * 复购实发小计 -// */ -// private BigDecimal repurRealSubtotal; -// -// /** -// * 乐学直推收益 -// */ -// private BigDecimal globalPoints; - + @BigDecimalFormat + private BigDecimal globalPoints; /** - * 新零售直推收益 + * 领导奖级差收益-众康 */ - @BigDecimalFormat("#0.00") + @BigDecimalFormat private BigDecimal retailRangeIncome; /** - * 新零售平级收益 + * 领导奖平级收益-众康 */ - @BigDecimalFormat("#0.00") + @BigDecimalFormat private BigDecimal retailSameLevelIncome; - /** - * 新零售区域分红 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailAreaIncome; - - /** - * 福利级差收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailBenefitRangeIncome; - - /** - * 复购级差收益 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailMonthRepurchaseIncome; - - /** - * 培育津贴 - */ - @BigDecimalFormat("#0.00") - private BigDecimal coachIncome; - - /** - * 福利分红收益总计 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailBenefitIncomeTotal; - - /** - * 新零售收益小计 - */ - @BigDecimalFormat("#0.00") - private BigDecimal retailRealSubtotal; - /** * 实发收益总计 */ - @BigDecimalFormat("#0.00") - private BigDecimal realIncomeTotal; + @BigDecimalFormat + private BigDecimal realIncomeTotalOri; + + /** + * 新零售收益小计 + */ + @BigDecimalFormat + private BigDecimal retailRealSubtotal; } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java new file mode 100644 index 00000000..723f1b0b --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/constant/BonusConstants.java @@ -0,0 +1,100 @@ +package com.hzs.bonus.constant; + +import cn.hutool.core.util.ReflectUtil; +import com.hzs.common.core.utils.DateUtils; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; + +import java.lang.reflect.Field; +import java.math.BigDecimal; +import java.util.*; + +public class BonusConstants { + + /** + * 领导平级奖金为3个2%的10% + */ + public static final BigDecimal SAME_LEVEL_RATIO = new BigDecimal("0.02"); + + /** + * 领导奖处理时,满350PV以上按350算 + */ + public static final BigDecimal RANGE_BONUS_ACHIEVE = new BigDecimal("350"); + + /** + * 赠送2个点位订单金额 + */ + public static final BigDecimal GIFT_TWO_AMOUNT = new BigDecimal("20000"); + /** + * 赠送1个点位订单金额 + */ + public static final BigDecimal GIFT_ONE_AMOUNT = new BigDecimal("10000"); + + /** + * 一阶段奖金 -- 满14,发35 + */ + public static final BigDecimal ONE_BONUS = new BigDecimal("35"); + /** + * 二阶段奖金 -- 满14,发220 + */ + public static final BigDecimal TWO_BONUS = new BigDecimal("220"); + /** + * 三阶段一层奖金 -- 第一层满2,发160 + */ + public static final BigDecimal THREE_BONUS_1 = new BigDecimal("160"); + /** + * 三阶段二层奖金 -- 第二层满4,发320 + */ + public static final BigDecimal THREE_BONUS_2 = new BigDecimal("320"); + /** + * 三阶段三层前7点奖金 -- 发130 + */ + public static final BigDecimal THREE_BONUS_3 = new BigDecimal("130"); + /** + * 三阶段三层前最后一点奖金 -- 发155 + */ + public static final BigDecimal THREE_BONUS_38 = new BigDecimal("155"); + + /** + * 赠点初始时间 + */ + public static final Date GIFT_PAY_TIME = DateUtils.parseStringToDateTime("2025-09-01 00:00:00"); + + public static final String POINT_11 = "11"; + public static final String POINT_12 = "12"; + public static final String POINT_21 = "21"; + public static final String POINT_22 = "22"; + public static final String POINT_23 = "23"; + public static final String POINT_24 = "24"; + public static final String POINT_31 = "31"; + public static final String POINT_32 = "32"; + public static final String POINT_33 = "33"; + public static final String POINT_34 = "34"; + public static final String POINT_35 = "35"; + public static final String POINT_36 = "36"; + public static final String POINT_37 = "37"; + public static final String POINT_38 = "38"; + + // 全部字段 + public static final List FIELD_LIST = Arrays.asList(POINT_11, POINT_12, POINT_21, POINT_22, POINT_23, POINT_24, + POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); + // 第三层字段 + public static final List THREE_FIELD_LIST = Arrays.asList(POINT_31, POINT_32, POINT_33, POINT_34, POINT_35, POINT_36, POINT_37, POINT_38); + + // 会员ID字段 + public static final String POINT_MEMBER_FIELD_NAME = "pointMember"; + // 会员子点位字段 + public static final String POINT_FIELD_NAME = "point"; + // 入库标记字段 + public static final String UPDATE_FLAG = "updateBool"; + + public static Map FIELD_MAP = null; + + static { + BonusConstants.FIELD_MAP = new HashMap<>(); + for (String suffix : BonusConstants.FIELD_LIST) { + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_MEMBER_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_MEMBER_FIELD_NAME + suffix)); + BonusConstants.FIELD_MAP.put(BonusConstants.POINT_FIELD_NAME + suffix, ReflectUtil.getField(CuMemberRetailDetail.class, BonusConstants.POINT_FIELD_NAME + suffix)); + } + } + +} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java deleted file mode 100644 index 6646c098..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/api/ApiCuRegionAssessController.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.controller.api; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import java.util.ArrayList; -import java.util.List; - -/** - * @description: 考核会员端 - * @author: sui q - * @time: 2025/1/16 11:12 - * @classname: ApiCuRegionAssessController - * @package_name: com.hzs.bonus.detail.controller.api - * version 1.0.0 - */ -@RestController -@RequestMapping("/api/region") -public class ApiCuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 查询会员昨天奖金的值 - */ - @GetMapping("/query") - public TableDataInfo listRegionAssess(){ - CuRegionAssessParam cuRegionAssessParam = new CuRegionAssessParam(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - cuRegionAssessParam.setPkMember(SecurityUtils.getUserId()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - return getDataTable(regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList)); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java deleted file mode 100644 index 7f5f2bc5..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuMemberAssessController.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.enums.EOperationMethod; -import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * @Description: - * @Author: sui q - * @Time: 2022/11/8 13:50 - * @Classname: CuMemberAssessController - * @PackageName: com.hzs.member.detail.controller.manage - */ -@RestController -@RequestMapping("/manage/assess") -public class CuMemberAssessController extends BaseController { - - private ICuMemberAssessService cuMemberAssessService; - - @Autowired - public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) { - this.cuMemberAssessService = cuMemberAssessService; - } - - /** - * 考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult calculationCuMemberAssess(String settleDate) { - cuMemberAssessService.calculationCuMemberAssess(DateUtils.parseStringToDate(settleDate)); - return AjaxResult.success(); - } - - /** - * 重算考核(复购考核、分红考核) - * 考核默认考核当月 - * @return AjaxResult - */ - @GetMapping("/retry-examine") - @Log(module = EOperationModule.CU_MEMBER_ASSESSMENT, method = EOperationMethod.UPDATE) - public AjaxResult retryCalculationCuMemberAssess(String settleDate) { - cuMemberAssessService.retryCalculationAssess(DateUtils.currentMonthFirstDate(DateUtils.parseStringToDate(settleDate)), Boolean.FALSE); - return AjaxResult.success(); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java deleted file mode 100644 index 0e4d13f9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/controller/manage/CuRegionAssessController.java +++ /dev/null @@ -1,88 +0,0 @@ -package com.hzs.bonus.detail.controller.manage; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessExcelVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.utils.poi.ExcelUtil; -import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.security.utils.SecurityUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; -import java.util.List; - -/** - * 新零售会员区域考核 前端控制器 - */ -@RestController -@RequestMapping("/manage/region") -public class CuRegionAssessController extends BaseController { - - @Autowired - private ICuRegionAssessService cuRegionAssessService; - - @Autowired - private ICuMemberSettlePeriodService cuMemberSettlePeriodService; - - @Autowired - private ICuRegionAssessService regionAssessService; - - /** - * 考核 - * 考核默认考核当月 - * - * @return AjaxResult - */ - @GetMapping("/examine") - public AjaxResult calculationCuRegionAssess(String settleDate) { - Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId(); - String rangeTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; - cuRegionAssessService.assessRegionByEveryMonth(settleDate, rangeTableName); - return AjaxResult.success(); - } - - /** - * 查询会员昨天奖金的值 - */ - @PostMapping("/query") - public TableDataInfo listRegionAssess(@RequestBody CuRegionAssessParam cuRegionAssessParam) { - startPage(); - cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = regionAssessService.getCuRegionAssessVoS(cuRegionAssessExtList); - TableDataInfo dataTable = getDataTable(cuRegionAssessExtList); - dataTable.setRows(cuRegionAssessVoList); - return dataTable; - } - - /** - * 分页查询会员某个时间段内的奖金汇总 - */ - @PostMapping("/export") - public void exportRegionAssess(HttpServletResponse response, CuRegionAssessParam cuRegionAssessParam) { - List cuRegionAssessExtList = regionAssessService.queryRegionAssessByCondition(cuRegionAssessParam); - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessExcelVO regionAssessExcelVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessExcelVO.class); - regionAssessExcelVO.setAssessDate(cuRegionAssessDetail.getAssessDate()); - regionAssessExcelVO.setTeamMonthPv(cuRegionAssessDetail.getTeamMonthPv()); - regionAssessExcelVO.setSmallAreaPv(cuRegionAssessDetail.getSmallAreaPv()); - regionAssessExcelVO.setAssessStatus(cuRegionAssessDetail.getAssessStatus()); - cuRegionAssessVoList.add(regionAssessExcelVO); - } - } - ExcelUtil util = new ExcelUtil<>(CuRegionAssessExcelVO.class); - util.exportExcel(response, cuRegionAssessVoList, "区域考核导出"); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java index 75b4ae6e..062cb5e0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessDetailMapper.java @@ -2,68 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface CuMemberAssessDetailMapper extends BaseMapper { - - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param cuMemberList 需要重新考核的会员 - * @param assessType 类型 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("cuMemberList") List cuMemberList, @Param("assessType") Integer assessType); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - Integer updateCuMemberAssessDetailByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 批量删除会员考核明细 - * @param revokeDetailList 退单的明细数据 - * @return: Integer - * @Author: sui q - * @Date: 2022/11/9 15:37 - */ - Integer updateCuMemberAssessDetailByRevoke(@Param("revokeDetailList") List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index 90baae05..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java index e483d22f..64ce9346 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberAssessMapper.java @@ -2,125 +2,9 @@ package com.hzs.bonus.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAssess; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员信息-会员考核记录 Mapper 接口 */ public interface CuMemberAssessMapper extends BaseMapper { - - /* - * 清空表数据 - **/ - void deleteCuMemberAssessByPeriod(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 初始化复购考核表数据,将结算表数据插入到考核表中 - * - * @param tableName 更新表名 - * @param sourceTableName 来源表,用哪个表进行更新 - * @param period 期间 - * @param month 考核月份 - */ - Integer insertRepCuMemberRangeAssess(@Param("tableName") String tableName, @Param("sourceTableName") String sourceTableName, - @Param("period") Integer period, @Param("month") String month); - - /** - * 更新会员复购考核业绩 - * - * @param tableName 结算表 - * @param beforeTableName 上个月的表 - * @param sourcePeriod 来源结算期 - * @param period 结算结算期间 - * @param assessType 考核类型 0=复购考核 1=分红考核 - */ - Integer updateAssessPeriodBeginByBeforeMonth(@Param("beforeTableName") String beforeTableName, @Param("tableName") String tableName, - @Param("sourcePeriod") Integer sourcePeriod, - @Param("period") Integer period, @Param("assessType") Integer assessType); - - /** - * 更新会员复购考核、分红考核 当月结余,根据上月复购订单 - * - * @param tableName 表名 - * @param period 期间 - * @param assessType 考核类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param orderTypeList 订单类型 - */ - Integer updateAssessPeriodAddBySaOrder(@Param("tableName") String tableName, @Param("period") Integer period, - @Param("assessType") Integer assessType, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("orderTypeList") List orderTypeList); - - /** - * 更新免考通过的考核表 - * 更新会员考核表,根据免考的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodExemptBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员 - * - * @param tableName 需要更新的会员考核表名 - * @param settleTableName 每日结算表 - * @param period 期间 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateAssessCuMemberToRepExempt(@Param("tableName") String tableName, @Param("settleTableName") String settleTableName, - @Param("period") Integer period, @Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - Integer updateCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName, @Param("startDate") Date startDate, - @Param("endDate") Date endDate, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 更新考核表,更新复购考核状态为免考,首次注册、首次晋升的会员,更新结算网体 - * - * @param settleTableName 每日结算表 - */ - Integer updateAllCuMemberSettleToRepExempt(@Param("settleTableName") String settleTableName); - - /** - * 更新考核通过的考核表 - * 更新会员考核表,根据使用值的更新期末结余,更新结余跟其他的不一样, - * 只更新一张表,复购跟分红可以一起更新,复购或分红只需要更新一次 - * - * @param tableName 表名 - * @param period 期间 - */ - Integer updateAssessPeriodCheckBalanceByUsed(@Param("tableName") String tableName, @Param("period") Integer period); - - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(@Param("settleTable") String settleTable, @Param("period") Integer period, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java deleted file mode 100644 index dcf20b69..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuMemberGradeMapper.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 Mapper 接口 - */ -public interface CuMemberGradeMapper extends BaseMapper { - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(@Param("rangeTableName") String rangeTableName, @Param("period") Integer period); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(@Param("secondRangeTableName") String secondRangeTableName, @Param("period") Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(@Param("period") Integer period, @Param("memberRetailRangeExtList") List memberRetailRangeExtList); - - /** - * 查询会员等级 - */ - List queryCuMemberLevel(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /** - * 回退会员等级 - */ - void updateCuMemberGradeLevel(@Param("rangeTableName") String rangeTableName, @Param("pkOrder") Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(@Param("pkMember") Long pkMember, @Param("pkOrder") Long pkOrder); - - /** - * 删除等级 - */ - void deleteCuMemberGrade(@Param("period") Integer period); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGradeByList(@Param("cuMemberGradeList") List cuMemberGradeList, @Param("period") Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(@Param("cuMemberRetailRangeExtList") List cuMemberRetailRangeExtList, - @Param("period") Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java deleted file mode 100644 index 25efdea9..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessDetailMapper.java +++ /dev/null @@ -1,58 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 Mapper 接口 - */ -public interface CuRegionAssessDetailMapper extends BaseMapper { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量生成考核明细seq - * - * @param rowNum - * @return - */ - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(@Param("cuRegionAssessDetailList") List cuRegionAssessDetailList); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailTeamPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 根据上月数据更新考核明细数据 - **/ - void mergeCuRegionAssessDetailSmallAreaPv(@Param("rangeTableName") String rangeTableName, @Param("assessDate") Date assessDate); - - /* - * 初始化考核,先置为考核失败 - **/ - void updateCuRegionAssessDetailInit(@Param("assessDate") Date assessDate); - - /* - * 根据月后业绩考核,汇总满足30w,小区10w - **/ - void updateCuRegionAssessDetailByPv(@Param("assessDate") Date assessDate); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java deleted file mode 100644 index 005d38f5..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/mapper/CuRegionAssessMapper.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.hzs.bonus.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 Mapper 接口 - */ -public interface CuRegionAssessMapper extends BaseMapper { - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(@Param("regionAssessParam") CuRegionAssessParam regionAssessParam); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessPeriod") Integer assessPeriod); - - /* - * 考核开始日期 - **/ - void updateAssessRegionByDate(@Param("assessStartDate") Date assessStartDate, @Param("assessEndDate") Date assessEndDate); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - */ - List batchQueryCuRegionAssessSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssess(@Param("cuRegionAssessList") List cuRegionAssessList); - - /* - * 更新达标次数 - **/ - void mergeCuRegionAssess(@Param("assessDate") Date assessDate); - - /* - * 查询待考核的区域 - **/ - List queryCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /* - * 查询到期日期是上个月的区域 - **/ - List queryDueCuMemberRetailRegion(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - - /* - * 查询手动设置考核的近6个月考核记录 - **/ - List queryRegionAssessByDate(@Param("memberRetailRegionList") List memberRetailRegionList, @Param("startDate") Date startDate, @Param("endDate") Date endDate); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java deleted file mode 100644 index adb6dfd1..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/provider/CuRegionAssessProvider.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.detail.provider; - -import com.hzs.bonus.detail.ICuRegionAssessApi; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 新零售会员dubbo服务 - * @Author: jiang chao - * @Time: 2024/12/31 13:40 - * @Classname: MemberRetailProvider - * @PackageName: com.hzs.retail.member.provider - */ -@Slf4j -@DubboService -public class CuRegionAssessProvider implements ICuRegionAssessApi { - - @Autowired - private ICuRegionAssessService iCuRegionAssessService; - - - /** - * @description: 定时处理会员收益区域(处理前三天) - * @author: zhang jing - * @date: 2025/3/7 10:45 - * @param: [startDate] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R validateHandAreaAssess(Date startDate,Date endDate) { - try { - iCuRegionAssessService.validateHandAreaAssess(startDate,endDate); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理前3天收益区域异常", e); - return R.fail(e.getMessage()); - } - } - - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java index 4195becb..10fb5eb0 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessDetailService.java @@ -2,63 +2,10 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** - *

* 考核业绩变化明细表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface ICuMemberAssessDetailService extends IService { - /* - * @description: 根据期间删除会员考核记录 - * @author: sui q - * @date: 2023/5/25 10:52 - * @param: null null - **/ - void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /* - * @description: 每月考试将订单插入会员考核明细 - * @author: sui q - * @date: 2023/5/25 11:36 - * @param: null null - **/ - void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate); - - /** - * 插入考核记录 - * @param tableName 表名 - * @param period 期间 - * @param newCuMemberSettleExtList 会员列表 - * @return: void - * @Author: sui q - * @Date: 2022/11/9 15:56 - */ - void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList); - - /** - * 新增或修改会员考核明细表,根据期间,重算就是修改 - * @param tableName 来源表 - * @param period 期间 - * @Author: sui q - * @Date: 2022/11/8 11:21 - */ - void updateCuMemberAssessDetailByPeriod(String tableName, Integer period); - - /** - * 删除可能会发生变动的会员的考核明细 - * @param revokeDetailList 变动的记录 - * @Author: sui q - * @Date: 2022/11/9 15:31 - */ - void deleteCuMemberAssessDetailByList(List revokeDetailList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index 630b0400..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java index b85bb819..ed209323 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAssessService.java @@ -3,28 +3,9 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAssess; -import java.util.Date; -import java.util.List; - /** * 会员信息-会员考核记录 服务类 */ public interface ICuMemberAssessService extends IService { - /** - * 复购考核每月第一考核调用此方法 - */ - void calculationCuMemberAssess(Date currentDate); - - /** - * 重算考核 奖金用、每天的重算复购考核用(复购考核、分红考核),只重算免考的 - * - * @param currentDate 哪一天进行重新复购考核,拿昨天的值跟现在的值对比 - */ - void retryCalculationAssess(Date currentDate, Boolean flag); - - /* - * 查询满足分红考核的人数,达标人数 - **/ - List queryCuMemberAssTotal(String startDate, Integer pkCountry); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java index 630ffff6..e46a11e4 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberAwardsService.java @@ -3,7 +3,9 @@ package com.hzs.bonus.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.detail.CuMemberAwards; +import com.hzs.common.domain.system.config.BdAwards; +import java.util.Date; import java.util.List; /** @@ -12,12 +14,9 @@ import java.util.List; public interface ICuMemberAwardsService extends IService { /** - * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天 - * - * @param period 结算期间 - * @param rangeTableName 结算表 + * 计算奖衔 */ - void calculateCuMemberRetailRangeAwardsInit(String settleDate, Integer period, String rangeTableName); + void calculateCuMemberAwards(String rangeTableName, List awardsList, Date settleDate, Integer period); /** * 批量插入奖衔记录 @@ -39,6 +38,6 @@ public interface ICuMemberAwardsService extends IService { /** * 回退奖衔 */ - void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period, Integer isToday); + void mergeCuMemberBackAwards(String rangeTableName, Long pkMember, Integer period); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java deleted file mode 100644 index 42165197..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuMemberGradeService.java +++ /dev/null @@ -1,63 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务类 - */ -public interface ICuMemberGradeService extends IService { - - /** - * 回退极差奖衔,每日重新结算,先把奖衔回退到前一天 - * - * @param period 结算期间 - * @param rangeTableName 结算表 - */ - List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName); - - /** - * 查询会员最新手动升级记录,更新秒结表会员等级小于手动升级的会员等级 - */ - void updateCuMemberGradeSecond(String secondRangeTableName, Integer period); - - /** - * 查询手动升级的等级 - */ - List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList); - - /** - * 回退会员等级 - */ - void updateCuMemberGrade(String rangeTableName, Long pkOrder); - - /** - * 查询订单升级记录 - * - * @param pkMember - * @param pkOrder - * @return - */ - CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder); - - /** - * 插入会员等级升级记录 - */ - void insertCuMemberGrade(List cuMemberGradeList); - - /** - * 删除等级升级记录 - */ - void deleteCuMemberGrade(List cuMemberGradeList, Integer period); - - /** - * 查询自动升级的等级 - */ - List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period); - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java deleted file mode 100644 index f0e47195..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessDetailService.java +++ /dev/null @@ -1,35 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务类 - */ -public interface ICuRegionAssessDetailService extends IService { - - /* - * 考核开始日期 - **/ - void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 删除重复的数据 - **/ - void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate); - - List batchQueryCuRegionAssessDetailSeq(Integer rowNum); - - /* - * 批量插入区域考核数据 - **/ - void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList); - - /* - * 根据上月数据考核区域 - **/ - void assessCuRegionAssessDetail(String rangeTableName, Date assessDate); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java deleted file mode 100644 index 29a77c3d..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/ICuRegionAssessService.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.hzs.bonus.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核 服务类 - */ -public interface ICuRegionAssessService extends IService { - - /* - * 每月考核区域是否达标 - **/ - void assessRegionByEveryMonth(String settleDate, String rangeTableName); - - /** - * 定时处理会员收益区域(处理前三天) - * - * @return: void - **/ - void validateHandAreaAssess(Date startDate, Date endDate); - - /* - * 考核开始日期 - **/ - void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod); - - /* - * 查询考核结果 - **/ - List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam); - - List getCuRegionAssessVoS(List cuRegionAssessExtList); -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java index 98b07785..d0813914 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessDetailServiceImpl.java @@ -1,79 +1,14 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAssessmentType; import com.hzs.common.domain.member.detail.CuMemberAssessDetail; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.bonus.detail.mapper.CuMemberAssessDetailMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - /** - *

* 考核业绩变化明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 */ @Service public class CuMemberAssessDetailServiceImpl extends ServiceImpl implements ICuMemberAssessDetailService { - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - - @Override - public void deleteCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.deleteCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void insertCuMemberAssesDetailByOrder(String tableName, Integer period, Date startDate, Date endDate) { - baseMapper.insertCuMemberAssesDetailByOrder(tableName, period, startDate, endDate); - } - - @Override - public void insertCuMemberAssessDetailByPeriod(String tableName, Integer period, List newCuMemberSettleExtList) { - List purchaseMemberList = new ArrayList<>(); - List shareMemberList = new ArrayList<>(); - newCuMemberSettleExtList.forEach(cuMemberSettleExt -> { - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == cuMemberSettleExt.getAssessType()) { - purchaseMemberList.add(cuMemberSettleExt); - } else { - shareMemberList.add(cuMemberSettleExt); - } - }); - if (purchaseMemberList.size() > 0) { - List> purchaseHandleCutList = cuMemberBonusSettle.handleCutList(purchaseMemberList); - purchaseHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.REPURCHASE_ASSESS.getValue()) ); - } - if (shareMemberList.size() > 0) { - List> shareHandleCutList = cuMemberBonusSettle.handleCutList(shareMemberList); - shareHandleCutList.forEach(cuMemberBonusSettleList -> - baseMapper.insertCuMemberAssessDetailByPeriod(tableName, period, cuMemberBonusSettleList, EAssessmentType.SHARE_ASSESS.getValue())); - } - } - - @Override - public void updateCuMemberAssessDetailByPeriod(String tableName, Integer period) { - baseMapper.updateCuMemberAssessDetailByPeriod(tableName, period); - } - - @Override - public void deleteCuMemberAssessDetailByList(List revokeDetailList) { - List> handleCutList = cuMemberBonusSettle.handleCutList(revokeDetailList, - MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - baseMapper.updateCuMemberAssessDetailByRevoke(list); - }); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index 55d7de87..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.service.ICuMemberAssessExemptService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.bonus.detail.mapper.CuMemberAssessExemptMapper; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java index dd512305..978e073b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAssessServiceImpl.java @@ -1,21 +1,10 @@ package com.hzs.bonus.detail.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.bonus.detail.service.ICuMemberAssessDetailService; import com.hzs.bonus.detail.service.ICuMemberAssessService; -import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.bonus.detail.mapper.CuMemberAssessMapper; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; /** * 会员信息-会员考核记录 服务实现类 @@ -23,164 +12,4 @@ import java.util.*; @Service public class CuMemberAssessServiceImpl extends ServiceImpl implements ICuMemberAssessService { - @Autowired - private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; - @Autowired - private ICuMemberAssessDetailService iCuMemberAssessDetailService; - - /** - * 复购考核每月第一次考核调用此方法 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void calculationCuMemberAssess(Date currentDate) { - // 查询当前时间的第一天跟最后一天 - // 需要验证考核国家是否有复购考核 分红考核 - // 考核日期不能跨越考核,只能当月考核,当月考核上月 - if (DateUtils.currentDay(currentDate) == 1) { - String currentMonthFirstDate = DateUtils.currentMonthFirstDateStr(currentDate); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - String currentTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(currentMonthFirstDate); - // 清空数据 根据期数清空cu_member_assess cu_member_assess_detail表数据 - initCurrentAssess(currentDate, currentTableName, currentPeriod); - // 初始化复购考核的上月结余 - initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.REPURCHASE_ASSESS.getValue()); - // 初始化分红考核的上月结余 -// initCurrentAssessByBeforeMonth(currentDate, currentTableName, currentPeriod, EAssessmentType.SHARE_ASSESS.getValue()); - // 更新当月结余 结余会同时更新复购跟分红,只需要更新一次 - // 1 有免考状态的 本月使用是 0,考核状态是免考通过,免考将所有的值更改一下期末 期末= 期初+本月 - // 注意 不修改考核状态为通过的值,可能存在之前考核通过,又手动免考的人 - baseMapper.updateAssessPeriodExemptBalanceByUsed(currentTableName, currentPeriod); - // 2 需要扣除通过的,需要记录流水 - // 记录流水,新增或修改 - iCuMemberAssessDetailService.updateCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.updateAssessPeriodCheckBalanceByUsed(currentTableName, currentPeriod); - } - } - - /** - * 奖金计算时重算考核 (复购考核、分红考核),只重算免考的、撤单的 - * - * @param currentDate 考核时间 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public void retryCalculationAssess(Date currentDate, Boolean flag) { -// String beforeDateStr = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, currentDate); -// Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeDateStr).getPkId(); - Integer currentPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)).getPkId(); -// String beforeTableName = TableNameConstants.CU_MEMBER_SETTLE + beforePeriod; -//// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 -// String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); -// String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); -// Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); -// // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); -// // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; -// // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, -// // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -//// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 -// // 所有的海粉会员设置复购考核失败,存在任意订单的海粉会员复购考核成功 -// // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); -// baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); -// // 奖金重算时更新结算表,flag=true代表奖金重算时,重算考核需要更新网体 flag=false 代表重算考核 - if (flag) { - // 2024-09-09 所有人全部免考通过,之后的当月免考通过 - if (DateUtils.compareDateBefore(currentDate, DateUtils.parseStringToDate("2024-10-01"))) { - baseMapper.updateAllCuMemberSettleToRepExempt(settleTableName); - } else { - baseMapper.updateCuMemberSettleToRepExempt(settleTableName, startDate, endDate, startPeriod, endPeriod); - } - } - } - - private void initCurrentAssess(Date currentDate, String currentTableName, Integer currentPeriod) { - // 获取上月最后一天 - String beforeLastDate = DateUtils.beforeMonthLastDateStr(currentDate); - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeLastDate); - int period = cuMemberSettlePeriod.getPkId(); - String sourceTable = TableNameConstants.CU_MEMBER_SETTLE + period; - String rangeSourceTable = TableNameConstants.CU_MEMBER_RANGE + period; - // 清空子表、主表数据 - iCuMemberAssessDetailService.deleteCuMemberAssessDetailByPeriod(currentTableName, currentPeriod); - baseMapper.deleteCuMemberAssessByPeriod(currentTableName, currentPeriod); - // 初始化复购考核 - String month = DateUtils.getMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate)); - // 结算日期后一天 - baseMapper.insertRepCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - baseMapper.insertRepCuMemberRangeAssess(currentTableName, rangeSourceTable, currentPeriod, month); - // 初始化分红考核 -// baseMapper.insertShareCuMemberAssess(currentTableName, sourceTable, currentPeriod, month); - -// a)更新结算表会员前2部分会员免考状态 满足首次注册的会员 满足满足首次升级的会员 - String tableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.currentYear(currentDate); - String currentMonthFirstDateStr = DateUtils.currentMonthFirstDateStr(currentDate); - Integer monthFirstPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDateStr).getPkId(); - // 结算日期月份的第一天 - Date startDate = DateUtils.beforeMonthFirstDate(currentDate); - // 结算日期后一天 - Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, DateUtils.currentMonthLastDate(currentDate)); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + currentPeriod; - if (DateUtils.currentDay(DateUtils.currentDate()) == 1) { - String currentMonthFirstDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, DateUtils.beforeDate(1, ChronoUnit.DAYS, currentDate)); - Integer yesterdayPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(currentMonthFirstDate).getPkId(); - settleTableName = TableNameConstants.CU_MEMBER_SETTLE + yesterdayPeriod; - } - // 首次晋升、首次升级都是当月加下月考核,查询出上月1号到考核日期的值, - // 等级看会员表支付时间,奖衔看奖衔变更表是否免考(分组取),手动免考查看 最新的结算表手动考核 -// d)前一天不免考,后一天免考,需要做重新考核,直接变考核通过,原来考核通过的不回退考核金额,且考核状态为考核通过,不是免考通过 - // 复购免考通过 - Integer startPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, startDate)).getPkId(); - Integer endPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, endDate)).getPkId(); - baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod); - - // 初始化订单数据,将当月新增加入数据库 - // 上月第一天,上月最后一天 - Date beforeFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - Date currentFirstDate = DateUtils.currentMonthFirstDate(currentDate); - iCuMemberAssessDetailService.insertCuMemberAssesDetailByOrder(currentTableName, currentPeriod, beforeFirstDate, currentFirstDate); - } - - /** - * 初始化期初数据,将上月结余作为本月期初,更新当月新增 - * - * @param currentDate 结算日期 - * @param currentTableName 当前月结算表 - * @param currentPeriod 当前结算期间 - * @param assessmentType 考核类型 0=复购考核 1=分红考核 - */ - private void initCurrentAssessByBeforeMonth(Date currentDate, String currentTableName, Integer currentPeriod, Integer assessmentType) { - List orderTypeList = new ArrayList<>(); - if (EAssessmentType.REPURCHASE_ASSESS.getValue() == assessmentType) { - orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); - orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - orderTypeList.add(EOrderType.COOPERATE_ORDER.getValue()); - } else { - orderTypeList.add(EOrderType.WELFARE_ORDER.getValue()); - } - // 更新考核值,期初是上月考核表的当月剩余业绩 - // 获取结算日月初第一天,获取期间 - // 获取结算日上月最后一天,获取期间 - Date beforeMonthFirstDate = DateUtils.beforeMonthFirstDate(currentDate); - String beforeMonthFirstDateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeMonthFirstDate); - Integer beforePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeMonthFirstDateStr).getPkId(); - String beforeTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(beforeMonthFirstDateStr); - Date currentMonthFirstDate = DateUtils.currentMonthFirstDate(currentDate); - // 初始化复购考核的上月结余 // 更新当月结余 - baseMapper.updateAssessPeriodBeginByBeforeMonth(beforeTableName, currentTableName, beforePeriod, currentPeriod, assessmentType); - // 更新当月新增 - baseMapper.updateAssessPeriodAddBySaOrder(currentTableName, currentPeriod, assessmentType, - beforeMonthFirstDate, currentMonthFirstDate, orderTypeList); - } - - @Override - public List queryCuMemberAssTotal(String startDate, Integer pkCountry) { - int period = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(startDate).getPkId(); - String tableTable = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(startDate); - return baseMapper.queryCuMemberAssTotal(tableTable, period, pkCountry); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java index e371188e..93fcad52 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -1,27 +1,23 @@ package com.hzs.bonus.detail.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; +import com.hzs.bonus.achieve.service.ICuMemberRetailRangeService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.detail.service.ICuMemberAwardsService; import com.hzs.common.core.constant.*; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import com.hzs.common.domain.system.config.BdAwards; import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.detail.mapper.CuMemberAwardsMapper; +import com.hzs.common.domain.system.config.BdAwards; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import java.time.temporal.ChronoUnit; +import java.math.BigDecimal; import java.util.*; /** @@ -36,15 +32,11 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl awardsList, Date settleDate, Integer period) { // 回退结算表奖衔 iCuMemberTreeService.updateBackCuMemberRetailRangeAward(rangeTableName, period); // 回退会员表奖衔 @@ -54,9 +46,108 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl cuMemberAwardsList = new ArrayList<>(); + // 校验大小区会员数据(key:会员ID,value:会员推荐人列表) + Map> cuMemberRangeExtMap = new HashMap<>(); + + for (BdAwards bdAwards : awardsList) { + List cuMemberRetailRangeExtList; + if (bdAwards.getPlaceDeptNum() > 0) { + BdAwards checkAwards = awardsList.stream().filter(tmpDate -> tmpDate.getPkId().equals(bdAwards.getPkCheckAwardsLeft())).findFirst().get(); + cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardPlaceMember(rangeTableName, bdAwards.getAwardsValue(), + bdAwards.getTotalCheck(), bdAwards.getPlaceDeptNum(), checkAwards.getAwardsValue()); + } else { + cuMemberRetailRangeExtList = iCuMemberRetailRangeService.queryEnoughAwardMember(rangeTableName, bdAwards.getTotalCheck(), bdAwards.getAwardsValue()); + } + cuMemberAwardsList.addAll(this.calculateAwards(rangeTableName, bdAwards, period, cuMemberRetailRangeExtList, cuMemberRangeExtMap)); + } + if (cuMemberAwardsList.size() > 0) { + // 插入会员升级记录表 + this.saveBatchCuMemberAwards(cuMemberAwardsList); + // 更新会员表奖衔数据 + iCuMemberService.updateCuMemberAwardsByPeriod(period); + // 更新结算网体表 -- 结算日期到当前日期的所有日结算表 + iCuMemberRetailRangeService.updateCuMemberAwardsByPeriod(rangeTableName, period); + } + } + + private List calculateAwards(String rangeTableName, BdAwards bdAwards, Integer period, + List cuMemberRetailRangeExtList, Map> cuMemberRangeExtMap) { + // 只满足业绩的 + List cuMemberAwardsList = new ArrayList<>(); + + if (cuMemberRetailRangeExtList.size() > 0) { + Date nowDate = new Date(); + + cuMemberRetailRangeExtList.forEach(targetMember -> { + if (bdAwards.getPlaceDeptNum() > 0 && bdAwards.getCommunityCheck().compareTo(BigDecimal.ZERO) == 0) { + // 需要校验部门奖衔并且小区业绩为0的 + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } else { + List cuMemberRangeExtList = cuMemberRangeExtMap.get(targetMember.getPkMember()); + if (null == cuMemberRangeExtList) { + cuMemberRangeExtList = iCuMemberRetailRangeService.queryCuMemberRetailRangeExtByParent(rangeTableName, targetMember.getPkMember()); + cuMemberRangeExtMap.put(targetMember.getPkMember(), cuMemberRangeExtList); + } + // 大区 + BigDecimal consumeBigPv = BigDecimal.ZERO; + for (CuMemberRetailRangeExt cuMemberRetailRangeExt : cuMemberRangeExtList) { + // 累计业绩 = 团队累计消费业绩 + 个人累计消费业绩 + BigDecimal consumePv = cuMemberRetailRangeExt.getTeamConsumePv().add(cuMemberRetailRangeExt.getConsumePv()); + if (ComputeUtil.compareGreaterThan(consumePv, consumeBigPv)) { + // 累计业绩 > 大区业绩,则累计就成为大区 + consumeBigPv = consumePv; + } + } + // 小区业绩 = 团队累计业绩 - 大区业绩 + BigDecimal smallAreaPv = ComputeUtil.computeSubtract(targetMember.getTeamConsumePv(), consumeBigPv); + if (smallAreaPv.compareTo(bdAwards.getCommunityCheck()) >= 0) { + // 小区业绩 >= 考核小区业绩 + if (bdAwards.getPlaceDeptNum() > 0) { + if (CollectionUtil.isNotEmpty(cuMemberRangeExtList)) { + // 验证每条血缘下,满足达标数量 + List checkList = iCuMemberRetailRangeService.listChildAwards(rangeTableName, bdAwards.getPkCheckAwardsLeft(), + Collections.singletonList(targetMember.getPkMember())); + if (CollectionUtil.isNotEmpty(checkList) && checkList.size() >= bdAwards.getPlaceDeptNum()) { + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } + } + } else { + // 不需要考核血缘达标,直接给奖衔 + cuMemberAwardsList.add(getCuMemberRetailAwards(targetMember, period, bdAwards, EAwardsType.RANGE_TYPE.getValue(), targetMember.getPkAwards(), nowDate)); + targetMember.setPkAwards(bdAwards.getPkId()); + targetMember.setAwardsValue(bdAwards.getAwardsValue()); + } + } + } + }); + } + return cuMemberAwardsList; + } + + private CuMemberAwards getCuMemberRetailAwards(CuMemberRetailRangeExt sourceRangeExt, Integer period, BdAwards bdAwards, + Integer awardType, Integer oldLevel, Date nowDate) { + CuMemberAwards cuMemberAwards = CuMemberAwards.builder() + .pkMember(sourceRangeExt.getPkMember()) + .period(period) + .upType(EUpgradeType.AUTO_UPGRADE.getValue()) + .awardType(awardType) + .oldLevel(null == oldLevel ? sourceRangeExt.getPkAwards() : oldLevel) + .newLevel(bdAwards.getPkId()) + .purchaseStatus(EYesNo.NO.getIntValue()) + .build(); + cuMemberAwards.setPkCreator(MagicNumberConstants.PK_ADMIN); + cuMemberAwards.setPkCountry(sourceRangeExt.getPkCountry()); + cuMemberAwards.setCreationTime(nowDate); + return cuMemberAwards; } @Override @@ -77,28 +168,8 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl originalCuMemberSettleMap, Integer period, List cuMemberAwardsList, CuMemberSettleExt enoughAwardsMember) { - CuMemberAwards cuMemberAwards = CuMemberAwards.builder() - .pkMember(enoughAwardsMember.getPkMember()) - .period(period) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - // 原等级 - .oldLevel(originalCuMemberSettleMap.get(enoughAwardsMember.getPkMember()).getPkOriAwards()) - .newLevel(enoughAwardsMember.getPkAwards()) - // 默认不免考 - .purchaseStatus(EYesNo.NO.getIntValue()) - .build(); - cuMemberAwards.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberAwards.setPkCountry(enoughAwardsMember.getPkSettleCountry()); - cuMemberAwardsList.add(cuMemberAwards); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java deleted file mode 100644 index 34cfd152..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuMemberGradeServiceImpl.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuMemberGradeMapper; -import com.hzs.bonus.detail.service.ICuMemberGradeService; -import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt; -import com.hzs.common.domain.member.detail.CuMemberGrade; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 会员信息-等级升级记录 服务实现类 - */ -@Service -public class CuMemberGradeServiceImpl extends ServiceImpl implements ICuMemberGradeService { - - @Override - public List calculateCuMemberRetailGradeInit(Integer period, Date startDate, Date endDate, String rangeTableName) { - // 更新奖衔,回退等级 - baseMapper.deleteCuMemberGrade(period); - baseMapper.updateCuMemberGrade(rangeTableName, period); - return baseMapper.queryCuMemberLevel(startDate, endDate); - } - - @Override - public void updateCuMemberGradeSecond(String secondRangeTableName, Integer period) { - baseMapper.updateCuMemberGradeSecond(secondRangeTableName, period); - } - - @Override - public List queryCuMemberGradeByList(Integer period, List memberRetailRangeExtList) { - return baseMapper.queryCuMemberGradeByList(period, memberRetailRangeExtList); - } - - @Override - public void updateCuMemberGrade(String rangeTableName, Long pkOrder) { - baseMapper.updateCuMemberGradeLevel(rangeTableName, pkOrder); - } - - @Override - public CuMemberRetailRangeExt getMemberLevel(Long pkMember, Long pkOrder) { - return baseMapper.getMemberLevel(pkMember, pkOrder); - } - - @Override - public void insertCuMemberGrade(List cuMemberGradeList) { - saveBatch(cuMemberGradeList); - } - - @Override - public void deleteCuMemberGrade(List cuMemberGradeList, Integer period) { - baseMapper.deleteCuMemberGradeByList(cuMemberGradeList, period); - } - - @Override - public List queryCuMemberGrade(List cuMemberRetailRangeExtList, Integer period) { - return baseMapper.queryCuMemberGrade(cuMemberRetailRangeExtList, period); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java deleted file mode 100644 index 89306255..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessDetailServiceImpl.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.detail.mapper.CuRegionAssessDetailMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import org.springframework.stereotype.Service; - -import java.util.Date; -import java.util.List; - -/** - * 新零售会员区域考核明细表 服务实现类 - */ -@Service -public class CuRegionAssessDetailServiceImpl extends ServiceImpl implements ICuRegionAssessDetailService { - - @Override - public void deleteAssessRegionDetailByDate(Date assessStartDate, Integer assessPeriod) { - baseMapper.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - } - - @Override - public void updateAssessRegionDetailByDate(Date assessStartDate, Date assessEndDate) { - baseMapper.updateAssessRegionDetailByDate(assessStartDate, assessEndDate); - } - - @Override - public List batchQueryCuRegionAssessDetailSeq(Integer rowNum) { - return baseMapper.batchQueryCuRegionAssessDetailSeq(rowNum); - } - - @Override - public void batchInsertCuRegionAssessDetail(List cuRegionAssessDetailList) { - baseMapper.batchInsertCuRegionAssessDetail(cuRegionAssessDetailList); - } - - @Override - public void assessCuRegionAssessDetail(String rangeTableName, Date assessDate) { - // 处理考核明细的汇总值 - baseMapper.mergeCuRegionAssessDetailTeamPv(rangeTableName, assessDate); - // 处理考核明细的小区 - baseMapper.mergeCuRegionAssessDetailSmallAreaPv(rangeTableName, assessDate); - // 所有考核先变为考核失败 - baseMapper.updateCuRegionAssessDetailInit(assessDate); - // 验证汇总业绩和小区业绩是否满足条件,汇总业绩满足30000,小区满足100000,变更为考核通过 - baseMapper.updateCuRegionAssessDetailByPv(assessDate); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java deleted file mode 100644 index 7addfb78..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/service/impl/CuRegionAssessServiceImpl.java +++ /dev/null @@ -1,274 +0,0 @@ -package com.hzs.bonus.detail.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; -import com.hzs.bonus.detail.mapper.CuRegionAssessMapper; -import com.hzs.bonus.detail.service.ICuRegionAssessDetailService; -import com.hzs.bonus.detail.service.ICuRegionAssessService; -import com.hzs.bonus.detail.vo.CuRegionAssessDetailVO; -import com.hzs.bonus.detail.vo.CuRegionAssessVO; -import com.hzs.bonus.param.CuRegionAssessParam; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.member.detail.CuRegionAssess; -import com.hzs.common.domain.member.detail.CuRegionAssessDetail; -import com.hzs.common.domain.member.detail.ext.CuRegionAssessExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import com.hzs.retail.member.IMemberRetailApi; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.time.temporal.ChronoUnit; -import java.util.*; - -/** - * 新零售会员区域考核 服务实现类 - */ -@Slf4j -@Service -public class CuRegionAssessServiceImpl extends ServiceImpl implements ICuRegionAssessService { - - @DubboReference - IMemberRetailApi iMemberRetailApi; - - @Autowired - private ICuRegionAssessDetailService iCuRegionAssessDetailService; - - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; - - @Override - @Transactional(rollbackFor = Exception.class) - public void assessRegionByEveryMonth(String settleDate, String rangeTableName) { - // 每月1号进行考核,结算上月最后一期的时候进行区域达标考核 - Date assDate = DateUtils.parseStringToDate(settleDate); - Date assessDate = DateUtils.afterDate(1, ChronoUnit.DAYS, assDate); - - log.info("assDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assDate)); - log.info("assessDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, assessDate)); - - if (DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, assessDate).endsWith("01")) { - // 当月第一天 - Date startDate = DateUtils.currentMonthFirstDate(assDate); - - log.info("startDate : {}", DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, startDate)); - - // 清空 1 号到 今天 的考核数据 - iCuRegionAssessDetailService.updateAssessRegionDetailByDate(startDate, assessDate); - baseMapper.updateAssessRegionByDate(startDate, assessDate); - deleteAssessRegionByDate(assessDate, 1); - - // 生成6期待考核数据,查询上月的区域,第一次考核的时候,明细生成6期 - // 查询目前有效的区域配置 - List memberRetailRegionList = baseMapper.queryCuMemberRetailRegion(startDate, assessDate); - if (memberRetailRegionList.size() > 0) { - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuMemberRetailRegion cuMemberRetailRegion : memberRetailRegionList) { - - if (null != cuMemberRetailRegion.getEffectiveEndDate()) { - // 设置过生效结束时间 - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(1, cuMemberRetailRegion.getEffectiveEndDate()))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - while (assessDate.compareTo(cuRegionAssess.getAssessEndDate()) <= 0) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(assessDate) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - - assessDate = DateUtils.afterMonthDate(1, assessDate); - } - } else { - CuRegionAssess cuRegionAssess = CuRegionAssess.builder() - .pkMember(cuMemberRetailRegion.getPkMember()) - .pkRegion(cuMemberRetailRegion.getPkId()) - .assessPeriod(1) - .assessStartDate(assessDate) - // 考核结束期 - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, assessDate))) - .source(cuMemberRetailRegion.getSource()) - .build(); - cuRegionAssess.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssess.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessMap.put(cuRegionAssess.getPkMember(), cuRegionAssess); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, assessDate)) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuMemberRetailRegion.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - } - - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - iCuRegionAssessDetailService.assessCuRegionAssessDetail(rangeTableName, assessDate); - baseMapper.mergeCuRegionAssess(assessDate); - - // 取消区域列表 - List cancelRegionList = new ArrayList<>(); - // 开始考核,将 上月最后一天,奖衔、业绩同步到考核表中 - // 查询主表考核结束日期=考核日期的,这部分需要生成下6期,最后一期结算完,验证是否达标,达标后继续生成下一期,不达标取消区域 - // 查询考核结束日期次数不达标的区域,进行区域取消处理 - List cuRegionAssessList = queryCuRegionAssessByEndDate(assessDate); - Map regionAssessMap = new HashMap<>(); - List regionAssessDetailList = new ArrayList<>(); - for (CuRegionAssess cuRegionAssess : cuRegionAssessList) { - if (cuRegionAssess.getReachNum() < 3) { - cancelRegionList.add(cuRegionAssess.getPkRegion()); - continue; - } - Date nextAssessDate = DateUtils.afterMonthDate(1, assessDate); - deleteAssessRegionByDate(nextAssessDate, 2); - CuRegionAssess cuRegionAssess1 = CuRegionAssess.builder() - .pkMember(cuRegionAssess.getPkMember()) - .pkRegion(cuRegionAssess.getPkRegion()) - .assessPeriod(cuRegionAssess.getAssessPeriod() + 1) - .assessStartDate(DateUtils.currentMonthFirstDate(nextAssessDate)) - .assessEndDate(DateUtils.currentMonthFirstDate(DateUtils.afterMonthDate(5, nextAssessDate))) - .source(cuRegionAssess.getSource()) - .build(); - cuRegionAssess1.setPkCountry(cuRegionAssess.getPkCountry()); - cuRegionAssess1.setPkCreator(MagicNumberConstants.PK_ADMIN); - regionAssessMap.put(cuRegionAssess1.getPkMember(), cuRegionAssess1); - // 保存明细 - for (int i = 0; i < 6; i++) { - CuRegionAssessDetail cuRegionAssessDetail = CuRegionAssessDetail.builder() - .pkRegionAssess(cuRegionAssess.getPkMember()) - .assessDate(DateUtils.afterMonthDate(i, cuRegionAssess1.getAssessStartDate())) - .pkMember(cuRegionAssess.getPkMember()) - .build(); - cuRegionAssessDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuRegionAssessDetail.setPkCountry(cuRegionAssess.getPkCountry()); - regionAssessDetailList.add(cuRegionAssessDetail); - } - saveCuRegionAssess(regionAssessMap, regionAssessDetailList); - } - // 查询到期日期的区域,验证近6个月的达标次数,不达标取消 -// validateHandAreaAssess(assessDate, startDate, cancelRegionList); - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - } - - @Override - public void validateHandAreaAssess(Date startDate, Date endDate) { - List cancelRegionList = new ArrayList<>(); - List dueRetailRegionList = baseMapper.queryDueCuMemberRetailRegion(startDate, endDate); - if (dueRetailRegionList.size() > 0) { - Date assessDate = DateUtils.currentMonthFirstDate(startDate); - // 查询期初日期 beforeMonthFirstDate startDate 考核期间结束日期 - Date assMonthStartDate = DateUtils.beforeMonthFirstDate(5, assessDate); - // assessDate assessDate 查询考核记录 - Map regionAssessExtMap = new HashMap<>(); - List cuRegionAssessExtList = baseMapper.queryRegionAssessByDate(dueRetailRegionList, assMonthStartDate, assessDate); - cuRegionAssessExtList.forEach(cuRegionAssessExt -> regionAssessExtMap.put(cuRegionAssessExt.getPkMember(), cuRegionAssessExt)); - for (CuMemberRetailRegion cuMemberRetailRegion : dueRetailRegionList) { - if (regionAssessExtMap.containsKey(cuMemberRetailRegion.getPkMember())) { - CuRegionAssessExt cuRegionAssessExt = regionAssessExtMap.get(cuMemberRetailRegion.getPkMember()); - if (cuRegionAssessExt.getPkId() >= 3) { - continue; - } - } - cancelRegionList.add(cuMemberRetailRegion.getPkId()); - } - } - if (cancelRegionList.size() > 0) { - if (!iMemberRetailApi.cancelRegion(cancelRegionList).isSuccess()) { - throw new RuntimeException("区域更新失败"); - } - } - } - - private void saveCuRegionAssess(Map regionAssessMap, List regionAssessDetailList) { - List longs = baseMapper.batchQueryCuRegionAssessSeq(regionAssessMap.size()); - int i = 0; - List cuRegionAssessList = new ArrayList<>(); - for (Long pkMember : regionAssessMap.keySet()) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(pkMember); - cuRegionAssess.setPkId(longs.get(i)); - cuRegionAssessList.add(cuRegionAssess); - i++; - } - for (CuRegionAssessDetail cuRegionAssessDetail : regionAssessDetailList) { - if (regionAssessMap.containsKey(cuRegionAssessDetail.getPkRegionAssess())) { - CuRegionAssess cuRegionAssess = regionAssessMap.get(cuRegionAssessDetail.getPkRegionAssess()); - cuRegionAssessDetail.setPkRegionAssess(cuRegionAssess.getPkId()); - } - } - // 主表 - List> lists = cuMemberBonusSettle.handleCutList(cuRegionAssessList); - lists.forEach(list -> baseMapper.batchInsertCuRegionAssess(list)); - - List idList = iCuRegionAssessDetailService.batchQueryCuRegionAssessDetailSeq(regionAssessDetailList.size()); - for (int j = 0; j < regionAssessDetailList.size(); j++) { - regionAssessDetailList.get(j).setPkId(idList.get(j)); - } - // 明细表 - List> detailList = cuMemberBonusSettle.handleCutList(regionAssessDetailList); - detailList.forEach(detail -> iCuRegionAssessDetailService.batchInsertCuRegionAssessDetail(detail)); - } - - List queryCuRegionAssessByEndDate(Date settleDate) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuRegionAssess::getAssessEndDate, settleDate); - return baseMapper.selectList(queryWrapper); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAssessRegionByDate(Date assessStartDate, Integer assessPeriod) { - // 7天内重算 - iCuRegionAssessDetailService.deleteAssessRegionDetailByDate(assessStartDate, assessPeriod); - baseMapper.deleteAssessRegionByDate(assessStartDate, assessPeriod); - } - - @Override - public List queryRegionAssessByCondition(CuRegionAssessParam regionAssessParam) { - regionAssessParam.setAssessDate(DateUtils.currentMonthFirstDate()); - return baseMapper.queryRegionAssessByCondition(regionAssessParam); - } - - @Override - public List getCuRegionAssessVoS(List cuRegionAssessExtList) { - List cuRegionAssessVoList = new ArrayList<>(); - for (CuRegionAssessExt cuRegionAssessExt : cuRegionAssessExtList) { - CuRegionAssessVO cuRegionAssessVO = BeanUtil.copyProperties(cuRegionAssessExt, CuRegionAssessVO.class); - List regionAssessDetailVoList = new ArrayList<>(); - for (CuRegionAssessDetail cuRegionAssessDetail : cuRegionAssessExt.getCuRegionAssessDetailList()) { - CuRegionAssessDetailVO cuRegionAssessDetailVO = BeanUtil.copyProperties(cuRegionAssessDetail, CuRegionAssessDetailVO.class); - regionAssessDetailVoList.add(cuRegionAssessDetailVO); - } - cuRegionAssessVO.setRegionAssessDetailVoList(regionAssessDetailVoList); - cuRegionAssessVoList.add(cuRegionAssessVO); - } - return cuRegionAssessVoList; - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java deleted file mode 100644 index ca3ce94e..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessDetailVO.java +++ /dev/null @@ -1,56 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 考核区域明细 - * @author: sui q - * @time: 2025/1/16 11:32 - * @classname: CuRegionAssessDetailVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessDetailVO implements Serializable { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 考核日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessDate; - - /** - * 会员等级 - */ - private Integer pkAwards; - - /** - * 团队月消费pv - */ - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Transaction(transactionKey = EnumsPrefixConstants.ASSESS_STATUS) - private Integer assessStatus; - - private String assessStatusVal; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java deleted file mode 100644 index 73b3791c..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessExcelVO.java +++ /dev/null @@ -1,87 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.Date; - -/** - * @description: 导出excel - * @author: sui q - * @time: 2025/1/16 16:27 - * @classname: CuRegionAssessExcelVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessExcelVO implements Serializable { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 考核区域 省+市+县 - */ - @Excel(name = "考核区域") - private String assessAddress; - - /** - * 考核期 - */ - @Excel(name = "考核期间") - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @Excel(name = "开始日期", dateFormat = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @Excel(name = "结束日期", dateFormat = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - @Excel(name = "达标次数") - private Integer reachNum; - - /** - * 考核日期 - */ - @Excel(name = "考核日期", dateFormat = "yyyy-MM-dd") - private Date assessDate; - - /** - * 团队月消费pv - */ - @Excel(name = "团队业绩") - private BigDecimal teamMonthPv; - - /** - * 团队月消费pv - */ - @Excel(name = "小区业绩") - private BigDecimal smallAreaPv; - - /** - * 考核状态 (0=考核通过,1=免考通过,2=考核不通过,3=不考核) - */ - @Excel(name = "考核状态", readConverterExp = "0=考核通过,1=免考通过,2=考核不通过,3=不考核") - private Integer assessStatus; - -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java deleted file mode 100644 index f57b23ac..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/detail/vo/CuRegionAssessVO.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.bonus.detail.vo; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Transaction; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * @description: 区域考核结果 - * @author: sui q - * @time: 2025/1/16 11:13 - * @classname: CuRegionAssessVO - * @package_name: com.hzs.bonus.detail.vo - * version 1.0.0 - */ -@Data -public class CuRegionAssessVO implements Serializable { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 考核区域 省+市+县 - */ - private String assessAddress; - - /** - * 考核期 - */ - private Integer assessPeriod; - - /** - * 考核开始日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessStartDate; - - /** - * 考核期结束日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date assessEndDate; - - /** - * 达标次数 - */ - private Integer reachNum; - - @Transaction - private List regionAssessDetailVoList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondActivateCompensationListener.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondActivateCompensationListener.java deleted file mode 100644 index 4b648640..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondActivateCompensationListener.java +++ /dev/null @@ -1,46 +0,0 @@ -package com.hzs.bonus.listener; - -import cn.hutool.json.JSONUtil; -import com.hzs.bonus.bonus.service.IBonusSettleService; -import com.hzs.bonus.bonus.service.ICuMemberBonusService; -import com.hzs.bonus.bonus.service.ICuMemberRetailLogService; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.constant.RabbitMqConstants; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.domain.member.bonus.CuMemberRetailLog; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.rabbitmq.client.Channel; -import lombok.extern.slf4j.Slf4j; -import org.springframework.amqp.rabbit.annotation.*; -import org.springframework.amqp.support.AmqpHeaders; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.messaging.Message; -import org.springframework.stereotype.Component; - -import java.util.List; - -/** - * 订单秒接 - */ -@Slf4j -@Component -public class SaOrderSecondActivateCompensationListener { - @Autowired - private ICuMemberBonusService memberBonusService; - - @RabbitListener(bindings = @QueueBinding( - exchange = @Exchange(value = RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE, type = "topic"), - value = @Queue(value = RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_QUEUE, durable = "true", autoDelete = "false"), - key = RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_KEY)) - @RabbitHandler - public void onMessage(Message> message, Channel channel) throws Exception { - List activateCompensationIdList = message.getPayload(); - log.info("秒结开始消费,接收到的参数:{}", JSONUtil.toJsonStr(activateCompensationIdList)); - - Long deliveryTag = (Long) message.getHeaders().get(AmqpHeaders.DELIVERY_TAG); - channel.basicAck(deliveryTag, false); - - memberBonusService.recalculateTeamNewBoxNum(activateCompensationIdList); - } -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java index 46b2d277..67624243 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/listener/SaOrderSecondListener.java @@ -47,10 +47,10 @@ public class SaOrderSecondListener { if (saOrderExt.getCancelBool() != null && saOrderExt.getCancelBool()) { cuMemberRetailLog.setCancelStatus(EYesNo.YES.getIntValue()); } - try { Thread.sleep(1000); - iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); +// iBonusSettleService.calculateCuMemberRetailRangeBonusBySaOrder(saOrderExt.getOrderCode()); + iBonusSettleService.calculateCuMemberRetailRangeBySaOrder(saOrderExt); } catch (Exception e) { cuMemberRetailLog.setEnableStatus(EYesNo.NO.getIntValue()); cuMemberRetailLog.setMsg(e.getMessage()); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java index 560e63de..d464aecf 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/mapper/BonusOrderMapper.java @@ -1,8 +1,6 @@ package com.hzs.bonus.order.mapper; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.order.SaOrder; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -16,37 +14,9 @@ public interface BonusOrderMapper { * @param startDate 开始日期 * @param endDate 结束日期 */ - List queryRetailSaOrderByDay(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - - /** - * 查询时间范围内的订单,需要查询出del_flag = 1的值 - * - * @param startDate 开始时间 - * @param endDate 结束时间 - */ - List querySaOrderByTime(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - - /** - * 查询订单列表 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - * @param orderType 订单类型列表 - */ - List listSaOrderByTime(@Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("orderType") List orderType); - - /** - * 查询订单商品级差数据 - * - * @param orderList 订单列表 - * @return - */ - List listOrderWaresRange(@Param("orderList") List orderList); + List listRetailSaOrder(@Param("startDate") Date startDate, + @Param("endDate") Date endDate, + @Param("orderCode") String orderCode, + @Param("orderTypeList") List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java index fac56c07..ff4d8481 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/IBonusOrderService.java @@ -1,12 +1,9 @@ package com.hzs.bonus.order.service; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.order.SaOrder; import java.util.Date; import java.util.List; -import java.util.Map; public interface IBonusOrderService { @@ -16,28 +13,6 @@ public interface IBonusOrderService { * @param startDate 开始日期 * @param endDate 结束日期 */ - List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - - /** - * 查询订单编号 - */ - SaOrderExt querySaOrderByDay(Date startDate, Date endDate, String orderCode); - - /** - * 查询订单列表 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - * @param orderType 订单类型列表 - */ - List listSaOrderByTime(Date startDate, Date endDate, List orderType); - - /** - * 查询商品级差数据 - * - * @param orderList - * @return - */ - Map> getWaresRange(List orderList); + List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java index e08db6ba..e7c0f546 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/order/service/impl/BonusOrderServiceImpl.java @@ -1,14 +1,8 @@ package com.hzs.bonus.order.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.bonus.achieve.service.impl.CuMemberBonusSettle; import com.hzs.bonus.order.mapper.BonusOrderMapper; import com.hzs.bonus.order.service.IBonusOrderService; -import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.sale.order.SaOrder; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -19,48 +13,10 @@ public class BonusOrderServiceImpl implements IBonusOrderService { @Resource private BonusOrderMapper bonusOrderMapper; - @Autowired - private CuMemberBonusSettle cuMemberBonusSettle; @Override - public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return bonusOrderMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); - } - - @Override - public SaOrderExt querySaOrderByDay(Date startDate, Date endDate, String orderCode) { - List saOrderList = bonusOrderMapper.querySaOrderByTime(startDate, endDate, orderCode); - if (CollectionUtil.isNotEmpty(saOrderList)) { - return saOrderList.get(0); - } - return null; - } - - @Override - public List listSaOrderByTime(Date startDate, Date endDate, List orderType) { - return bonusOrderMapper.listSaOrderByTime(startDate, endDate, orderType); - } - - @Override - public Map> getWaresRange(List orderList) { - Map> resultMap = new HashMap<>(); - - List resultList = new ArrayList<>(); - List> handleCutList = cuMemberBonusSettle.handleCutList(orderList, MagicNumberConstants.BATCH_UPDATE_NUM); - handleCutList.forEach(list -> { - resultList.addAll(bonusOrderMapper.listOrderWaresRange(orderList)); - }); - for (SaOrderItemsExt saOrderItemsExt : resultList) { - if (resultMap.containsKey(saOrderItemsExt.getPkOrder())) { - resultMap.get(saOrderItemsExt.getPkOrder()).add(saOrderItemsExt); - } else { - List tmpList = new ArrayList<>(); - tmpList.add(saOrderItemsExt); - resultMap.put(saOrderItemsExt.getPkOrder(), tmpList); - } - } - - return resultMap; + public List listRetailSaOrder(Date startDate, Date endDate, String orderCode, List orderTypeList) { + return bonusOrderMapper.listRetailSaOrder(startDate, endDate, orderCode, orderTypeList); } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java deleted file mode 100644 index 9ba93847..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/param/CuRegionAssessParam.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.bonus.param; - -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - -/** - * 查询参数 - */ -@Data -public class CuRegionAssessParam implements Serializable { - - private Date assessDate; - - private Long pkMember; - - private Integer pkCountry; - - private String memberCode; - - private String memberName; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java index 96af2d88..bfb855a1 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/risk/vo/MemberRiskControlVo.java @@ -1,32 +1,15 @@ -package com.hzs.bonus.risk.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/9 17:01 - * @Classname: MemberRiskControlVo - * @PackageName: com.hzs.bonus.risk.vo - */ +package com.hzs.bonus.risk.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.bonus.risk.vo - *@Author: yh - *@CreateTime: 2024-04-09 17:01 - *@Description: TODO - *@Version: 1.0 - */ @Data public class MemberRiskControlVo { - /** * 会员名称 */ diff --git a/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml b/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml index e354fed0..415e76f1 100644 --- a/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml +++ b/bd-business/bd-business-bonus/src/main/resources/bootstrap.yml @@ -67,7 +67,7 @@ dubbo: port: -1 cloud: # 订阅服务 - subscribed-services: bd-system, bd-third, bd-sale, bd-member + subscribed-services: bd-system, bd-third, bd-sale, bd-member, bd-report scan: # dubbo 服务扫描包(开启之后才会对外提供服务) base-packages: com.hzs.bonus diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml new file mode 100644 index 00000000..5cb90a9a --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailDetailMapper.xml @@ -0,0 +1,22 @@ + + + + + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml index 82e61e73..1210480f 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberRetailRangeMapper.xml @@ -26,16 +26,12 @@ - - - - - - - + + + @@ -44,142 +40,431 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - - - - - - - - - + + + + + + update ${rangeTableName} - set new_box_num = 0, - consume_box_num = 0, - month_box_num = 0, - new_consume_pv = 0, - consume_pv = 0, - month_consume_pv = 0, - team_new_box_num = 0, - team_box_num = 0, - team_month_box_num = 0, - team_new_pv = 0, - team_consume_pv = 0, - team_month_pv = 0, - team_new_amount = 0, - team_consume_amount = 0, - team_month_amount = 0, - recommend_num = 0, - team_num = 0, - enable_status = 1, - pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 20), - region_address = 0, - big_box_num = 0, - small_box_num = 0, - big_team_pv = 0, - small_team_pv = 0, - all_team_new_box_num = 0, - all_team_box_num = 0, - all_team_month_box_num = 0, - all_team_new_pv = 0, - all_team_consume_pv = 0, - all_team_month_pv = 0 + set pk_grade = (select pk_id from bd_grade where del_flag = 0 and grade_value = 30), + new_consume_pv = 0, + consume_pv = 0, + month_consume_pv = 0, + new_consume_amount = 0, + consume_amount = 0, + month_consume_amount = 0, + team_new_pv = 0, + team_consume_pv = 0, + team_month_pv = 0, + team_new_amount = 0, + team_consume_amount = 0, + team_month_amount = 0, + recommend_num = 0, + team_num = 0, + big_team_pv = 0, + small_team_pv = 0, + reg_consume_new_amount = 0, + reg_consume_new_pv = 0, + reg_team_new_amount = 0, + reg_team_new_pv = 0, + rep_consume_new_amount = 0, + rep_consume_new_pv = 0, + rep_team_new_amount = 0, + rep_team_new_pv = 0, + point_count = 0, + wait_point_count = 0, + rep_pv_balance = 0, + gift_point = 0, + gift_pay_time = null merge into ${rangeTableName} a using( - select pk_member, pk_grade, pk_awards, pk_share_awards, enable_status, - new_box_num, consume_box_num, month_box_num, - new_consume_pv, consume_pv, month_consume_pv, - team_new_box_num, team_box_num, team_month_box_num, - team_new_pv, team_consume_pv, team_month_pv, - team_new_amount, team_consume_amount, team_month_amount, - recommend_num, team_num, - big_box_num, small_box_num, big_team_pv, small_team_pv, - all_team_new_box_num, all_team_box_num, all_team_month_box_num, - all_team_new_pv, all_team_consume_pv, all_team_month_pv + select pk_member, pk_grade, pk_awards, pk_share_awards, + consume_pv, month_consume_pv, + consume_amount, month_consume_amount, + team_consume_pv, team_month_pv, + team_consume_amount, team_month_amount, + recommend_num, team_num, big_team_pv, small_team_pv, + point_count, wait_point_count, rep_pv_balance, + gift_point, gift_pay_time from ${yesterdayRangeTableName} ) b on (a.pk_member = b.pk_member) when matched then update set - a.consume_box_num = b.consume_box_num, + a.pk_grade = b.pk_grade, a.consume_pv = b.consume_pv, - a.team_box_num = b.team_box_num, + a.consume_amount = b.consume_amount, a.team_consume_pv = b.team_consume_pv, a.team_consume_amount = b.team_consume_amount, a.recommend_num = b.recommend_num, a.team_num = b.team_num, - a.pk_grade = b.pk_grade, - a.enable_status = b.enable_status, - a.big_box_num = b.big_box_num, a.small_box_num = b.small_box_num, a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv, - a.all_team_new_box_num = b.all_team_new_box_num, - a.all_team_box_num = b.all_team_box_num, - a.all_team_new_pv = b.all_team_new_pv, - a.all_team_consume_pv = b.all_team_consume_pv + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, + a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time - ,a.month_box_num = b.month_box_num ,a.month_consume_pv = b.month_consume_pv - ,a.team_month_box_num = b.team_month_box_num + ,a.month_consume_amount = b.month_consume_amount ,a.team_month_pv = b.team_month_pv ,a.team_month_amount = b.team_month_amount - ,a.all_team_month_box_num = b.all_team_month_box_num - ,a.all_team_month_pv = b.all_team_month_pv + + + merge into ${detailTableName} a + using ( + select x.pk_member, + x.child_node, + cm.pk_parent, + x.stage, + x.stage_status, + x.stage_date, + x.point_11, + x.point_12, + x.point_21, + x.point_22, + x.point_23, + x.point_24, + x.point_31, + x.point_32, + x.point_33, + x.point_34, + x.point_35, + x.point_36, + x.point_37, + x.point_38, + x.point_member_11, + x.point_member_12, + x.point_member_21, + x.point_member_22, + x.point_member_23, + x.point_member_24, + x.point_member_31, + x.point_member_32, + x.point_member_33, + x.point_member_34, + x.point_member_35, + x.point_member_36, + x.point_member_37, + x.point_member_38, + x.point_type, + x.point_gift, + x.creation_time, + x.point_first, + x.point_member_first, + x.point_second, + x.point_member_second, + x.point_third, + x.point_member_third, + x.third_bonus_1, + x.third_bonus_2, + x.third_bonus_3 + from ${yesterdayDetailTableName} x + left join cu_member cm + on cm.pk_id = x.pk_member + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node and a.stage = b.stage) + when not matched then + insert (pk_member, + child_node, + pk_parent, + stage, + stage_status, + stage_date, + point_11, + point_12, + point_21, + point_22, + point_23, + point_24, + point_31, + point_32, + point_33, + point_34, + point_35, + point_36, + point_37, + point_38, + point_member_11, + point_member_12, + point_member_21, + point_member_22, + point_member_23, + point_member_24, + point_member_31, + point_member_32, + point_member_33, + point_member_34, + point_member_35, + point_member_36, + point_member_37, + point_member_38, + point_type, + point_gift, + creation_time, + point_first, + point_member_first, + point_second, + point_member_second, + point_third, + point_member_third, + third_bonus_1, + third_bonus_2, + third_bonus_3) + values (b.pk_member, + b.child_node, + b.pk_parent, + b.stage, + b.stage_status, + b.stage_date, + b.point_11, + b.point_12, + b.point_21, + b.point_22, + b.point_23, + b.point_24, + b.point_31, + b.point_32, + b.point_33, + b.point_34, + b.point_35, + b.point_36, + b.point_37, + b.point_38, + b.point_member_11, + b.point_member_12, + b.point_member_21, + b.point_member_22, + b.point_member_23, + b.point_member_24, + b.point_member_31, + b.point_member_32, + b.point_member_33, + b.point_member_34, + b.point_member_35, + b.point_member_36, + b.point_member_37, + b.point_member_38, + b.point_type, + b.point_gift, + b.creation_time, + b.point_first, + b.point_member_first, + b.point_second, + b.point_member_second, + b.point_third, + b.point_member_third, + b.third_bonus_1, + b.third_bonus_2, + b.third_bonus_3) + when matched then + update set + a.pk_parent = b.pk_parent, + a.stage_status = b.stage_status, + a.stage_date = b.stage_date, + a.point_11 = b.point_11, + a.point_12 = b.point_12, + a.point_21 = b.point_21, + a.point_22 = b.point_22, + a.point_23 = b.point_23, + a.point_24 = b.point_24, + a.point_31 = b.point_31, + a.point_32 = b.point_32, + a.point_33 = b.point_33, + a.point_34 = b.point_34, + a.point_35 = b.point_35, + a.point_36 = b.point_36, + a.point_37 = b.point_37, + a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, + a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, + a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, + a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, + a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, + a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, + a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, + a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, + a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, + a.point_member_first = b.point_member_first, + a.point_second = b.point_second, + a.point_member_second = b.point_member_second, + a.point_third = b.point_third, + a.point_member_third = b.point_member_third, + a.third_bonus_1 = b.third_bonus_1, + a.third_bonus_2 = b.third_bonus_2, + a.third_bonus_3 = b.third_bonus_3 + + + merge into ${rangeTableName} a using ( - select #{item.pkMember} pk_member, #{item.pkAwards} pk_awards, #{item.pkGrade} pk_grade, #{item.pkShareAwards} pk_share_awards, - #{item.newBoxNum} new_box_num, #{item.consumeBoxNum} consume_box_num, #{item.monthBoxNum} month_box_num, + select #{item.pkMember} pk_member, #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, #{item.newConsumePv} new_consume_pv, #{item.consumePv} consume_pv, #{item.monthConsumePv} month_consume_pv, - #{item.teamNewBoxNum} team_new_box_num, #{item.teamBoxNum} team_box_num, #{item.teamMonthBoxNum} team_month_box_num, + #{item.newConsumeAmount} new_consume_amount, #{item.consumeAmount} consume_amount, #{item.monthConsumeAmount} month_consume_amount, #{item.teamNewPv} team_new_pv, #{item.teamConsumePv} team_consume_pv, #{item.teamMonthPv} team_month_pv, #{item.teamNewAmount} team_new_amount, #{item.teamConsumeAmount} team_consume_amount, #{item.teamMonthAmount} team_month_amount, - #{item.recommendNum} recommend_num, #{item.teamNum} team_num, #{item.enableStatus} enable_status, - #{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv, - #{item.allTeamBoxNum} all_team_box_num, #{item.allTeamConsumePv} all_team_consume_pv, - #{item.allTeamMonthBoxNum} all_team_month_box_num, #{item.allTeamMonthPv} all_team_month_pv + #{item.recommendNum} recommend_num, #{item.teamNum} team_num, + #{item.regConsumeNewAmount} reg_consume_new_amount, #{item.regConsumeNewPv} reg_consume_new_pv, + #{item.regTeamNewAmount} reg_team_new_amount, #{item.regTeamNewPv} reg_team_new_pv, + #{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv, + #{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv, + #{item.pointCount} point_count, #{item.waitPointCount} wait_point_count, #{item.repPvBalance} rep_pv_balance, + #{item.giftPoint} gift_point, #{item.giftPayTime, jdbcType=TIMESTAMP} gift_pay_time from dual ) b on (a.pk_member = b.pk_member) when matched then - update set a.pk_awards = b.pk_awards, a.pk_grade = b.pk_grade, a.pk_share_awards = b.pk_share_awards, - a.new_box_num = b.new_box_num, a.consume_box_num = b.consume_box_num, a.month_box_num = b.month_box_num, + update set a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, a.new_consume_pv = b.new_consume_pv, a.consume_pv = b.consume_pv, a.month_consume_pv = b.month_consume_pv, - a.team_new_box_num = b.team_new_box_num, a.team_box_num = b.team_box_num, a.team_month_box_num = b.team_month_box_num, + a.new_consume_amount = b.new_consume_amount, a.consume_amount = b.consume_amount, a.month_consume_amount = b.month_consume_amount, a.team_new_pv = b.team_new_pv, a.team_consume_pv = b.team_consume_pv, a.team_month_pv = b.team_month_pv, a.team_new_amount = b.team_new_amount, a.team_consume_amount = b.team_consume_amount, a.team_month_amount = b.team_month_amount, - a.recommend_num = b.recommend_num, a.team_num = b.team_num, a.enable_status = b.enable_status, - a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv, - a.all_team_box_num = b.all_team_box_num, a.all_team_consume_pv = b.all_team_consume_pv, - a.all_team_month_box_num = b.all_team_month_box_num, a.all_team_month_pv = b.all_team_month_pv + a.recommend_num = b.recommend_num, a.team_num = b.team_num, + a.reg_consume_new_amount = b.reg_consume_new_amount, a.reg_consume_new_pv = b.reg_consume_new_pv, + a.reg_team_new_amount = b.reg_team_new_amount, a.reg_team_new_pv = b.reg_team_new_pv, + a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv, + a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv, + a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance, + a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time + + + + + merge into ${rangeDetailTableName} a + using ( + + select + #{item.pkMember} pk_member, #{item.childNode} child_node, #{item.pkParent} pk_parent, + #{item.stage} stage, #{item.stageStatus} stage_status, #{item.stageDate, jdbcType=TIMESTAMP} stage_date, + #{item.point11, jdbcType=NUMERIC} point_11, #{item.point12, jdbcType=NUMERIC} point_12, + #{item.point21, jdbcType=NUMERIC} point_21, #{item.point22, jdbcType=NUMERIC} point_22, + #{item.point23, jdbcType=NUMERIC} point_23, #{item.point24, jdbcType=NUMERIC} point_24, + #{item.point31, jdbcType=NUMERIC} point_31, #{item.point32, jdbcType=NUMERIC} point_32, + #{item.point33, jdbcType=NUMERIC} point_33, #{item.point34, jdbcType=NUMERIC} point_34, + #{item.point35, jdbcType=NUMERIC} point_35, #{item.point36, jdbcType=NUMERIC} point_36, + #{item.point37, jdbcType=NUMERIC} point_37, #{item.point38, jdbcType=NUMERIC} point_38, + #{item.pointMember11, jdbcType=NUMERIC} point_member_11, #{item.pointMember12, jdbcType=NUMERIC} point_member_12, + #{item.pointMember21, jdbcType=NUMERIC} point_member_21, #{item.pointMember22, jdbcType=NUMERIC} point_member_22, + #{item.pointMember23, jdbcType=NUMERIC} point_member_23, #{item.pointMember24, jdbcType=NUMERIC} point_member_24, + #{item.pointMember31, jdbcType=NUMERIC} point_member_31, #{item.pointMember32, jdbcType=NUMERIC} point_member_32, + #{item.pointMember33, jdbcType=NUMERIC} point_member_33, #{item.pointMember34, jdbcType=NUMERIC} point_member_34, + #{item.pointMember35, jdbcType=NUMERIC} point_member_35, #{item.pointMember36, jdbcType=NUMERIC} point_member_36, + #{item.pointMember37, jdbcType=NUMERIC} point_member_37, #{item.pointMember38, jdbcType=NUMERIC} point_member_38, + #{item.pointType} point_type, #{item.pointGift} point_gift, + #{item.creationTime, jdbcType=TIMESTAMP} creation_time, + #{item.pointFirst, jdbcType=NUMERIC} point_first, #{item.pointMemberFirst, jdbcType=NUMERIC} point_member_first, + #{item.pointSecond, jdbcType=NUMERIC} point_second, #{item.pointMemberSecond, jdbcType=NUMERIC} point_member_second, + #{item.pointThird, jdbcType=NUMERIC} point_third, #{item.pointMemberThird, jdbcType=NUMERIC} point_member_third, + #{item.thirdBonus1, jdbcType=NUMERIC} third_bonus_1, + #{item.thirdBonus2, jdbcType=NUMERIC} third_bonus_2, + #{item.thirdBonus3, jdbcType=NUMERIC} third_bonus_3 + from dual + + ) b + on (a.pk_member = b.pk_member and a.child_node = b.child_node and a.stage = b.stage) + when not matched then + insert (pk_member, child_node, pk_parent, + stage, stage_status, stage_date, + point_11, point_12, + point_21, point_22, + point_23, point_24, + point_31, point_32, + point_33, point_34, + point_35, point_36, + point_37, point_38, + point_member_11, point_member_12, + point_member_21, point_member_22, + point_member_23, point_member_24, + point_member_31, point_member_32, + point_member_33, point_member_34, + point_member_35, point_member_36, + point_member_37, point_member_38, + point_type, point_gift, + creation_time, + point_first, point_member_first, + point_second, point_member_second, + point_third, point_member_third, + third_bonus_1, third_bonus_2, third_bonus_3) + values (b.pk_member, b.child_node, b.pk_parent, + b.stage, b.stage_status, b.stage_date, + b.point_11, b.point_12, + b.point_21, b.point_22, + b.point_23, b.point_24, + b.point_31, b.point_32, + b.point_33, b.point_34, + b.point_35, b.point_36, + b.point_37, b.point_38, + b.point_member_11, b.point_member_12, + b.point_member_21, b.point_member_22, + b.point_member_23, b.point_member_24, + b.point_member_31, b.point_member_32, + b.point_member_33, b.point_member_34, + b.point_member_35, b.point_member_36, + b.point_member_37, b.point_member_38, + b.point_type, b.point_gift, + b.creation_time, + b.point_first, b.point_member_first, + b.point_second, b.point_member_second, + b.point_third, b.point_member_third, + b.third_bonus_1, b.third_bonus_2, b.third_bonus_3) + when matched then + update set + a.stage_status = b.stage_status, a.stage_date = b.stage_date, + a.point_11 = b.point_11, a.point_12 = b.point_12, + a.point_21 = b.point_21, a.point_22 = b.point_22, + a.point_23 = b.point_23, a.point_24 = b.point_24, + a.point_31 = b.point_31, a.point_32 = b.point_32, + a.point_33 = b.point_33, a.point_34 = b.point_34, + a.point_35 = b.point_35, a.point_36 = b.point_36, + a.point_37 = b.point_37, a.point_38 = b.point_38, + a.point_member_11 = b.point_member_11, a.point_member_12 = b.point_member_12, + a.point_member_21 = b.point_member_21, a.point_member_22 = b.point_member_22, + a.point_member_23 = b.point_member_23, a.point_member_24 = b.point_member_24, + a.point_member_31 = b.point_member_31, a.point_member_32 = b.point_member_32, + a.point_member_33 = b.point_member_33, a.point_member_34 = b.point_member_34, + a.point_member_35 = b.point_member_35, a.point_member_36 = b.point_member_36, + a.point_member_37 = b.point_member_37, a.point_member_38 = b.point_member_38, + a.point_type = b.point_type, a.point_gift = b.point_gift, + a.creation_time = b.creation_time, + a.point_first = b.point_first, a.point_member_first = b.point_member_first, + a.point_second = b.point_second, a.point_member_second = b.point_member_second, + a.point_third = b.point_third, a.point_member_third = b.point_member_third, + a.third_bonus_1 = b.third_bonus_1, a.third_bonus_2 = b.third_bonus_2, a.third_bonus_3 = b.third_bonus_3 @@ -191,7 +476,6 @@ a.pk_settle_grade pk_grade, a.pk_awards, a.pk_range_awards, - a.is_activate enable_status, a.system_type from (select * from cu_member @@ -203,20 +487,19 @@ ) b on (a.pk_member = b.pk_member) when not matched then - insert (pk_member, pk_parent, pk_grade, pk_awards, pk_share_awards, enable_status, system_type) - values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.pk_range_awards, b.enable_status, b.system_type) + insert (pk_member, pk_parent, pk_grade, pk_awards, pk_share_awards, system_type) + values (b.pk_member, b.pk_parent, b.pk_grade, b.pk_awards, b.pk_range_awards, b.system_type) merge into ${secondRangeTableName} a using ( - select a.pk_id pk_member, + select a.pk_id pk_member, a.pk_parent, - a.pk_settle_grade pk_grade, + a.pk_settle_grade pk_grade, a.pk_awards, - a.pk_range_awards, - nvl(b.enable_status, 1) enable_status + a.pk_range_awards from (select * from cu_member where del_flag = 0 @@ -226,11 +509,10 @@ ) a left join ${rangeTableName} b on a.pk_id = b.pk_member - where b.enable_status = 0 ) b on (a.pk_member = b.pk_member) when matched then - update set a.enable_status = b.enable_status, a.pk_grade = b.pk_grade + update set a.pk_grade = b.pk_grade @@ -241,11 +523,9 @@ select #{item.pkMember} pk_member, #{item.pkGrade} pk_grade, #{item.pkAwards} pk_awards, #{item.pkShareAwards} pk_share_awards, - #{item.newBoxNum} new_box_num, #{item.newConsumePv} new_consume_pv, - #{item.teamNewBoxNum} team_new_box_num, #{item.teamNewPv} team_new_pv, - #{item.teamNewAmount} team_new_amount, #{item.enableStatus} enable_status, - #{item.allNewBoxNum} all_new_box_num, #{item.allNewConsumePv} all_new_consume_pv, - #{item.allTeamNewBoxNum} all_team_new_box_num, #{item.allTeamNewPv} all_team_new_pv + #{item.newConsumePv} new_consume_pv, + #{item.teamNewPv} team_new_pv, + #{item.teamNewAmount} team_new_amount from dual ) b @@ -253,11 +533,9 @@ when matched then update set a.pk_grade = b.pk_grade, a.pk_awards = b.pk_awards, a.pk_share_awards = b.pk_share_awards, - a.new_box_num = b.new_box_num, a.new_consume_pv = b.new_consume_pv, - a.team_new_box_num = b.team_new_box_num, a.team_new_pv = b.team_new_pv, - a.team_new_amount = b.team_new_amount, a.enable_status = b.enable_status, - a.all_new_box_num = b.all_new_box_num, a.all_new_consume_pv = b.all_new_consume_pv, - a.all_team_new_box_num = b.all_team_new_box_num, a.all_team_new_pv = b.all_team_new_pv + a.new_consume_pv = b.new_consume_pv, + a.team_new_pv = b.team_new_pv, + a.team_new_amount = b.team_new_amount @@ -276,100 +554,109 @@ - - merge into ${rangeTableName} a - using ( - select cm.pk_member, cr.county region_address - from ${rangeTableName} cm - inner join cu_member_retail_region cr - on cr.pk_member = cm.pk_member - and cr.effective = 0 - and cr.del_flag = 0 - where cr.creation_time < #{settleDate, jdbcType=DATE} - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.region_address = b.region_address + + UPDATE ${tableName} + SET + PK_GRADE = ${cuMember.pkSettleGrade}, + PK_AWARDS = ${cuMember.pkAwards}, + + REG_CONSUME_NEW_AMOUNT = REG_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_CONSUME_NEW_PV = REG_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_CONSUME_NEW_AMOUNT = REP_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_CONSUME_NEW_PV = REP_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_CONSUME_NEW_AMOUNT = ALL_CONSUME_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_CONSUME_NEW_PV = ALL_CONSUME_NEW_PV ${symbol} #{orderExt.orderAchieve} + WHERE + PK_MEMBER = #{cuMember.pkId} - - merge into ${rangeTableName} a - using ( - select a.* - from cu_member_spe_retail a - inner join( - select member_code, max(nvl(modified_time, creation_time)) creation_time - from cu_member_spe_retail - where del_flag = 0 - and period = #{period} - group by member_code - ) b on a.member_code = b.member_code and nvl(a.modified_time, a.creation_time) = b.creation_time - ) b - on (a.member_code = b.member_code) - when matched then - update set - a.big_box_num = b.team_box_num - b.small_box_num, - a.small_box_num = b.small_box_num + + UPDATE ${tableName} + SET + + REG_TEAM_NEW_AMOUNT = REG_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REG_TEAM_NEW_PV = REG_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + + REP_TEAM_NEW_AMOUNT = REP_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + REP_TEAM_NEW_PV = REP_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve}, + + ALL_TEAM_NEW_AMOUNT = ALL_TEAM_NEW_AMOUNT ${symbol} #{orderExt.orderAmount}, + ALL_TEAM_NEW_PV = ALL_TEAM_NEW_PV ${symbol} #{orderExt.orderAchieve} + WHERE + PK_MEMBER in + + #{member.pkId} + - - merge into ${rangeTableName} a - using ( - select * - from ${beforeTableName} a - inner join ( - select cr.* - from cu_member_spe_retail cr - inner join ( - select member_code, max(pk_id) pk_id - from cu_member_spe_retail - where period < #{period} - and del_flag = 0 - group by member_code - ) b on cr.member_code = b.member_code - where cr.period = #{period} - and cr.del_flag = 0 - ) b on a.member_code = b.member_code - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - a.big_box_num = 0, - a.small_box_num = 0, - a.team_box_num = a.team_box_num - + + INSERT INTO ${tableName} ("PK_MEMBER", + "PK_PARENT", + "PK_GRADE", + "PK_AWARDS", + "ALL_CONSUME_NEW_AMOUNT", + "ALL_CONSUME_NEW_PV", + "ALL_TEAM_NEW_AMOUNT", + "ALL_TEAM_NEW_PV", + "REG_CONSUME_NEW_AMOUNT", + "REG_CONSUME_NEW_PV", + "REG_TEAM_NEW_AMOUNT", + "REG_TEAM_NEW_PV", + "REP_CONSUME_NEW_AMOUNT", + "REP_CONSUME_NEW_PV", + "REP_TEAM_NEW_AMOUNT", + "REP_TEAM_NEW_PV") + SELECT #{member.pkId}, + #{member.pkParent}, + #{member.pkSettleGrade}, + #{member.pkAwards}, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + FROM DUAL + WHERE NOT EXISTS( + SELECT 1 + FROM ${tableName} + WHERE "PK_MEMBER" = #{member.pkId} + ) + + + - - - - - - - - - - - + select * + from ( + select cm.* + from cu_member cm + start + with cm.pk_id = #{pkMember} + connect by cm.pk_id = prior cm.pk_parent + order by level + ) r + where r.pk_id != #{pkMember} + + + + + + + merge into ${rangeTableName} a + using ( + select pk_member, + sum(consume_pv) consume_pv, + sum(consume_amount) consume_amount, + sum(team_consume_pv) team_consume_pv, + sum(team_consume_amount) team_consume_amount + from ( + + SELECT cmr.pk_member, + DECODE(cmr.pk_member, #{item.pkMember}, #{item.newPv}, 0) AS consume_pv, + DECODE(cmr.pk_member, #{item.pkMember}, #{item.newAmount}, 0) AS consume_amount, + DECODE(cmr.pk_member, #{item.pkMember}, 0, #{item.newPv}) AS team_consume_pv, + DECODE(cmr.pk_member, #{item.pkMember}, 0, #{item.newAmount}) AS team_consume_amount + FROM ${rangeTableName} cmr + START WITH cmr.pk_member = #{item.pkMember} + CONNECT BY cmr.pk_member = PRIOR cmr.pk_parent + + ) tmp + group by pk_member + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + a.consume_pv = a.consume_pv + b.consume_pv, + a.consume_amount = a.consume_amount + b.consume_amount, + a.team_consume_pv = a.team_consume_pv + b.team_consume_pv, + a.team_consume_amount = a.team_consume_amount + b.team_consume_amount + + + + + + + + + + + + + + + merge into ${rangeTableName} a + using ( + select pk_member, max(new_level) pk_awards + from cu_member_awards + where period = #{period} and award_type = #{awardType} + and del_flag = 0 + group by pk_member + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + + a.pk_awards = b.pk_awards + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml index 1e31483c..b193e144 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/achieve/CuMemberTreeMapper.xml @@ -77,14 +77,11 @@ - - - @@ -96,16 +93,12 @@ - - - - period - NUMBER(6) default 0 not null, + period NUMBER(6) default 0 not null, pk_member NUMBER(20) not null, pk_parent NUMBER(20) not null, pk_place_parent NUMBER(20), @@ -132,8 +125,6 @@ is_bus_license NUMBER(1) default 1 not null, is_maker_space NUMBER(1) default 1 not null, pk_country number(4) default 1 not null, - store_level NUMBER(2) default 0, - is_maker_gift NUMBER(1) default 1, expire_status number(1) default 1 @@ -195,10 +186,7 @@ UPGRADE_Blo_NEW_PV NUMBER(17,6) default 0 not null, REPURCHASE_Blo_NEW_PV NUMBER(17,6) default 0 not null, HI_FUN_Blo_NEW_PV NUMBER(17,6) default 0 not null, - MALL_Blo_NEW_PV NUMBER(17,6) default 0 not null, - min_achieve number(17,6) default 0 not null, - round NUMBER(6) default 0 not null, - second NUMBER(4) default 1 not null + MALL_Blo_NEW_PV NUMBER(17,6) default 0 not null @@ -207,7 +195,7 @@ a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance, register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code, repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade, - min_achieve,round,second,bg.grade_value,store_level,expire_status from ( + bg.grade_value,expire_status from ( ) a inner join bd_grade bg @@ -266,7 +254,7 @@ a_balance,b_balance,r_a_balance,r_b_balance,rep_a_balance,rep_b_balance,r_rep_a_balance,r_rep_b_balance, register_amount,register_pv,upgrade_amount,upgrade_pv,repurchase_amount,pk_center_code, repurchase_pv,hi_fun_amount,hi_fun_pv,mall_amount,mall_pv,category,pk_grade, - min_achieve,round,second,store_level,expire_status + expire_status from ${settleTableName} where pay_status = 1 start with pk_member = #{item} @@ -289,6 +277,68 @@ ) + + + create table ${tableName} + ( + pk_member NUMBER(20) not null, + child_node NUMBER(8) not null, + pk_parent NUMBER(20) not null, + stage NUMBER(1) default 1 not null, + stage_status NUMBER(1) default 1 not null, + stage_date DATE, + point_member_11 NUMBER(20), + point_11 NUMBER(8), + point_member_12 NUMBER(20), + point_12 NUMBER(8), + point_member_21 NUMBER(20), + point_21 NUMBER(8), + point_member_22 NUMBER(20), + point_22 NUMBER(8), + point_member_23 NUMBER(20), + point_23 NUMBER(8), + point_member_24 NUMBER(20), + point_24 NUMBER(8), + point_member_31 NUMBER(20), + point_31 NUMBER(8), + point_member_32 NUMBER(20), + point_32 NUMBER(8), + point_member_33 NUMBER(20), + point_33 NUMBER(8), + point_member_34 NUMBER(20), + point_34 NUMBER(8), + point_member_35 NUMBER(20), + point_35 NUMBER(8), + point_member_36 NUMBER(20), + point_36 NUMBER(8), + point_member_37 NUMBER(20), + point_37 NUMBER(8), + point_member_38 NUMBER(20), + point_38 NUMBER(8), + point_type NUMBER(1) default 0 not null, + point_gift NUMBER(1) default 0 not null, + creation_time DATE, + point_member_first NUMBER(20), + point_first NUMBER(8), + point_member_second NUMBER(20), + point_second NUMBER(8), + point_member_third NUMBER(20), + point_third NUMBER(8), + third_bonus_1 NUMBER(8) default 0 not null, + third_bonus_2 NUMBER(8) default 0 not null, + third_bonus_3 NUMBER(8) default 0 not null + ) + + + + + create unique index PK_${tableName} + on ${tableName} + ( + PK_MEMBER, CHILD_NODE, STAGE + ) + + create index ${tableName}_parent on @@ -330,7 +380,7 @@ customer_type, phone, pk_grade, pk_awards, account_status, pay_status, category, purchase_status, income_status, pk_team_code, pk_center_code, pk_vertex, pk_settle_country, is_real_name, - pk_country, pk_rate, pay_time, region_address, system_type, enable_status) + pk_country, pk_rate, pay_time, system_type, enable_status) select cm.pk_id, pk_parent, member_code, @@ -352,7 +402,6 @@ cm.pk_country, nvl(bc.pk_id, -1) pk_rate, cm.pay_time, - nvl(cr.county, 0) country, cm.system_type, cm.is_activate from cu_member cm @@ -365,8 +414,6 @@ and effective_date <= sysdate group by pk_country) bc on cm.pk_settle_country = bc.pk_country - left join cu_member_retail_region cr - on cr.pk_member = cm.pk_id and cr.effective = 0 and cr.del_flag = 0 where cm.del_flag = 0 @@ -374,111 +421,73 @@ + merge into ${rangeTableName} a - using ( - select ca.pk_member, max(old_level) pk_awards - from cu_member_awards ca - inner join ${rangeTableName} cm - on ca.pk_member = cm.pk_member - where ca.period = #{period} - and ca.up_type = 1 - and ca.award_type = #{awardType} - and ca.del_flag = 0 - - and cm.pk_awards <= ca.new_level - - - and cm.pk_share_awards <= ca.new_level - - group by ca.pk_member - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - - a.pk_awards = b.pk_awards - - - a.pk_share_awards=b.pk_awards - + using ( + select ca.pk_member, max(old_level) pk_awards + from cu_member_awards ca + inner join ${rangeTableName} cm + on ca.pk_member = cm.pk_member + where ca.period = #{period} + and ca.up_type = 1 + and ca.del_flag = 0 + and cm.pk_awards <= ca.new_level + group by ca.pk_member + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + a.pk_awards = b.pk_awards + merge into ${rangeTableName} a - using ( - select y.pk_member,y.pk_awards from ${rangeTableName} x - inner join ( - select a.pk_member,a.new_level pk_awards - from cu_member_awards a - inner join ( - select pk_member, max(pk_id) pk_id - from cu_member_awards - where del_flag = 0 and up_type = 2 - and end_validity_date <= #{settleDate, jdbcType=DATE} - and award_type = #{awardType} - group by pk_member) b - on a.pk_id = b.pk_id - where a.del_flag = 0 - ) y - on x.pk_member = y.pk_member - where - - x.pk_awards < y.pk_awards - - - x.pk_share_awards < y.pk_awards - - ) b - on (a.pk_member = b.pk_member) - when matched then - update set - - a.pk_awards = b.pk_awards - - - a.pk_share_awards = b.pk_awards - - - - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 0), - pk_share_awards = (select pk_id from bd_awards where awards_value = 0) - - - - - update ${rangeTableName} - set pk_awards = (select pk_id from bd_awards where awards_value = 5), - pk_share_awards = (select pk_id from bd_awards where awards_value = 5) - where pk_grade = ( - select pk_id - from bd_grade - where grade_value = 70 and del_flag = 0 - ) + using ( + select y.pk_member, y.pk_awards + from ${rangeTableName} x + inner join ( + select a.pk_member, a.new_level pk_awards + from cu_member_awards a + inner join ( + select pk_member, max(pk_id) pk_id + from cu_member_awards + where del_flag = 0 + and up_type = 2 + and end_validity_date <= #{settleDate, jdbcType=DATE} + group by pk_member) b + on a.pk_id = b.pk_id + where a.del_flag = 0 + ) y + on x.pk_member = y.pk_member + where x.pk_awards < y.pk_awards + ) b + on (a.pk_member = b.pk_member) + when matched then + update set + a.pk_awards = b.pk_awards - create table ${tableName} + CREATE TABLE ${tableName} ( - pk_member NUMBER(20) not null, - pk_parent NUMBER(20) not null, - pk_grade NUMBER(4) not null, - pk_awards number(4) default 10 not null, - pk_share_awards number(4) default 10 not null, - enable_status number(2) default 1 not null, - system_type NUMBER(2) default 2 not null, - new_box_num number(10,2) default 0 not null, - new_consume_pv number(17,6) default 0 not null, - team_new_box_num number(10,2) default 0 not null, - team_new_pv number(17,6) default 0 not null, - team_new_amount number(17,6) default 0 not null, - all_new_box_num number(10,2) default 0 not null, - all_new_consume_pv number(17,6) default 0 not null, - all_team_new_box_num number(10,2) default 0 not null, - all_team_new_pv number(17,6) default 0 not null + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE ) @@ -509,34 +518,38 @@ pk_country number(4) default 1 not null, system_type NUMBER(2) default 2 not null, pk_rate NUMBER(6), - new_box_num number(10,2) default 0 not null, - consume_box_num number(10,2) default 0 not null, - month_box_num number(10,2) default 0 not null, new_consume_pv number(17,6) default 0 not null, consume_pv number(17,6) default 0 not null, month_consume_pv number(17,6) default 0 not null, - team_new_box_num number(10,2) default 0 not null, - team_box_num number(10,2) default 0 not null, - team_month_box_num number(10,2) default 0 not null, + new_consume_amount number(17,6) default 0 not null, + consume_amount number(17,6) default 0 not null, + month_consume_amount number(17,6) default 0 not null, + team_new_pv number(17,6) default 0 not null, team_consume_pv number(17,6) default 0 not null, team_month_pv number(17,6) default 0 not null, team_new_amount number(17,6) default 0 not null, team_consume_amount number(17,6) default 0 not null, team_month_amount number(17,6) default 0 not null, + recommend_num number(8) default 0 not null, team_num number(8) default 0 not null, - region_address number(8) default 0 not null, - big_box_num number(10,2) default 0 not null, - small_box_num number(10,2) default 0 not null, big_team_pv number(17,6) default 0 not null, small_team_pv number(17,6) default 0 not null, - all_team_new_box_num number(12,2) default 0 not null, - all_team_box_num number(12,2) default 0 not null, - all_team_month_box_num number(12,2) default 0 not null, - all_team_new_pv number(17,6) default 0 not null, - all_team_consume_pv number(17,6) default 0 not null, - all_team_month_pv number(17,6) default 0 not null + + reg_consume_new_amount number(17,6) default 0 not null, + reg_consume_new_pv number(17,6) default 0 not null, + reg_team_new_amount number(17,6) default 0 not null, + reg_team_new_pv number(17,6) default 0 not null, + rep_consume_new_amount number(17,6) default 0 not null, + rep_consume_new_pv number(17,6) default 0 not null, + rep_team_new_amount number(17,6) default 0 not null, + rep_team_new_pv number(17,6) default 0 not null, + point_count number(8) default 0 not null, + wait_point_count number(8) default 0 not null, + rep_pv_balance number(17,6) default 0 not null, + gift_point number(2) default 1 not null, + gift_pay_time DATE ) @@ -544,6 +557,11 @@ truncate table ${tableName} + + + delete from ${tableName} + + - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml index 0120eddc..1567e354 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/base/CuMemberMapper.xml @@ -85,7 +85,8 @@ - + + merge into cu_member a using ( select pk_member, max(new_level) pk_awards @@ -100,183 +101,57 @@ a.pk_awards = b.pk_awards, - - a.pk_range_awards = b.pk_awards, - a.modified_time = sysdate - + + merge into cu_member a - using (select c1.* - from (select pk_member, max(new_level) pk_awards - from cu_member_awards - where period = #{period} - and award_type = #{awardType} - and del_flag = 0 - group by pk_member) c1 - inner join cu_member c2 - on c1.pk_member = c2.pk_id - and c1.pk_awards > c2.pk_max_awards) b + using (select pk_member, max(old_level) pk_awards + from cu_member_awards ca + inner join cu_member cm + on ca.pk_member = cm.pk_id + where ca.period = #{period} + and ca.up_type = 1 + and ca.del_flag = 0 + and cm.pk_awards < ca.new_level + group by ca.pk_member) b on (a.pk_id = b.pk_member) when matched then - update set a.pk_max_awards = b.pk_awards, a.modified_time = sysdate + update set + a.pk_awards = b.pk_awards, + a.modified_time = sysdate - + + merge into cu_member a using ( - select a.pk_member, max(a.new_level) pk_grade - from cu_member_grade a - inner join( - select pk_member, max(nvl(modified_time, creation_time)) creation_time - from cu_member_grade - where period = #{period} - and del_flag = 0 - group by pk_member) b - on a.pk_member = b.pk_member and nvl(a.modified_time, a.creation_time) = b.creation_time - group by a.pk_member + select y.pk_member, y.pk_awards + from cu_member x + inner join ( + select a.pk_member, a.new_level pk_awards + from cu_member_awards a + inner join ( + select pk_member, max(pk_id) pk_id + from cu_member_awards + where del_flag = 0 + and up_type = 2 + and end_validity_date <= #{settleDate, jdbcType=DATE} + group by pk_member) b + on a.pk_id = b.pk_id + where a.del_flag = 0 + ) y + on x.pk_id = y.pk_member + where x.pk_awards < y.pk_awards ) b on (a.pk_id = b.pk_member) when matched then update set - a.pk_settle_grade = b.pk_grade, + a.pk_awards = b.pk_awards, a.modified_time = sysdate - - - - - - - merge into cu_member a - using (select pk_member, max(old_level) pk_awards - from cu_member_awards ca - inner join cu_member cm - on ca.pk_member = cm.pk_id - where ca.period = #{period} - and ca.up_type = 1 - and award_type = #{awardType} - and ca.del_flag = 0 - - and cm.pk_awards < ca.new_level - - - and cm.pk_range_awards < ca.new_level - - group by ca.pk_member) b - on (a.pk_id = b.pk_member) - when matched then - update set - - a.pk_awards = b.pk_awards, - - - a.pk_range_awards = b.pk_awards, - - a.modified_time = sysdate - - - - merge into cu_member a - using ( - select y.pk_member, y.pk_awards - from cu_member x - inner join ( - select a.pk_member,a.new_level pk_awards - from cu_member_awards a - inner join ( - select pk_member, max(pk_id) pk_id - from cu_member_awards - where del_flag = 0 - and up_type = 2 - and end_validity_date <= #{settleDate, jdbcType=DATE} - and award_type = #{awardType} - group by pk_member) b - on a.pk_id = b.pk_id - where a.del_flag = 0 - ) y - on x.pk_id = y.pk_member - where - - x.pk_awards < y.pk_awards - - - x.pk_range_awards < y.pk_awards - - ) b - on (a.pk_id = b.pk_member) - when matched then - update set - - a.pk_awards = b.pk_awards, - - - a.pk_range_awards = b.pk_awards, - - a.modified_time = sysdate - - - - - update cu_member - set pk_awards = (select pk_id from bd_awards where awards_value = 0), - pk_range_awards = (select pk_id from bd_awards where awards_value = 0) - - - - - update cu_member - set pk_awards = (select pk_id from bd_awards where awards_value = 5), - pk_range_awards = (select pk_id from bd_awards where awards_value = 5) - where pk_settle_grade = ( - select pk_id - from bd_grade - where grade_value = 70 - and del_flag = 0 - ) - - - - - merge into cu_member a - using ( - select pk_member, max(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, - #{item.newLevel} pk_grade - from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - merge into cu_member a using ( @@ -304,53 +179,11 @@ a.modified_time = sysdate - - merge into cu_member a - using ( - select pk_member, min(pk_grade) pk_grade from ( - - select #{item.pkMember} pk_member, #{item.newLevel} pk_grade from dual - - ) - group by pk_member - ) b - on (a.pk_id = b.pk_member) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - merge into cu_member a - using ( - select cm.pk_id, m.new_level pk_grade - from cu_member cm - inner join( - select a.* - from cu_member_level a - inner join ( - select pk_member, max(pk_id) pk_id - from cu_member_level - where del_flag = 0 - and up_type = 4 - and upgrade_time >= #{startDate,jdbcType=DATE} - and upgrade_time < #{endDate,jdbcType=DATE} - group by pk_member) b - on a.pk_id = b.pk_id) m - on cm.pk_id = m.pk_member - where cm.pk_settle_grade < m.new_level - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_settle_grade = b.pk_grade, a.modified_time = sysdate - - - - + select * + from cu_member + where pk_id = ${pkId} diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml index 2069a109..7297c2e7 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusCoachMapper.xml @@ -2,270 +2,5 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_bonus_coach(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,current_generation,coach_generation,coach_no_capping, - coach_capping,coach_normal_half,coach_normal_real,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.currentGeneration},#{item.coachGeneration}, - #{item.coachNoCapping},#{item.coachCapping},#{item.coachNormalHalf},#{item.coachNormalReal}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - delete - from CU_MEMBER_BONUS_COACH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} - and grant_status <= 2) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml index 7dc5b3e3..564f14e2 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusDetailMapper.xml @@ -241,17 +241,39 @@ - select b.period,cp.settle_date,so.order_code,so.order_type,bt.short_name source_country_name, - cu.member_code source_member_code,cu.member_name source_member_name,so.pk_rate,so.pk_country pk_source_country,bc.out_exchange_rate,so.order_amount, - so.order_achieve,b.pk_country,b.pk_bonus_items,b.pretax_income,b.income_tax,b.real_income,b.income_status, - tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name, - b.current_touch,b.expand_touch,b.expand_no_capping,b.expand_capping,b.expand_normal_half,b.expand_normal_real, - b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio, - cu.service_code, - cu.pk_vertex, - cu.nick_name - from sa_order so - inner join ( - select cb.pk_member,ce.pk_order,cb.period,cb.pk_country,ce.pk_bonus_items,ce.income_status,ce.cal_achieve,ce.pretax_income,ce.income_tax,ce.real_income, - ce.current_touch,ce.expand_touch,ce.expand_no_capping,ce.expand_capping,ce.expand_normal_half,ce.expand_normal_real, - ce.remark,ce.income_ratio,ce.income_dial_ratio,ce.order_dial_ratio from cu_member_bonus cb - inner join cu_member_bonus_expand ce - on cb.pk_id = ce.pk_bonus - where cb.income_status=0 and ce.income_status = 0 - and ce.pk_bonus_items = #{pkBonusItems} - - and ce.pk_bonus = #{pkBonus} - - - and cb.period =#{period} - - - and ce.pk_bonus_items = #{pkBonusItems} - - ) b - on so.pk_id = b.pk_order - inner join cu_member tar - on b.pk_member = tar.pk_id - inner join cu_member cu - on so.pk_member = cu.pk_id - inner join cu_member_settle_period cp - on b.period = cp.pk_id - left join bd_vertex bv - on bv.pk_id = tar.pk_vertex - left join cu_member_team ct - on ct.pk_id = tar.pk_team_code - left join bd_currency bc - on bc.pk_id=so.pk_rate - left join bd_grade bg - on bg.pk_id=tar.pk_settle_grade - left join bd_awards ba - on ba.pk_id=tar.pk_awards - left join bd_country bt - on bt.pk_id=so.pk_country - - 1=1 and b.pk_member=#{pkMember} - - and so.order_code like #{orderCode}|| '%' - - - and (cu.member_code = #{sourceMemberCode} or cu.service_code = #{sourceMemberCode}) - - - and (cu.member_name = #{sourceMemberName} or cu.nick_name = #{sourceMemberName}) - - - and cp.settle_date >= #{startDate, jdbcType=DATE} - - - and cp.settle_date < #{endDate, jdbcType=DATE} - - - order by b.period,b.pk_bonus_items,b.real_income desc - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml index 031b0ec2..9230c1a4 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusMapper.xml @@ -16,33 +16,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + @@ -53,22 +29,10 @@ - - - - - - - - - - - - @@ -132,7 +96,8 @@ merge into cu_member_bonus cb using( - select pk_id, pk_member, period, pk_rate, direct_income, + select pk_id, pk_member, period, pk_rate, + direct_income, global_points, expand_income, expand_no_capping, expand_capping, coach_income, share_income, service_income, back_points, service_spend, pur_real_subtotal, repur_push_income, repur_range_income, repur_expand_income, @@ -144,7 +109,8 @@ from ( select #{item.pkId} pk_id, #{item.pkMember} pk_member, #{item.period} period, #{item.pkRate,jdbcType=INTEGER} pk_rate, - #{item.directIncome} direct_income, #{item.expandIncome} expand_income, #{item.expandNoCapping} expand_no_capping, + #{item.directIncome} direct_income, #{item.globalPoints} global_points, + #{item.expandIncome} expand_income, #{item.expandNoCapping} expand_no_capping, #{item.expandCapping} expand_capping, #{item.coachIncome} coach_income, #{item.shareIncome} share_income, #{item.serviceIncome} service_income, #{item.backPoints} back_points, #{item.serviceSpend} service_spend, #{item.purRealSubtotal} pur_real_subtotal, #{item.repurPushIncome} repur_push_income, #{item.repurRangeIncome} repur_range_income, @@ -161,7 +127,8 @@ on (cb.pk_member = b.pk_member and cb.period = b.period) WHEN NOT MATCHED THEN insert ( - pk_id, pk_member, period, pk_rate, direct_income,expand_income,expand_no_capping, + pk_id, pk_member, period, pk_rate, direct_income, global_points, + expand_income,expand_no_capping, expand_capping,coach_income,share_income,service_income,back_points,service_spend, pur_real_subtotal,repur_push_income,repur_range_income,repur_expand_income,repur_real_subtotal, repur_coupon,repur_coupon_share,repur_coupon_subtotal, @@ -171,7 +138,8 @@ retail_area_income, retail_benefit_range_income, retail_month_repurchase_income, retail_benefit_avg_income, retail_benefit_income, retail_real_subtotal) values ( - b.pk_id, b.pk_member, b.period, b.pk_rate, b.direct_income,b.expand_income,b.expand_no_capping, + b.pk_id, b.pk_member, b.period, b.pk_rate, b.direct_income, b.global_points, + b.expand_income,b.expand_no_capping, b.expand_capping,b.coach_income,b.share_income,b.service_income,b.back_points,b.service_spend, b.pur_real_subtotal,b.repur_push_income,b.repur_range_income,b.repur_expand_income,b.repur_real_subtotal, b.repur_coupon,b.repur_coupon_share,b.repur_coupon_subtotal, @@ -319,21 +287,26 @@ select - nvl(sum(cb.direct_income),0) direct_income, - nvl(sum(cb.expand_income),0) expand_income, - nvl(sum(cb.expand_no_capping),0) expand_no_capping, - nvl(sum(cb.expand_capping),0) expand_capping, - nvl(sum(cb.coach_income),0) coach_income, - nvl(sum(cb.share_income),0) share_income, - nvl(sum(cb.service_income),0) service_income, - nvl(sum(cb.back_points),0) back_points, - nvl(sum(cb.service_spend),0) service_spend, - nvl(sum(cb.pur_real_subtotal),0) pur_real_subtotal, - nvl(sum(cb.repur_push_income),0) repur_push_income, - nvl(sum(cb.repur_expand_income),0) repur_expand_income, - nvl(sum(cb.repur_real_subtotal),0) repur_real_subtotal, - nvl(sum(cb.repur_coupon),0) repur_coupon, - nvl(sum(cb.repur_coupon_share),0) repur_coupon_share, - nvl(sum(cb.repur_coupon_subtotal),0) repur_coupon_subtotal, - nvl(sum(cb.store_income),0) store_income, - nvl(sum(cb.global_points),0) global_points, - nvl(sum(cb.car_award_points),0) car_award_points, - bc.out_exchange_rate, - nvl(sum(cb.repur_range_income),0) repur_range_income, - nvl(sum(cb.retail_range_income),0) retail_range_income, - nvl(sum(cb.retail_same_level_income),0) retail_same_level_income, - nvl(sum(cb.retail_area_income),0) retail_area_income, - nvl(sum(cb.retail_benefit_range_income),0) retail_benefit_range_income, - nvl(sum(cb.retail_month_repurchase_income),0) retail_month_repurchase_income, - nvl(sum(cb.retail_benefit_avg_income),0) retail_benefit_avg_income, - nvl(sum(cb.retail_benefit_income),0) retail_benefit_income, - nvl(sum(cb.retail_real_subtotal),0) retail_real_subtotal, - nvl(sum(cb.real_income_total),0) real_income_total + nvl( sum( cb.direct_income ), 0 ) direct_income, + nvl( sum( cb.store_income ), 0 ) store_income, + nvl( sum( cb.global_points ), 0 ) global_points, + nvl( sum( cb.retail_range_income ), 0 ) retail_range_income, + nvl( sum( cb.retail_same_level_income ), 0 ) retail_same_level_income, + sum(cb.real_income_total) real_income_total, + bc.out_exchange_rate from cu_member_bonus cb inner join cu_member cm on cb.pk_member = cm.pk_id @@ -508,26 +458,12 @@ - - MERGE INTO ${retailsTableName} s - USING ( - SELECT SUM(boxNum) AS boxNum, SUM(pv) AS pv, pk_id - FROM ( - SELECT b.PK_ID, - NVL(s.NEW_BOX_NUM, 0) AS boxNum, - NVL(s.NEW_CONSUME_PV, 0) AS pv - FROM ${retailsTableName} s - RIGHT JOIN ( - SELECT cm.PK_ID - FROM cu_member cm - WHERE cm.PK_ID != #{pkId} - START WITH cm.PK_ID = #{pkId} - CONNECT BY PRIOR cm.pk_id = cm.pk_parent - ORDER BY LEVEL - ) b ON s.PK_MEMBER = b.PK_ID - ) c - GROUP BY pk_id - ) result - ON (s.PK_MEMBER = result.PK_ID) - WHEN MATCHED THEN - UPDATE SET - s.ENABLE_STATUS = 0, - s.TEAM_NEW_BOX_NUM = result.boxNum, - s.TEAM_NEW_PV = result.pv - WHERE s.PK_MEMBER = #{pkId} - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml index 92caff3f..5fcb2d37 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusPushMapper.xml @@ -56,44 +56,6 @@ - - insert ALL - - into cu_member_bonus_push(pk_bonus,pk_order,pk_bonus_items,income_status, - cal_type,cal_achieve,cal_value,pretax_income, - income_tax,real_income,round,second,remark, - income_ratio,income_dial_ratio,order_dial_ratio,pk_country,pk_creator) - values - ( - #{item.pkBonus},#{item.pkOrder},#{item.pkBonusItems},#{item.incomeStatus}, - #{item.calType},#{item.calAchieve},#{item.calValue},#{item.pretaxIncome}, - #{item.incomeTax},#{item.realIncome},#{item.round},#{item.second}, - #{item.remark},#{item.incomeRatio},#{item.incomeDialRatio},#{item.orderDialRatio}, - #{item.pkCountry},#{item.pkCreator} - ) - - SELECT 1 FROM dual - - - insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, - cal_type, cal_achieve, cal_value, pretax_income, - income_tax, real_income, round, second, remark, - income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) - values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, - #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, - #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, - #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, - #{item.pkCountry}, #{item.pkCreator}) - - - delete - from CU_MEMBER_BONUS_PUSH - where PK_BONUS in ( - select pk_id - from cu_member_bonus - where period = #{period} and grant_status <= 2) - - + + delete + from CU_MEMBER_BONUS_PUSH + where PK_BONUS in ( + select pk_id + from cu_member_bonus + where period = #{period} + and grant_status <= 2) + + + + insert ALL + + into cu_member_bonus_push ( + pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, + pretax_income, income_tax, real_income, + round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, + pk_country, pk_creator) + values ( + #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, + #{item.round}, #{item.second}, #{item.remark}, + #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + SELECT 1 FROM dual + + + + insert into cu_member_bonus_push(pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, pretax_income, + income_tax, real_income, round, second, remark, + income_ratio, income_dial_ratio, order_dial_ratio, pk_country, pk_creator) + values (#{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, #{item.pretaxIncome}, + #{item.incomeTax}, #{item.realIncome}, #{item.round}, #{item.second}, + #{item.remark}, #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCountry}, #{item.pkCreator}) + + + - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml index e43aca15..67e847a1 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusRangeMapper.xml @@ -156,13 +156,16 @@ tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name, b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,bct.short_name settle_country from ( - select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_order + select pk_id, pk_member, order_code, order_type, pk_rate, pk_country, order_amount, order_achieve + from sa_order so + where so.del_flag = 0 ) so inner join ( - select - cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income, - cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio from - cu_member_bonus cb + select cb.pk_member, cr.pk_order, cb.period, cb.pk_country, cr.pk_bonus_items, + cr.income_status, cr.cal_achieve, cr.remark, + cr.pretax_income, cr.income_tax, cr.real_income, + cr.income_ratio, cr.income_dial_ratio, cr.order_dial_ratio + from cu_member_bonus cb inner join CU_MEMBER_BONUS_RANGE cr on cb.pk_id = cr.pk_bonus where 1=1 @@ -180,7 +183,7 @@ select 1 from ( select pk_id from cu_member - where del_flag=0 and PAY_STATUS=1 + where del_flag = 0 and PAY_STATUS = 1 start with pk_id = #{item} connect by pk_parent = prior pk_id diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml new file mode 100644 index 00000000..89f587e3 --- /dev/null +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberBonusStageMapper.xml @@ -0,0 +1,160 @@ + + + + + + + delete + from CU_MEMBER_BONUS_STAGE + where PK_BONUS in ( + select pk_id + from cu_member_bonus + where period = #{period} + and grant_status <= 2) + + + + + insert ALL + + into cu_member_bonus_stage ( + pk_bonus, pk_order, pk_bonus_items, income_status, + cal_type, cal_achieve, cal_value, + pretax_income, income_tax, real_income, remark, + income_ratio, income_dial_ratio, order_dial_ratio, + pk_creator, child_node, stage, stage_num, pk_source_member) + values ( + #{item.pkBonus}, #{item.pkOrder}, #{item.pkBonusItems}, #{item.incomeStatus}, + #{item.calType}, #{item.calAchieve}, #{item.calValue}, + #{item.pretaxIncome}, #{item.incomeTax}, #{item.realIncome}, #{item.remark}, + #{item.incomeRatio}, #{item.incomeDialRatio}, #{item.orderDialRatio}, + #{item.pkCreator}, #{item.childNode}, #{item.stage}, #{item.stageNum}, #{item.pkSourceMember}) + + SELECT 1 FROM dual + + + + diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml index a261fa85..f875e1ec 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareBonusMapper.xml @@ -2,56 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml index 690f8b9d..a38b4380 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberShareDetailMapper.xml @@ -2,47 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - merge into cu_member_share_detail a - using( - - select #{item.pkAwards} pk_awards,#{item.pkShareBonus} pk_share_bonus,#{item.promoteTotal} promote_total,#{item.reachTotal} reach_total, - #{item.expectShareIncome} expect_share_income,#{item.expectShareSubtotal} expect_share_subtotal, - #{item.realShareIncome} real_share_income,#{item.realShareSubtotal} real_share_subtotal, - #{item.creationTime, jdbcType=TIMESTAMP} creation_time,#{item.pkCountry} pk_country,#{item.pkCreator,jdbcType=BIGINT} pk_creator, - #{item.modifiedTime, jdbcType=TIMESTAMP} modified_time,#{item.pkModified,jdbcType=BIGINT} pk_modified from dual - - ) b - on (a.pk_share_bonus=b.pk_share_bonus and a.pk_awards=b.pk_awards) - WHEN NOT MATCHED THEN - insert(pk_awards,pk_share_bonus, promote_total, reach_total, expect_share_income, expect_share_subtotal, real_share_income, - real_share_subtotal,creation_time,pk_country,pk_creator) - values - (b.pk_awards,b.pk_share_bonus,b.promote_total,b.reach_total, b.expect_share_income, b.expect_share_subtotal, b.real_share_income, - b.real_share_subtotal,b.creation_time,b.pk_country,b.pk_creator) - when matched then - update set a.promote_total=b.promote_total,a.reach_total=b.reach_total,a.expect_share_income=b.expect_share_income, - a.expect_share_subtotal=b.expect_share_subtotal,a.real_share_income=b.real_share_income, - a.real_share_subtotal=b.real_share_subtotal,a.modified_time=b.modified_time,a.pk_modified=b.pk_modified - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberSpeRetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberSpeRetailMapper.xml deleted file mode 100644 index e3cccf1e..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/CuMemberSpeRetailMapper.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml index 6bf61715..20c9ff57 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessDetailMapper.xml @@ -2,114 +2,4 @@ - - - - - - - - - - - - - - - - - - merge into cu_member_assess_detail a - using (select ca.pk_id,ca.pk_member,(case when ca.assess_type=0 then 1 else 3 end) change_type, - ca.assess_target trade_achieve,ca.pk_creator,ca.pk_country from ${tableName} ca - where ca.assess_status=2 and ca.period = #{period} and pk_member in - - #{item.pkMember} - - and assess_type = #{assessType} - and ca.assess_target <= ca.month_balance+ca.month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type=b.change_type) - when not matched then - insert (pk_assess,pk_member,change_type,trade_achieve, pk_creator,pk_country) - values(b.pk_id,b.pk_member,b.change_type,b.trade_achieve, b.pk_creator,b.pk_country) - - - - insert into cu_member_assess_detail (pk_assess, pk_member, PK_ORDER, change_type, trade_achieve, TRADE_TIME, pk_creator, pk_country) - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 0 CHANGE_TYPE, - order_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 0) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type in (3, 12, 14, 22, 26, 31) - and so.order_achieve > 0 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - union - select nvl(ca.pk_id, 0) PK_ASSESS, - so.PK_MEMBER, - so.pk_id pk_order, - 2 CHANGE_TYPE, - order_ass_achieve TRADE_ACHIEVE, - pay_time TRADE_TIME, - so.PK_MEMBER, - so.pk_country - from sa_order so - left join (select * from ${tableName} where period = #{period} and ASSESS_TYPE = 1) ca - on so.pk_member = ca.pk_member - where so.del_flag = 0 - and so.order_status = 1 - and order_type = 13 - and pay_time >= #{startDate, jdbcType=DATE} - and pay_time < #{endDate, jdbcType=DATE} - - - - merge into cu_member_assess_detail a - using (select pk_id, - pk_member, - (case when assess_type = 0 then 1 else 3 end) change_type, - assess_target trade_achieve, - pk_creator, - pk_country - from ${tableName} - where assess_status = 2 - and period = #{period} - and assess_target <= month_balance + month_add) b - on (a.pk_assess = b.pk_id and a.pk_member = b.pk_member and a.change_type = b.change_type) - when matched then - update set a.trade_achieve = b.trade_achieve - when not matched then - insert (pk_assess, pk_member, change_type, trade_achieve, pk_creator, pk_country) - values (b.pk_id, b.pk_member, b.change_type, b.trade_achieve, b.pk_creator, b.pk_country) - - - - merge into cu_member_assess_detail a - using( - - select #{item.changeType} change_type,#{item.pkMember} pk_member,#{item.pkAssess} pk_assess from dual - - )b on (a.pk_assess=b.pk_assess and a.pk_member=b.pk_member and a.change_type=b.change_type) - when matched then - update set a.del_flag=1 - - - - DELETE - FROM cu_member_assess_detail - WHERE pk_assess IN ( - SELECT pk_id - FROM ${tableName} - WHERE period = #{period}) - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 5ab19c39..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml index fd9ea959..472939bf 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml @@ -2,189 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - pk_id NUMBER(20) primary key, - pk_member NUMBER(20) not null, - period NUMBER(6) not null, - settle_month VARCHAR2(12) not null, - assess_type NUMBER(2) not null, - pk_awards NUMBER(6) not null, - assess_target NUMBER(17,6) default 0 not null, - is_examine NUMBER(1) default 1 not null, - assess_status NUMBER(2) not null, - month_balance NUMBER(17,6) default 0 not null, - month_add NUMBER(17,6) default 0 not null, - cur_month_add number(17,6) default 0 not null, - month_used NUMBER(17,6) default 0 not null, - month_surplus NUMBER(17,6) default 0 not null, - del_flag NUMBER(1) default 0 not null, - pk_country NUMBER(4) not null, - pk_creator NUMBER(20) not null, - creation_time DATE default sysdate not null, - modified_time DATE, - pk_modified NUMBER(20) - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_awards b - on ct.pk_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using( - select pk_member,#{period} period,#{month} settle_month,0 assess_type,pk_range_awards pk_awards,nvl(b.purchase_check,0) ASSESS_TARGET, - 1 IS_EXAMINE,2 assess_status,ct.pk_settle_country PK_COUNTRY,1 pk_creator - from ${sourceTableName} ct - left join bd_range_awards b - on ct.pk_range_awards=b.pk_id - where category=0 - ) b - on (a.pk_member=b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - WHEN MATCHED THEN - update set a.SETTLE_MONTH=b.SETTLE_MONTH,a.PK_AWARDS=b.PK_AWARDS,a.ASSESS_TARGET=b.ASSESS_TARGET, - a.IS_EXAMINE=b.IS_EXAMINE,a.ASSESS_STATUS=b.ASSESS_STATUS - when not matched then - insert (PK_MEMBER,period,SETTLE_MONTH,ASSESS_TYPE,PK_AWARDS,ASSESS_TARGET, - IS_EXAMINE,ASSESS_STATUS,PK_COUNTRY,PK_CREATOR) - values(b.PK_MEMBER,b.period,b.SETTLE_MONTH,b.ASSESS_TYPE,b.PK_AWARDS,b.ASSESS_TARGET, - b.IS_EXAMINE,b.ASSESS_STATUS,b.PK_COUNTRY,b.PK_CREATOR) - - - - - merge into ${tableName} a - using (select pk_member,assess_type,month_surplus from ${beforeTableName} cs - inner join cu_member cm - on cs.pk_member=cm.pk_id and cm.del_flag=0 - where period = #{sourcePeriod} and assess_type = #{assessType} and cm.system_type=0) b - on (a.pk_member = b.pk_member and a.assess_type = b.assess_type) - when matched then - update set a.month_balance = b.month_surplus where a.del_flag= 0 and a.period= #{period} - - - merge into ${tableName} a - using (select pk_member,#{period} period,#{assessType} assess_type,sum(order_achieve) order_achieve from( - select pk_member,(case when #{assessType} = 0 then order_achieve else order_ass_achieve end) order_achieve from sa_order - where del_flag = 0 and order_status = 1 and order_type in - - #{item} - - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - ) - group by pk_member - ) b - on (a.pk_member = b.pk_member and a.period= b.period and a.assess_type= b.assess_type) - when matched then - update set a.MONTH_ADD=b.order_achieve - - - - update ${tableName} set month_surplus = month_balance+month_add - where del_flag= 0 and period = #{period} - - - - update ${tableName} set assess_status = 0, month_used = assess_target, month_surplus = month_balance+month_add-assess_target - where del_flag= 0 and assess_status=2 and period = #{period} and assess_target <= month_balance+month_add - - - - merge into ${tableName} a - using ( - select distinct pk_member,#{period} period,0 assess_type from( - select pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - union - select pk_member from cu_member_awards - where del_flag=0 and purchase_status= 0 and - period >= #{startPeriod} and period < #{endPeriod} - union - select pk_member from ${settleTableName} ct - inner join bd_awards ba - on ct.pk_awards = ba.pk_id - where ct.purchase_status=0 and ba.purchase_check >0) - ) b - on (a.pk_member = b.pk_member and a.period=b.period and a.assess_type=b.assess_type) - when matched then - update set a.is_examine=0 - - - - merge into ${settleTableName} a - using ( select distinct pk_id pk_member from cu_member where del_flag =0 and category =0 - and pay_status = 1 - and pay_time >= #{startDate, jdbcType=DATE} and pay_time < #{endDate, jdbcType=DATE} - - ) b - on (a.pk_member = b.pk_member) - when matched then - update set a.purchase_status=0 - - - - update ${settleTableName} set purchase_status=0 - - - - delete from ${tableName} where period = #{period} and del_flag=0 - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml index 139a6292..40fd08df 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAwardsMapper.xml @@ -23,22 +23,6 @@ - - - insert ALL - - into cu_member_awards ( - pk_member, period, up_type, old_level, new_level, - purchase_status, award_type, pk_creator, pk_country, system_type - ) - values ( - #{item.pkMember}, #{item.period}, #{item.upType}, #{item.oldLevel}, #{item.newLevel}, - #{item.purchaseStatus}, #{item.awardType}, #{item.pkCreator}, #{item.pkCountry}, #{item.systemType} - ) - - SELECT 1 FROM dual - - update cu_member_awards set del_flag = 1, modified_time = sysdate, PK_MODIFIED = 1 where period= #{period} and pk_member in @@ -61,53 +45,30 @@ update set a.assess_target = b.assess_target,a.assess_status = b.assess_status - - merge into ${rangeTableName} a - using ( - select cw.* - from cu_member_awards cw - inner join ( - select ca.pk_member, min(ca.pk_id) pk_id - from cu_member_awards ca - inner join bd_awards bw - on ca.new_level = bw.pk_id - and bw.del_flag = 0 - and bw.awards_value >= 5 - where ca.del_flag = 0 - and ca.up_type = 1 - and ca.period = #{period} - and ca.award_type = #{awardType} - and ca.pk_member in - (select pk_id - from cu_member start - with pk_id = #{pkMember} - connect by prior pk_parent = pk_id) - group by ca.pk_member - ) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0 - ) b on (a.pk_member = b.pk_member) - when matched then - update set - - a.pk_awards = b.old_level - - - a.pk_share_awards = b.old_level - - + + + insert ALL + + into cu_member_awards ( + pk_member, period, up_type, old_level, new_level, + purchase_status, award_type, pk_creator, pk_country + ) + values ( + #{item.pkMember}, #{item.period}, #{item.upType}, #{item.oldLevel}, #{item.newLevel}, + #{item.purchaseStatus}, #{item.awardType}, #{item.pkCreator}, #{item.pkCountry} + ) + + SELECT 1 FROM dual + update cu_member_awards cma - set cma.del_flag = 1, - cma.modified_time = sysdate - where period = #{period} - and up_type = 1 - - + and cma.del_flag = 0 @@ -120,14 +81,6 @@ #{item.pkId} - - + + merge into ${rangeTableName} a + using ( + select cw.* + from cu_member_awards cw + inner join ( + select ca.pk_member, min(ca.pk_id) pk_id + from cu_member_awards ca + inner join bd_awards bw + on ca.new_level = bw.pk_id + and bw.del_flag = 0 + and bw.awards_value >= 5 + where ca.del_flag = 0 + and ca.up_type = 1 + and ca.period = #{period} + and ca.award_type = #{awardType} + and ca.pk_member in + (select pk_id + from cu_member start + with pk_id = #{pkMember} + connect by prior pk_parent = pk_id) + group by ca.pk_member + ) cx on cw.pk_id = cx.pk_id where cw.del_flag = 0 + ) b on (a.pk_member = b.pk_member) + when matched then + update set + + a.pk_awards = b.old_level + + + - select cml.pk_member, bg.pk_id pk_grade, bg.grade_value - from cu_member_level cml - left join bd_grade bg - on bg.pk_id = cml.new_level - where cml.del_flag = 0 - and cml.up_type = 4 - and cml.pk_member = #{pkMember} - and cml.pk_order = #{pkOrder} - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - - - - - - - update cu_member_grade - set del_flag = 1, - modified_time = sysdate - where period = #{period} - and del_flag = 0 - and up_type = 1 - and pk_id in - - #{item.pkId} - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml deleted file mode 100644 index bfebe81c..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessDetailMapper.xml +++ /dev/null @@ -1,136 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess_detail ( - pk_id, pk_member, pk_region_assess, assess_date, - pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.pkRegionAssess}, #{item.assessDate}, - #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into cu_region_assess_detail a - using ( - select cd.pk_id, - cr.pk_member, - cr.pk_awards, - (cr.month_consume_pv + cr.team_month_pv) team_month_pv - from cu_region_assess_detail cd - inner join ${rangeTableName} cr - on cd.pk_member = cr.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.pk_awards = b.pk_awards, a.team_month_pv = b.team_month_pv - WHERE a.pk_awards != b.pk_awards - OR a.team_month_pv != b.team_month_pv - - - - merge into cu_region_assess_detail a - using ( - select pk_id, max(big_area_pv) big_area_pv - from ( - select cd.pk_id, b.* - from cu_region_assess_detail cd - inner join ( - select pk_parent pk_member, (month_consume_pv + team_month_pv) big_area_pv - from ${rangeTableName} - union - select pk_member, month_consume_pv big_area_pv - from ${rangeTableName} - ) b - on cd.pk_member = b.pk_member - where cd.del_flag = 0 - and cd.assess_date = #{assessDate, jdbcType=DATE} - ) - group by pk_id - ) b - on (a.pk_id = b.pk_id) - when matched then - update set a.small_area_pv = a.team_month_pv - b.big_area_pv - - - - update cu_region_assess_detail - set assess_status = 2 - where del_flag = 0 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set assess_status = 0 - where del_flag = 0 - and team_month_pv >= 300000 - and small_area_pv >= 100000 - and assess_date = #{assessDate, jdbcType=DATE} - - - - update cu_region_assess_detail - set del_flag = 1, - modified_time = sysdate - where pk_region_assess in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate, jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate, jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date != #{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess_detail - where del_flag = 0 and - pk_region_assess in ( - select pk_id from cu_region_assess - where del_flag = 0 - and assess_start_date = #{assessStartDate, jdbcType=DATE} - - and assess_period = #{assessPeriod} - and assess_period >= #{assessPeriod} - - ) - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml deleted file mode 100644 index 94f79635..00000000 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuRegionAssessMapper.xml +++ /dev/null @@ -1,186 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_region_assess ( - pk_id, pk_member, assess_period, pk_region, - assess_start_date, assess_end_date, - source, pk_creator, pk_country) - values ( - #{item.pkId}, #{item.pkMember}, #{item.assessPeriod}, #{item.pkRegion}, - #{item.assessStartDate}, #{item.assessEndDate}, - #{item.source}, #{item.pkCreator}, #{item.pkCountry}) - - SELECT 1 FROM dual - - - - merge into CU_REGION_ASSESS a - using ( - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join cu_member_retail_region cmrr - on cmrr.pk_id = ca.pk_region - where cd.ASSESS_STATUS = 0 - and cd.del_flag = 0 - and ca.del_flag = 0 - and ca.assess_start_date <= #{assessDate,jdbcType=DATE} - and ca.assess_end_date >= #{assessDate,jdbcType=DATE} - and cmrr.del_flag = 0 - and cmrr.effective_end_date is null - group by cd.pk_region_assess - union - - select cd.pk_region_assess, sum(1) REACH_NUM - from cu_region_assess_detail cd - inner join cu_region_assess ca - on cd.pk_region_assess = ca.pk_id - inner join CU_MEMBER_RETAIL_REGION cmrr - on cmrr.pk_id = ca.pk_region - where cd.del_flag = 0 - and ca.del_flag = 0 - and cmrr.del_flag = 0 - and cmrr.effective_end_date is not null - and cd.assess_date > ADD_MONTHS(cmrr.effective_end_date, -6) - group by cd.pk_region_assess - ) b - on (a.pk_id = b.pk_region_assess) - when matched then - update set a.REACH_NUM = b.REACH_NUM - - - - update cu_region_assess - set del_flag = 1, - modified_time = sysdate - where pk_id in ( - select ca.pk_id - from cu_region_assess ca - inner join ( - select pk_id - from cu_member_retail_region - where effective = 0 - and del_flag = 0 - and nvl(modified_time, creation_time) >= #{assessStartDate,jdbcType=DATE} - and nvl(modified_time, creation_time) < #{assessEndDate,jdbcType=DATE} - ) b - on ca.pk_region = b.pk_id - where ca.del_flag = 0 - and ca.assess_start_date !=#{assessEndDate,jdbcType=DATE}) - - - - delete from cu_region_assess where del_flag=0 and - assess_start_date=#{assessStartDate, jdbcType=DATE} - - and assess_period=#{assessPeriod} - and assess_period >= #{assessPeriod} - - - - - - - - - - - - diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml index 30cffac9..c73b43ae 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/order/BonusOrderMapper.xml @@ -52,84 +52,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - select so.pk_id, so.pk_member, so.order_code, @@ -145,255 +70,34 @@ so.pk_reference, so.pk_vertex, so.pk_country, - so.del_flag, so.pay_time, so.pk_creator, so.consume_amount, - so.box_num, - nvl(st.pk_id,0) items_id, - nvl(st.pk_order,0) pk_order, - nvl(st.pk_wares,0) pk_wares, - nvl(st.wares_price,0) wares_price, - nvl(st.wares_quantity,0) wares_quantity, - nvl(bw.wares_code,'~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num + bc.in_exchange_rate from sa_order so - left join sa_order_wares st - on so.pk_id = st.pk_order and st.wares_price > 0 - left join bd_wares bw - on bw.pk_id = st.pk_wares and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (41, 42) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - union - select so.pk_id, - so.pk_member, - so.order_code, - so.order_type, - so.pk_rate, - so.rec_province, - so.rec_city, - so.rec_county, - so.order_amount, - so.order_achieve, - so.order_ass_achieve, - so.upload_achieve, - so.pk_reference, - so.pk_vertex, - so.pk_country, - so.del_flag, - so.pay_time, - so.pk_creator, - so.consume_amount, - so.box_num, - soi.items_id, - soi.pk_order, - soi.pk_wares, - soi.wares_price, - soi.wares_quantity, - nvl(bw.wares_code, '~') wares_code, - nvl(bw.area_income, 0) area_income, - nvl(bw.area_income_type, 0) area_income_type, - nvl(bw.box_num, 0) wares_box_num - from sa_order so - left join ( - select max(soi.pk_id) items_id, - nvl(soi.pk_order, 0) pk_order, - nvl(soi.pk_wares, 0) pk_wares, - sum(soi.achievement * soi.quantity) wares_price, - max(soi.wares_quantity) wares_quantity - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - group by soi.pk_order, soi.pk_wares - ) soi - on soi.pk_order = so.pk_id - left join bd_wares bw - on bw.pk_id = soi.pk_wares - and bw.del_flag = 0 - where so.order_status = 1 - and so.order_type in (43, 44) - - and so.order_code=#{orderCode} - - and so.pay_time >= #{startDate} - and so.pay_time < #{endDate} - ) od left join bd_currency bc - on od.pk_rate = bc.pk_id - order by pay_time, wares_price desc - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java index b1ef7107..8ea43881 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberBankController.java @@ -2,21 +2,14 @@ package com.hzs.member.account.controller.api; import cn.hutool.core.collection.CollUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EBusinessModule; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberBank; -import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.dto.CuMemberBankParam; import com.hzs.member.account.service.ICuMemberBankService; -import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.account.service.ICuMemberWithdrawService; import com.hzs.member.account.vo.CuMemberBankVO; import com.hzs.member.sms.service.IApiAliSmsService; @@ -37,184 +30,144 @@ import java.util.List; public class ApiCuMemberBankController extends BaseController { @Autowired - private ICuMemberBankService cuMemberBankService; + private ICuMemberBankService iCuMemberBankService; @Autowired - private ICuMemberBaseService iCuMemberBaseService; - @Autowired - private ICuMemberWithdrawService cuMemberWithdrawService; + private ICuMemberWithdrawService iCuMemberWithdrawService; @Autowired private IApiAliSmsService iApiAliSmsService; @DubboReference - IBankCardServiceApi bankCardServiceApi; - + IBankCardServiceApi iBankCardServiceApi; /** - * 是否绑定银行卡 - * - * @return AjaxResult + * 银行卡列表 */ - @GetMapping("/is-bind") - public AjaxResult isBindBank() { + @GetMapping("/list") + public AjaxResult getBankCardList() { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); - CuMemberBankVO cuMemberBank = cuMemberBankService.isBindBank(pkMember, pkCountry); - String flag = null == cuMemberBank.getDefaultCard() ? EYesNo.NO.getValue() : EYesNo.YES.getValue(); - return AjaxResult.success().put("flag", flag); - } - - /** - * 解绑银行卡 - * - * @return AjaxResult - */ - @GetMapping("/unbind-bank") - public AjaxResult unbindBank(Long pkId) { - Assert.notNull(pkId, TransactionUtils.getContent(FinanceMsgConstants.BANK_CARD_CANNOT_EMPTY)); - Integer pkCountry = SecurityUtils.getPkCountry(); - Long pkMember = SecurityUtils.getUserId(); - //查询默认银行卡 - CuMemberBankVO cuMemberBankVO = cuMemberBankService.selectCuMemberBankById(pkId); - //解绑默认银行卡需校验是否有进行的提现 - if (null != cuMemberBankVO) { - List pkIds = cuMemberWithdrawService.selectWithdrawMember(pkCountry, pkMember); - if (CollUtil.isNotEmpty(pkIds)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_APPROVAL)); - } - - } - return AjaxResult.success(cuMemberBankService.unbindBank(pkId, pkMember)); - } - - - /** - * 校验开户名 - * - * @param accountName 开户名 - * @return AjaxResult - */ - @GetMapping("/check-account-name") - public AjaxResult checkAccountName(String accountName) { - Assert.notNull(accountName, TransactionUtils.getContent(FinanceMsgConstants.ACCOUNT_NAME_CANNOT_EMPTY)); - String memberCode = SecurityUtils.getMemberCode(); - String flag = memberCode.equals(accountName) ? EYesNo.YES.getValue() : EYesNo.NO.getValue(); - return AjaxResult.success().put("flag", flag); + return AjaxResult.success(iCuMemberBankService.selectBankCardByPkMember(pkMember, pkCountry)); } /** * 银行卡四要素验证 - * - * @param memberBankParam 银行卡信息 - * @return AjaxResult */ @PostMapping("/verify-bank-card") public AjaxResult verifyBankCard(@RequestBody CuMemberBankParam memberBankParam) { - BankCardParam bankCard = BankCardParam.builder().name(memberBankParam.getAccountName()) - .idCard(memberBankParam.getIdCard()).mobile(memberBankParam.getPhone()) - .bankCard(StringUtils.deleteWhitespace(memberBankParam.getCardNumber())).build(); - R result = bankCardServiceApi.verifyBankCard(bankCard); + if (StringUtils.isEmpty(memberBankParam.getCardNumber())) { + return AjaxResult.error("银行卡号不能为空!"); + } + if (StringUtils.isEmpty(memberBankParam.getIdCard())) { + return AjaxResult.error("身份证号码不能为空!"); + } + if (StringUtils.isEmpty(memberBankParam.getAccountName())) { + return AjaxResult.error("开户姓名不能为空!"); + } + if (StringUtils.isEmpty(memberBankParam.getPhone())) { + return AjaxResult.error("手机号不能为空!"); + } + + BankCardParam bankCard = BankCardParam.builder() + .name(memberBankParam.getAccountName()) + .idCard(memberBankParam.getIdCard()) + .mobile(memberBankParam.getPhone()) + .bankCard(StringUtils.deleteWhitespace(memberBankParam.getCardNumber())) + .build(); + R result = iBankCardServiceApi.verifyBankCard(bankCard); return result.isSuccess() ? AjaxResult.success() : AjaxResult.error(result.getMsg()); - } - /** * 绑定银行卡 - * - * @param cuMemberBankParam 银行卡入参 - * @return AjaxResult */ @PostMapping("/add") @RepeatSubmitSimple public AjaxResult addBankInfo(@RequestBody CuMemberBankParam cuMemberBankParam) { Integer pkCountry = SecurityUtils.getPkCountry(); Long pkMember = SecurityUtils.getUserId(); - //是否配置提现白名单 - String configWhite = getConfigWhite(pkCountry, pkMember); - //海外不校验验证码、四要素 国内配置了提现白名单不校验 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY) && configWhite.equals(EYesNo.NO.getValue())) { - String verificationCode = cuMemberBankParam.getVerificationCode(); - if (StringUtils.isEmpty(verificationCode)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.VERIFICATION_CODE_CANNOT_EMPTY)); - } - //支行名称 - String subBankName = cuMemberBankParam.getSubBankName(); - if (StringUtils.isEmpty(subBankName)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.OPENING_BRANCH_CANNOT_EMPTY)); - } - //银行卡号去空格 - String cardNumber = cuMemberBankParam.getCardNumber(); - cuMemberBankParam.setCardNumber(StringUtils.deleteWhitespace(cardNumber)); - String message = iApiAliSmsService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null, pkMember); - if (null != message) { - return AjaxResult.error(message); - } + if (null == cuMemberBankParam.getPkBank()) { + return AjaxResult.error("银行名称不能为空"); } + if (StringUtils.isEmpty(cuMemberBankParam.getSubBankName())) { + return AjaxResult.error("开户支行不能为空"); + } + if (StringUtils.isEmpty(cuMemberBankParam.getCardNumber())) { + return AjaxResult.error("银行卡号不能为空!"); + } + if (StringUtils.isEmpty(cuMemberBankParam.getAccountName())) { + return AjaxResult.error("开户姓名不能为空!"); + } + if (StringUtils.isEmpty(cuMemberBankParam.getIdCard())) { + return AjaxResult.error("证件号码不能为空!"); + } + if (StringUtils.isEmpty(cuMemberBankParam.getPhone())) { + return AjaxResult.error("联系方式不能为空!"); + } + String verificationCode = cuMemberBankParam.getVerificationCode(); + if (StringUtils.isEmpty(verificationCode)) { + return AjaxResult.error("验证码不能为空!"); + } + String message = iApiAliSmsService.checkCode(cuMemberBankParam.getPhone(), verificationCode, null, pkMember); + if (null != message) { + return AjaxResult.error(message); + } + + // 银行卡号去空格 + String cardNumber = cuMemberBankParam.getCardNumber(); + cuMemberBankParam.setCardNumber(StringUtils.deleteWhitespace(cardNumber)); cuMemberBankParam.setPkCountry(pkCountry); cuMemberBankParam.setPkMember(pkMember); - return toAjax(cuMemberBankService.saveMemberBank(cuMemberBankParam)); + return toAjax(iCuMemberBankService.saveMemberBank(cuMemberBankParam)); } - - @GetMapping("/list") - public AjaxResult getBankCardList() { - Long pkMember = SecurityUtils.getUserId(); + /** + * 解绑银行卡 + */ + @GetMapping("/unbind-bank") + public AjaxResult unbindBank(Long pkId) { + Assert.notNull(pkId, "银行卡号不能为空!"); Integer pkCountry = SecurityUtils.getPkCountry(); - return AjaxResult.success(cuMemberBankService.selectBankCardByPkMember(pkMember, pkCountry)); - } - - @GetMapping("/default-bank") - public AjaxResult getDefaultBankCard() { Long pkMember = SecurityUtils.getUserId(); - Integer pkCountry = SecurityUtils.getPkCountry(); - return AjaxResult.success(cuMemberBankService.isBindBank(pkMember, pkCountry)); + // 查询默认银行卡 + CuMemberBankVO cuMemberBankVO = iCuMemberBankService.selectCuMemberBankById(pkId); + // 解绑默认银行卡需校验是否有进行的提现 + if (null != cuMemberBankVO) { + List pkIds = iCuMemberWithdrawService.selectWithdrawMember(pkCountry, pkMember); + if (CollUtil.isNotEmpty(pkIds)) { + return AjaxResult.error("提现正在审批中,请稍后再试"); + } + } + return AjaxResult.success(iCuMemberBankService.unbindBank(pkId, pkMember)); } /** * 修改默认银行卡 - * - * @param pkId ID - * @return AjaxResult */ @GetMapping("/update-default") public AjaxResult updateDefault(Long pkId) { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); - //查询银行卡 - CuMemberBank cuMemberBank = cuMemberBankService.getById(pkId); - //解绑默认银行卡需校验是否有进行的提现 + // 查询银行卡 + CuMemberBank cuMemberBank = iCuMemberBankService.getById(pkId); + // 解绑默认银行卡需校验是否有进行的提现 if (null != cuMemberBank) { - List pkIds = cuMemberWithdrawService.selectWithdrawMember(pkCountry, pkMember); + List pkIds = iCuMemberWithdrawService.selectWithdrawMember(pkCountry, pkMember); if (CollUtil.isNotEmpty(pkIds)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_APPROVAL)); + return AjaxResult.error("提现正在审批中,请稍后再试"); } } - return toAjax(cuMemberBankService.updateDefault(pkId, pkMember, pkCountry)); - } - - - /** - * 查询是否设置提现白名单 - * - * @return AjaxResult - */ - @GetMapping("/is-white-list") - public AjaxResult isWhiteList() { - String flag = getConfigWhite(SecurityUtils.getPkCountry(), SecurityUtils.getUserId()); - return AjaxResult.success().put("flag", flag); + return toAjax(iCuMemberBankService.updateDefault(pkId, pkMember, pkCountry)); } /** - * 查询提现白名单配置 - * - * @param pkCountry 国家ID - * @param pkMember 会员ID - * @return String + * 默认银行卡 */ - private String getConfigWhite(Integer pkCountry, Long pkMember) { - BdTradeWhiteConfig bdTradeWhiteConfig = iCuMemberBaseService.selectConfigWhite(pkMember, pkCountry, EBusinessModule.WITHDRAWAL.getValue()); - return null == bdTradeWhiteConfig ? EYesNo.NO.getValue() : EYesNo.YES.getValue(); + @GetMapping("/default-bank") + public AjaxResult getDefaultBankCard() { + Long pkMember = SecurityUtils.getUserId(); + Integer pkCountry = SecurityUtils.getPkCountry(); + return AjaxResult.success(iCuMemberBankService.isBindBank(pkMember, pkCountry)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberTransferController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberTransferController.java index db08b67a..a8d56bcf 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberTransferController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberTransferController.java @@ -313,10 +313,15 @@ public class ApiCuMemberTransferController extends BaseController { Integer toPkAccount = accountServiceApi.getPkAccount(pkAccount).getData(); CuMemberTransfer cuMemberTransfer = CuMemberTransfer.builder().pkMember(pkMember) - .pkAccount(pkAccount).transferCode(code).toPkMember(toPkMember) - .pkToAccount(toPkAccount).pkRate(currencyDTO.getPkId()) - .transferMoney(transferMoney).remarks(cuMemberTransferParam.getRemarks()) - .serviceCharge(serviceRatio).issuedAmount(issuedAmount) + .pkAccount(pkAccount) + .transferCode(code) + .toPkMember(toPkMember) + .pkToAccount(toPkAccount) + .pkRate(currencyDTO.getPkId()) + .transferMoney(transferMoney) + .remarks(cuMemberTransferParam.getRemarks()) + .serviceCharge(serviceRatio) + .issuedAmount(issuedAmount) .build(); cuMemberTransfer.setPkCountry(pkCountry); cuMemberTransfer.setPkCreator(pkMember); @@ -338,51 +343,6 @@ public class ApiCuMemberTransferController extends BaseController { return (reference.equals(EYesNo.YES.getIntValue()) || transferStatus.equals(EYesNo.YES.getIntValue())) && !cuMemberTransferService.isBloodLine(pkMember, toPkMember); } - /** - * 转账的特殊配置 - * - * @param pkMember 转出方ID - * @param transferMoney 转账金额 - * @param toPkMember 转入方ID - * @return AjaxResult - */ - private AjaxResult transferSpecial(BdTransferSpecial transferSpecial, Long pkMember, BigDecimal transferMoney, Long toPkMember) { - //特殊配置 - if (null != transferSpecial) { - //某个人的最低提现金额 - BigDecimal minAmountMoney = transferSpecial.getMinAmountMoney(); - if (transferMoney.compareTo(minAmountMoney) < 0) { - return AjaxResult.error("转账金额不能低于最低转账金额"); - } - Integer specialConfig = transferSpecial.getSpecialConfig(); - //不校验 - if (specialConfig.equals(ETransferSpecial.NO_CONTROL.getValue())) { - return AjaxResult.success(); - } - //推荐 - if (specialConfig.equals(ETransferSpecial.BLOOD_ALL.getValue()) && !cuMemberTransferService.isBloodLine(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在血缘线中"); - } - if (specialConfig.equals(ETransferSpecial.BLOOD_ON_UMBRELLA.getValue()) && !cuMemberTransferService.isBloodKinshipOnUmbrella(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在血缘伞上"); - } - if (specialConfig.equals(ETransferSpecial.BLOOD_UNDER_UMBRELLA.getValue()) && !cuMemberTransferService.isBloodKinshipUnderUmbrella(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在血缘伞下"); - } - //安置 - if (specialConfig.equals(ETransferSpecial.PLACE_ALL.getValue()) && !cuMemberTransferService.isPlaceSponsorOnline(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在安置线中"); - } - if (specialConfig.equals(ETransferSpecial.PLACE_ON_UMBRELLA.getValue()) && !cuMemberTransferService.isPlaceSponsorOnUmbrella(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在安置伞上"); - } - if (specialConfig.equals(ETransferSpecial.PLACE_UNDER_UMBRELLA.getValue()) && !cuMemberTransferService.isPlaceSponsorUnderUmbrella(pkMember, toPkMember)) { - return AjaxResult.error("接收方编号不在安置伞下"); - } - } - return AjaxResult.success(); - } - /** * 计算手续费金额 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java index 28296633..ca47de85 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java @@ -2,7 +2,6 @@ package com.hzs.member.account.controller.api; import cn.hutool.core.collection.CollUtil; import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.core.constant.msg.FinanceMsgConstants; @@ -30,9 +29,7 @@ import com.hzs.member.account.vo.CuMemberWithdrawVO; import com.hzs.member.account.vo.CuMemberWithdrawalAddVO; import com.hzs.member.base.service.ICuMemberService; import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.IWithdrawalServiceApi; -import com.hzs.system.config.dto.GradeDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -42,35 +39,24 @@ import java.util.List; /** * 会员提现表 前端控制器 - * - * @author hzs - * @since 2022-09-06 */ @RestController @RequestMapping("/api/withdraw") public class ApiCuMemberWithdrawController extends BaseController { @Autowired - ICuMemberBankService cuMemberBankService; - + private ICuMemberBankService iCuMemberBankService; @Autowired - ICuMemberService cuMemberService; + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberBaseService iCuMemberBaseService; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired + private ICuMemberWithdrawService iCuMemberWithdrawService; @DubboReference - IWithdrawalServiceApi withdrawalServiceApi; - - @Autowired - ICuMemberBaseService baseService; - - @Autowired - ICuMemberAccountService cuMemberAccountService; - - @Autowired - ICuMemberWithdrawService cuMemberWithdrawService; - - - @DubboReference - IGradeServiceApi gradeServiceApi; + IWithdrawalServiceApi iWithdrawalServiceApi; /** * 提现时展示信息 @@ -88,18 +74,18 @@ public class ApiCuMemberWithdrawController extends BaseController { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ENTER_WITHDRAWAL_AMOUNT)); } //提现配置信息 - BdWithdrawal bdWithdrawal = withdrawalServiceApi.queryWithdrawal(pkCountry, pkAccount).getData(); + BdWithdrawal bdWithdrawal = iWithdrawalServiceApi.queryWithdrawal(pkCountry, pkAccount).getData(); if (null == bdWithdrawal) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.CONFIGURE_WITHDRAWAL_INFO)); } - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); - Integer accountValue = baseService.getAccountValueById(pkAccount); + CuMemberAccount cuMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + Integer accountValue = iCuMemberBaseService.getAccountValueById(pkAccount); //余额 BigDecimal balance = ReflectUtils.invokeGetter(cuMemberAccount, MemberFieldConstants.ACCOUNT + accountValue); //可用金额 BigDecimal availableBalance = getAvailableBalance(accountValue, cuMemberAccount); //手续费金额 - BigDecimal serviceChargeAmount = accountValue.equals(EAccount.BONUS.getValue()) ? cuMemberWithdrawService.computeServiceCharge(pkCountry, cashAmount) : BigDecimal.ZERO; + BigDecimal serviceChargeAmount = accountValue.equals(EAccount.BONUS.getValue()) ? iCuMemberWithdrawService.computeServiceCharge(pkCountry, cashAmount) : BigDecimal.ZERO; CuMemberWithdrawalAddVO cuMemberWithdrawalAddVO = CuMemberWithdrawalAddVO.builder() .minAmount(bdWithdrawal.getMinAmount()).maxAmount(bdWithdrawal.getMaxAmount()) @@ -114,90 +100,83 @@ public class ApiCuMemberWithdrawController extends BaseController { * @param cuMemberWithdrawParam 提现入参 * @return AjaxResult */ - @PostMapping("/add") @RepeatSubmitSimple + @PostMapping("/add") public AjaxResult addWithdrawInfo(@RequestBody CuMemberWithdrawParam cuMemberWithdrawParam) { Integer pkCountry = SecurityUtils.getPkCountry(); Long pkMember = SecurityUtils.getUserId(); String memberCode = SecurityUtils.getMemberCode(); - CuMemberExt cuMemberLoginExt = cuMemberService.getMemberByCode(memberCode); + CuMemberExt cuMemberLoginExt = iCuMemberService.getMemberById(pkMember); if (null == cuMemberLoginExt) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.RECHAGER_USER_NOT_EXIST)); + return AjaxResult.error("会员不存在,请核对后再操作!"); } //获取银行卡信息 -// Long pkBank = cuMemberWithdrawParam.getPkBank(); -// CuMemberBankVO memberBank = cuMemberBankService.selectCuMemberBankById(pkBank); -// if (null == memberBank) { -// return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.BIND_BANK_CARD)); -// } + Long pkBank = cuMemberWithdrawParam.getPkBank(); + CuMemberBankVO memberBank = iCuMemberBankService.selectCuMemberBankById(pkBank); + if (null == memberBank) { + return AjaxResult.error("请绑定银行卡"); + } //校验支付密码 String payPwd = cuMemberLoginExt.getPayPwd(); if (StringUtils.isEmpty(payPwd) || !SecurityUtils.matchesPassword(cuMemberWithdrawParam.getPayPwd(), payPwd)) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.PAYMENT_PASSWORD_ERROR)); + return AjaxResult.error("支付密码错误!"); } - //查询提现账户 Integer pkAccount = cuMemberWithdrawParam.getPkAccount(); if (null == pkAccount) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_WITHDRAWAL_ACCOUNT)); + return AjaxResult.error("请选择提现账户"); } - Integer accountsType = baseService.getAccountValueById(pkAccount); + Integer accountsType = iCuMemberBaseService.getAccountValueById(pkAccount); - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { - //结算等级为1 (目前是会员)不允许提现 - GradeDTO gradeDTO = gradeServiceApi.getGradeByGradeValue(EGrade.START_UP.getValue(), pkCountry).getData(); - if (cuMemberLoginExt.getPkSettleGrade().equals(gradeDTO.getPkId())) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.NOT_WITHDRAWAL_UPGRADE)); - } - //校验是否实名 - Boolean existRealName = baseService.isExistRealName(pkMember, pkCountry, EBusinessModule.WITHDRAWAL.getValue()); - if (!existRealName) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.REAL_NAME_NOT_EXIST)); - } + // 校验是否实名 + Boolean existRealName = iCuMemberBaseService.isExistRealName(pkMember, pkCountry, EBusinessModule.WITHDRAWAL.getValue()); + if (!existRealName) { + return AjaxResult.error("请先实名认证"); } + //查询账户信息 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount cuMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); //是否可提现 Integer isWithdraw = cuMemberAccount.getIsWithdraw(); //不允许提现 if (isWithdraw.equals(EYesNo.NO.getIntValue())) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.NOT_ALLOWED_WITHDRAWAL)); + return AjaxResult.error("不允许提现"); } //提现配置信息 - BdWithdrawal bdWithdrawal = withdrawalServiceApi.queryWithdrawal(pkCountry, pkAccount).getData(); + BdWithdrawal bdWithdrawal = iWithdrawalServiceApi.queryWithdrawal(pkCountry, pkAccount).getData(); //提现次数 Integer withdrawalNumber = bdWithdrawal.getWithdrawalNumber(); // 只能发起配置项次数待审核提现 必须通过或者驳回之后才能发起下一笔 - List memberWithdraws = cuMemberWithdrawService.getWithdrawTimes(pkMember); + List memberWithdraws = iCuMemberWithdrawService.getWithdrawTimes(pkMember); if (CollUtil.isNotEmpty(memberWithdraws) && memberWithdraws.size() >= withdrawalNumber) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.EXCEEDING_WITHDRAWALS_NUMBER)); + return AjaxResult.error("超过提现次数"); } //提现金额校验 BigDecimal minAmount = bdWithdrawal.getMinAmount(); BigDecimal maxAmount = bdWithdrawal.getMaxAmount(); if (null == minAmount || null == maxAmount) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.CONFIGURE_WITHDRAWAL_AMOUNT_LIMIT)); + return AjaxResult.error("请配置提现金额限制"); } BigDecimal cashAmount = cuMemberWithdrawParam.getCashAmount(); if (null == cashAmount) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ENTER_WITHDRAWAL_AMOUNT)); + return AjaxResult.error("请输入提现金额"); } //提现金额是否输入整数值 Integer isRounding = bdWithdrawal.getIsRounding(); if (isRounding.equals(EYesNo.YES.getIntValue()) && Boolean.TRUE.equals(!isIntegerValue(cashAmount))) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.ENTER_INTEGER_VALUE)); + return AjaxResult.error("请输入整数值"); } - if (null != cashAmount && cashAmount.compareTo(minAmount) < 0) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_AMOUNT_GREATER_MINIMUM_AMOUNT)); + if (cashAmount.compareTo(minAmount) < 0) { + return AjaxResult.error("提现金额必须大于最低提现金额"); } - if (null != cashAmount && cashAmount.compareTo(maxAmount) > 0) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_AMOUNT_LESS_MAXIMUM_AMOUNT)); + if (cashAmount.compareTo(maxAmount) > 0) { + return AjaxResult.error("提现金额必须小于最高提现金额"); } //校验倍数 - if (pkCountry.equals(CountryConstants.CHINA_COUNTRY) && !remainder(cashAmount)) { - return AjaxResult.error(FinanceMsgConstants.WITHDRAW_AMOUNT_MULTIPLE); + if (!remainder(cashAmount)) { + return AjaxResult.error("提现金额必须为100的整数倍"); } //本次应缴个税 BigDecimal payIncomeTax = BigDecimal.ZERO; @@ -209,42 +188,48 @@ public class ApiCuMemberWithdrawController extends BaseController { //奖金账户余额(兼容奖金账户奖金余额小于可提现金额时) if (accountsType.equals(EAccount.BONUS.getValue())) { //账户余额 - BigDecimal accountBalance = cuMemberWithdrawService.getAccountBalance(accountsType, cuMemberAccount); + BigDecimal accountBalance = iCuMemberWithdrawService.getAccountBalance(accountsType, cuMemberAccount); //可提现余额 BigDecimal balance = getAvailableBalance(accountsType, cuMemberAccount); //余额不足 if (balance.compareTo(cashAmount) < 0 || accountBalance.compareTo(cashAmount) < 0) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.BALANCE_NOT_ENOUGH)); + return AjaxResult.error("余额不足"); } //奖金账户个税、手续费根据配置、其它用户暂不收取 //本次应缴个税 - payIncomeTax = cuMemberWithdrawService.computeIncomeTaxValue(pkMember, cashAmount, pkCountry, minAmount); + payIncomeTax = iCuMemberWithdrawService.computeIncomeTaxValue(pkMember, cashAmount, pkCountry, minAmount); //手续费金额 - serviceChargeAmount = cuMemberWithdrawService.computeServiceCharge(pkCountry, cashAmount); + serviceChargeAmount = iCuMemberWithdrawService.computeServiceCharge(pkCountry, cashAmount); issuedAmount = cashAmount.subtract(payIncomeTax).subtract(serviceChargeAmount); } else { //其它用户的余额 BigDecimal balance = getAvailableBalance(accountsType, cuMemberAccount); //余额不足 if (balance.compareTo(cashAmount) < 0) { - return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.BALANCE_NOT_ENOUGH)); + return AjaxResult.error("余额不足"); } } String code = CommonUtil.createSerialNumber(EOrderPrefix.WITHDRAWAL_CODE.getValue()); //汇率 - CurrencyDTO currencyDTO = baseService.getCurrency(pkCountry); + CurrencyDTO currencyDTO = iCuMemberBaseService.getCurrency(pkCountry); - CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) -// .pkAccount(pkAccount).pkBank(pkBank).remarks(cuMemberWithdrawParam.getRemarks()) - .pkAccount(pkAccount).pkBank(0L).remarks(cuMemberWithdrawParam.getRemarks()) - .pkRate(currencyDTO.getPkId()).cashAmount(cashAmount) - .serviceCharge(serviceChargeAmount).incomeTax(payIncomeTax) - .issuedAmount(issuedAmount).withdrawCode(code).build(); + CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder() + .pkMember(pkMember) + .pkAccount(pkAccount) + .pkBank(pkBank) + .remarks(cuMemberWithdrawParam.getRemarks()) + .pkRate(currencyDTO.getPkId()) + .cashAmount(cashAmount) + .serviceCharge(serviceChargeAmount) + .incomeTax(payIncomeTax) + .issuedAmount(issuedAmount) + .withdrawCode(code) + .build(); cuMemberWithdraw.setApproveState(EApproveStatus.WAIT_SUBMIT.getValue()); cuMemberWithdraw.setDelFlag(EDelFlag.UN_DELETE.getValue()); cuMemberWithdraw.setPkCountry(pkCountry); cuMemberWithdraw.setPkCreator(pkMember); - return toAjax(cuMemberWithdrawService.saveMemberWithdrawInfo(cuMemberWithdraw)); + return toAjax(iCuMemberWithdrawService.saveMemberWithdrawInfo(cuMemberWithdraw)); } @@ -262,7 +247,6 @@ public class ApiCuMemberWithdrawController extends BaseController { return Boolean.FALSE; } - /** * 获取余额 * @@ -281,19 +265,11 @@ public class ApiCuMemberWithdrawController extends BaseController { } } else { //其它配置账户余额 - balance = cuMemberWithdrawService.getAccountBalance(accountsType, cuMemberAccount); + balance = iCuMemberWithdrawService.getAccountBalance(accountsType, cuMemberAccount); } return balance; } - - @PostMapping("/auto") - public AjaxResult autoWithdrawInfo() { - cuMemberWithdrawService.autoWithdraw(); - return AjaxResult.success(); - } - - /** * 是否为整数值 * @@ -320,7 +296,7 @@ public class ApiCuMemberWithdrawController extends BaseController { @GetMapping("/list-detail") public TableDataInfo memberWithdrawDetail() { startPage(); - Object[] objects = cuMemberWithdrawService.selectMemberWithdrawListByPkMember(SecurityUtils.getUserId(), SecurityUtils.getPkCountry()); + Object[] objects = iCuMemberWithdrawService.selectMemberWithdrawListByPkMember(SecurityUtils.getUserId(), SecurityUtils.getPkCountry()); //处理分页 TableDataInfo tableDataInfo = getDataTable((List) objects[0]); tableDataInfo.setRows((List) objects[1]); @@ -329,13 +305,12 @@ public class ApiCuMemberWithdrawController extends BaseController { @GetMapping("/cancel") public AjaxResult cancelMemberWithdrawD(Long pkId) { - CuMemberWithdraw cuMemberWithdraw = cuMemberWithdrawService.getById(pkId); + CuMemberWithdraw cuMemberWithdraw = iCuMemberWithdrawService.getById(pkId); if (cuMemberWithdraw.getApproveState().equals(EApproveStatus.WAIT_SUBMIT.getValue()) && cuMemberWithdraw.getStatus().equals(EWithdrawStatus.NORMAL.getValue())) { - return toAjax(cuMemberWithdrawService.updateWithdrawStatusByPkId(pkId, SecurityUtils.getUserId())); + return toAjax(iCuMemberWithdrawService.updateWithdrawStatusByPkId(pkId, SecurityUtils.getUserId())); } else { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_NOT_CANCEL)); } } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/manage/CuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/manage/CuMemberWithdrawController.java index 918e9f9d..82f05c7c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/manage/CuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/manage/CuMemberWithdrawController.java @@ -35,30 +35,22 @@ import java.util.*; /** * 会员提现表 前端控制器 - * - * @author hzs - * @since 2022-09-06 */ @RestController @RequestMapping("/manager/withdraw") public class CuMemberWithdrawController extends BaseController { - @Autowired private UserTokenService userTokenService; - @Autowired - private ICuMemberBaseService baseService; - + private ICuMemberBaseService iCuMemberBaseService; @Autowired - ICuMemberWithdrawService cuMemberWithdrawService; - + ICuMemberWithdrawService iCuMemberWithdrawService; @Autowired ITransactionCommonService iTransactionCommonService; @DubboReference - IMenuColumnServiceApi menuColumnServiceApi; - + IMenuColumnServiceApi iMenuColumnServiceApi; /** * 发起签呈显示 @@ -72,11 +64,11 @@ public class CuMemberWithdrawController extends BaseController { if (CollUtil.isEmpty(pkIds)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECT_INITIATING_SIGNATURE_RECORD)); } - List cuMemberWithdrawList = cuMemberWithdrawService.checkWithdrawPetitionByState(pkIds, EApproveStatus.WAIT_SUBMIT.getValue()); + List cuMemberWithdrawList = iCuMemberWithdrawService.checkWithdrawPetitionByState(pkIds, EApproveStatus.WAIT_SUBMIT.getValue()); if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.SELECTED_RECORD_DUPLICATE_SIGNATURE_RECORD)); } - return AjaxResult.success(cuMemberWithdrawService.showMemberWithdrawPetition(pkIds, null)); + return AjaxResult.success(iCuMemberWithdrawService.showMemberWithdrawPetition(pkIds, null)); } /** @@ -91,7 +83,7 @@ public class CuMemberWithdrawController extends BaseController { LoginUser loginUser = userTokenService.getLoginUser(); cuMemberPetitionVO.setLoginUser(loginUser); cuMemberPetitionVO.setPkCreat(SecurityUtils.getUserId()); - return AjaxResult.success(cuMemberWithdrawService.confirmWithdrawPetition(cuMemberPetitionVO)); + return AjaxResult.success(iCuMemberWithdrawService.confirmWithdrawPetition(cuMemberPetitionVO)); } @@ -117,7 +109,7 @@ public class CuMemberWithdrawController extends BaseController { } } startPage(); - Object[] objects = cuMemberWithdrawService.selectMemberWithdrawList(cuMemberWithdrawVO); + Object[] objects = iCuMemberWithdrawService.selectMemberWithdrawList(cuMemberWithdrawVO); //处理分页 TableDataInfo tableDataInfo = getDataTable((List) objects[0]); tableDataInfo.setRows((List) objects[1]); @@ -126,7 +118,7 @@ public class CuMemberWithdrawController extends BaseController { /** - * 充值明细列表导出 + * 明细列表导出 * * @param response 入参 * @param cuMemberWithdrawVO 查询入参 @@ -137,18 +129,18 @@ public class CuMemberWithdrawController extends BaseController { Integer pkCountry = SecurityUtils.getPkCountry(); cuMemberWithdrawVO.setPkCountry(pkCountry); cuMemberWithdrawVO.setSystemType(SecurityUtils.getSystemType()); - List cuMemberWithdrawList = (List) cuMemberWithdrawService.selectMemberWithdrawList(cuMemberWithdrawVO)[1]; + List cuMemberWithdrawList = (List) iCuMemberWithdrawService.selectMemberWithdrawList(cuMemberWithdrawVO)[1]; //枚举翻译 Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveStatus.values(), EWithdrawStatus.values()); if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { for (CuMemberWithdrawVO memberWithdraw : cuMemberWithdrawList) { Integer pkAccount = memberWithdraw.getPkAccount(); - memberWithdraw.setPkAccountVal(baseService.getAccountTranslateFromDataBase(pkAccount)); + memberWithdraw.setPkAccountVal(iCuMemberBaseService.getAccountTranslateFromDataBase(pkAccount)); memberWithdraw.setApproveStateVal(transactionMap.get(EnumsPrefixConstants.APPROVE_STATUS + memberWithdraw.getApproveState())); memberWithdraw.setStatusVal(transactionMap.get(EnumsPrefixConstants.ENU_WITHDRAW_STATUS + memberWithdraw.getStatus())); } } - ExcelUtil util = new ExcelUtil<>(CuMemberWithdrawVO.class, menuColumnServiceApi.queryMenuColumn("CashDetails", SecurityUtils.getUserId()).getData()); + ExcelUtil util = new ExcelUtil<>(CuMemberWithdrawVO.class, iMenuColumnServiceApi.queryMenuColumn("CashDetails", SecurityUtils.getUserId()).getData()); util.exportExcel(response, cuMemberWithdrawList, TransactionUtils.getContent(FinanceMsgConstants.WITHDRAWAL_DETAILS_EXPORT)); } @@ -162,7 +154,7 @@ public class CuMemberWithdrawController extends BaseController { @GetMapping("/details") public AjaxResult findWithdrawDetails(Long pkId) { Assert.notNull(pkId, TransactionUtils.getContent(FinanceMsgConstants.SELECT_WITHDRAWAL_RECORD)); - CuMemberWithdrawVO cuMemberRechargeDetailVO = cuMemberWithdrawService.queryCuMemberWithdrawDetail(pkId); + CuMemberWithdrawVO cuMemberRechargeDetailVO = iCuMemberWithdrawService.queryCuMemberWithdrawDetail(pkId); return AjaxResult.success(cuMemberRechargeDetailVO); } @@ -178,7 +170,7 @@ public class CuMemberWithdrawController extends BaseController { public AjaxResult withdrawPayment(@RequestBody CuMemberWithdrawVO memberWithdrawVO) { List pkIds = memberWithdrawVO.getPkIds(); Assert.notNull(pkIds, TransactionUtils.getContent(FinanceMsgConstants.SELECT_PAID_RECORD)); - List withdrawApproveStateByIds = cuMemberWithdrawService.getWithdrawApproveStateByIds(pkIds, EApproveStatus.FINISH.getValue()); + List withdrawApproveStateByIds = iCuMemberWithdrawService.getWithdrawApproveStateByIds(pkIds, EApproveStatus.FINISH.getValue()); if (CollUtil.isNotEmpty(withdrawApproveStateByIds)) { return AjaxResult.error(TransactionUtils.getContent(FinanceMsgConstants.DATA_UNAPPROVED_DATA)); } @@ -188,7 +180,7 @@ public class CuMemberWithdrawController extends BaseController { memberWithdrawVO.setPayer(pkMember); memberWithdrawVO.setPaymentTime(new Date()); memberWithdrawVO.setPkModified(pkMember); - return toAjax(cuMemberWithdrawService.withdrawPaymentByPkId(memberWithdrawVO)); + return toAjax(iCuMemberWithdrawService.withdrawPaymentByPkId(memberWithdrawVO)); } @@ -207,13 +199,13 @@ public class CuMemberWithdrawController extends BaseController { memberWithdrawVO.setPayer(SecurityUtils.getUserId()); memberWithdrawVO.setPayerRemarks(memberWithdrawVO.getPayerRemarks()); memberWithdrawVO.setPaymentTime(new Date()); - return toAjax(cuMemberWithdrawService.withdrawPaymentPositiveByPkId(memberWithdrawVO)); + return toAjax(iCuMemberWithdrawService.withdrawPaymentPositiveByPkId(memberWithdrawVO)); } @Log(module = EOperationModule.WITHDRAWAL_DETAIL, business = EOperationBusiness.WITHDRAWAL_DETAIL, method = EOperationMethod.REJECT) @PostMapping("/reject") public AjaxResult reject(@RequestBody CuMemberWithdrawRejectParam param) { - cuMemberWithdrawService.withdrawReject(param); + iCuMemberWithdrawService.withdrawReject(param); return AjaxResult.success(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/dto/CuMemberWithdrawParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/dto/CuMemberWithdrawParam.java index 4a48ef7c..fa9c2a95 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/dto/CuMemberWithdrawParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/dto/CuMemberWithdrawParam.java @@ -8,13 +8,8 @@ import java.io.Serializable; import java.math.BigDecimal; /** - * @Description: 提现参数类 - * @Author: ljc - * @Time: 2022/9/27 15:32 - * @Classname: CuMemberWithdrawParam - * @Package_name: com.hzs.member.account.param + * 提现参数类 */ - @Data @AllArgsConstructor @NoArgsConstructor diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java index 2319e26a..72fd3e54 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java @@ -45,15 +45,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ Integer updateMemberAccount(CuMemberAccount cuMemberAccount); - - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkCountry(@Param("pkCountry") Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -176,14 +167,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List selectMemberAccountByPkMember(@Param(value = "pkMembers") List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(@Param("memberIdList") List memberIdList); - /** * 根据用户ID查询钱包余额 * @@ -201,33 +184,6 @@ public interface CuMemberAccountMapper extends BaseMapper { */ List queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(@Param("pkCountry") Integer pkCountry, @Param("startPeriod") Integer startPeriod, - @Param("endPeriod") Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(@Param("startPeriod") Integer startPeriod, @Param("endPeriod") Integer endPeriod, @Param("pkCountry") Integer pkCountry); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(@Param("bonusList") List bonusList, - @Param("operateType") int operateType, - @Param("pkModified") Long pkModified); - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberBankMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberBankMapper.java index abc10cb1..01179f2d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberBankMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberBankMapper.java @@ -8,14 +8,10 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员信息-银行卡信息 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface CuMemberBankMapper extends BaseMapper { + /** * 根据会员批量重置银行卡 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java index d85d98d6..99c85eb8 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberTradeMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberTradeExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberTradeMapper extends BaseMapper { @@ -24,13 +18,9 @@ public interface CuMemberTradeMapper extends BaseMapper { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(@Param("pkMember") Long pkMember, @Param("sourceCode") String sourceCode); - /** * 查询列表信息 * @@ -39,14 +29,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ List selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** - * 根据条件查询提现总金额、余额 - * - * @param cuMemberTradeVO 交易明细信息 - * @return CuMemberTradeExt - */ - CuMemberTradeExt selectMemberTradeListCount(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -80,39 +62,6 @@ public interface CuMemberTradeMapper extends BaseMapper { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(@Param("pkMember") Long pkMember, - @Param("sourceCode") String sourceCode, - @Param("tradeClassify") Integer tradeClassify); - - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java index 694a88ea..2b3610ab 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberWithdrawMapper.java @@ -1,6 +1,5 @@ package com.hzs.member.account.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.account.CuMemberWithdraw; import com.hzs.common.domain.member.account.CuMemberWithdrawExt; @@ -10,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员提现表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface CuMemberWithdrawMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java index 50a0cdfd..9ef6b55b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IBusinessCommissionServiceProvider.java @@ -1,6 +1,5 @@ package com.hzs.member.account.provider; - import com.hzs.common.core.domain.R; import com.hzs.member.account.IBusinessCommission; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -12,27 +11,21 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; - /** - * @Description: 办理业务扣费 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 办理业务扣费 */ @Slf4j @DubboService public class IBusinessCommissionServiceProvider implements IBusinessCommission { - @Autowired - ICuMemberTradeService cuMemberTradeService; + private ICuMemberTradeService iCuMemberTradeService; @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 提交扣费失败", tradeType, e); return R.fail("提交扣费失败!"); @@ -43,7 +36,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { Integer tradeType = businessCommissionDTO.getTradeType(); try { - return R.ok(cuMemberTradeService.businessCommissionReject(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); } catch (Exception e) { log.error("业务类型编码为: {} 驳回扣费失败", tradeType, e); return R.fail("驳回扣费失败!"); @@ -52,7 +45,7 @@ public class IBusinessCommissionServiceProvider implements IBusinessCommission { @Override public R> selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(cuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); + return R.ok(iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO)); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java index 4d1568d9..c84f863c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuHandleBusinessServiceProvider.java @@ -2,13 +2,10 @@ package com.hzs.member.account.provider; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.business.SignOnlineInfoVo; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.common.domain.member.empty.CuMemberEmpty; @@ -16,9 +13,6 @@ import com.hzs.common.domain.member.empty.CuMemberEmptyLog; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.service.ICuMemberAchieveLogService; -import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.empty.service.ICuMemberEmptyLogService; import com.hzs.member.empty.service.ICuMemberEmptyService; @@ -27,7 +21,6 @@ import com.hzs.member.handlebusiness.ICuHandleBusinessServiceApi; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; import com.hzs.member.handlebusiness.dto.MemberEmptyDTO; import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; @@ -37,8 +30,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.time.ZoneId; @@ -60,17 +51,11 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic @Autowired private ICuHandleBusinessService handleBusinessService; @Autowired - private ICuMemberService cuMemberService; - @Autowired private IMemberEmptyService iMemberEmptyService; @Autowired private ICuMemberEmptyService iCuMemberEmptyService; @Autowired private ICuMemberEmptyLogService iCuMemberEmptyLogService; - @Autowired - private ICuMemberAchieveLogService iCuMemberAchieveLogService; - @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -78,8 +63,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic IAwardsServiceApi awardsServiceApi; @DubboReference ICountryServiceApi countryServiceApi; - @DubboReference - ISaOrderServiceApi orderServiceApi; /** * 解析业务诉求信息 @@ -413,124 +396,6 @@ public class ICuHandleBusinessServiceProvider implements ICuHandleBusinessServic } } - - /** - * @description: 特殊业务处理 - * @author: zhang jing - * @date: 2023/5/16 20:06 - * @param: [resultDTO] - * @return: com.hzs.common.core.domain.R - **/ - @Override - @Transactional(rollbackFor = Exception.class) - public String auditProcess(ApprovalBusinessResultDTO resultDTO) { - try { - // 查询订单修改记录 - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberServiceLog::getBusinessNo, resultDTO.getBusinessCode()); - List cuMemberServiceLogList = iCuMemberServiceLogService.list(queryWrapper); - //校验注水业绩 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - // TODO 注水业绩在这拦住了 其他的校验 - LambdaQueryWrapper queryWrapper1 = new LambdaQueryWrapper<>(); - queryWrapper1.eq(CuMemberAchieveLog::getBusinessNo, resultDTO.getBusinessCode()); - queryWrapper1.eq(CuMemberAchieveLog::getApproveStatus, EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = iCuMemberAchieveLogService.list(queryWrapper1); - if (CollectionUtils.isEmpty(cuMemberServiceLogList) && CollectionUtils.isEmpty(malList)) { - log.info("特殊业务:签呈不存在"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_ABSENT_ERROR); - } - } - - if (!CollectionUtils.isEmpty(cuMemberServiceLogList)) { - CuMemberServiceLog cuMemberServiceLog = cuMemberServiceLogList.get(0); - if (EApproveStatus.ALREADY_SUBMIT.getValue() != cuMemberServiceLog.getApproveStatus()) { - log.info("特殊业务:签呈已审核"); - return TransactionUtils.getContent(ConfigMsgConstants.PETITION_AUDITED_ERROR); - } - } - //修改会员编号 - if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CHANGE_MEMBER_CODE.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateCodeByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateCodeReject(resultDTO); - return null; - } - //注水业绩 - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.MEMBER_ACHIEVE.getValue()) { - cuMemberAchieveLogService.toExamine(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue()) { - //修改政策币 - cuMemberService.upPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.DEL_POLICY_CURRENCY_YES_NO.getValue()) { - //删除政策币 - cuMemberService.delPolicyCurrencyProcess(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.ZERO_ELEMENT_REVOKE.getValue()) { - //零元撤单 - cuMemberService.zeroByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.UPDATE_SETTLE_COUNTRY.getValue()) { - //审核通过 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateSettleCountryAdopt(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - cuMemberService.updateSettleCountryReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.EMPTY_ORDER.getValue()) { - // 审核通过 空单注册 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - orderServiceApi.regEmptyOrderApproved(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - orderServiceApi.regEmptyOrderReject(resultDTO); - return null; - } - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_SAVE.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_MODIFY.getValue() || - resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.AWARDS_CONTROL_DELETE.getValue() - ) { - cuMemberService.awardsControlPetition(resultDTO); - return null; - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PARENT.getValue()) { - // 修改直推 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - cuMemberService.updateParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updateParentByBusinessNoReject(resultDTO); - return null; - } - - } else if (resultDTO.getEApprovalBusiness().getValue() == EApprovalBusiness.CU_MEMBER_PLACE_PARENT.getValue()) { - // 修改安置 - if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - // 通过 - cuMemberService.updatePlaceParentByBusinessNo(resultDTO); - return null; - } else if (resultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - // 驳回 - cuMemberService.updatePlaceParentByBusinessNoReject(resultDTO); - return null; - } - } - } catch (Exception e) { - //异常时,审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", resultDTO.getEApprovalBusiness().getValue(), e); - return TransactionUtils.getContent(ConfigMsgConstants.MEMBER_UPDATE_CODE_ERROR); - } - return null; - } - /** * 处理空单注册数据 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java index e7bbdc46..6fce4d3d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/ICuMemberTradeServiceProvider.java @@ -1,7 +1,6 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.member.account.ICuMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.service.ICuMemberTradeService; @@ -10,11 +9,7 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @description: 会员交易明细 Doubbo服务 - * @author: zhang jing - * @date: 2023/7/28 11:53 - * @param: - * @return: + * 会员交易明细 Doubbo服务 **/ @Slf4j @DubboService @@ -23,25 +18,11 @@ public class ICuMemberTradeServiceProvider implements ICuMemberTradeServiceApi { @Autowired private ICuMemberTradeService iCuMemberTradeService; - /** - * @description: 业务办理扣费提交 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } - /** - * @description: 业务办理扣费驳回 - * @author: zhang jing - * @date: 2023/7/28 14:38 - * @param: [businessCommissionDTO, eApproveStatus] - * @return: com.hzs.common.core.domain.R - **/ @Override public R businessCommissionReject(BusinessCommissionDTO businessCommissionDTO) { return R.ok(iCuMemberTradeService.businessCommissionReject(businessCommissionDTO)); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java index 0b006696..fc327d3b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberAccountAuditServiceProvider.java @@ -21,37 +21,24 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** - * @Description: 会员钱包审核Doubbo服务 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 会员钱包审核Doubbo服务 */ @Slf4j @DubboService public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditServiceApi { - @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ICuMemberWithdrawService cuMemberWithdrawService; - + private ICuMemberWithdrawService cuMemberWithdrawService; @Autowired - ICuMemberTradeService cuMemberTradeService; - + private ICuMemberTradeService cuMemberTradeService; @Autowired - ICuMemberBaseService cuMemberBaseService; - + private ICuMemberAccountLogService cuMemberAccountLogService; @Autowired - ICuMemberAccountLogService cuMemberAccountLogService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberAccountService cuMemberAccountService; - - @Autowired - ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; + private ICuMemberBusinessLicenseService cuMemberBusinessLicenseService; @Override public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -96,7 +83,7 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe return R.fail("审核记录不存在!"); } return R.ok(businessLicenseApprove(approvalBusinessResultDTO)); - }else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { + } else if (module == EApprovalBusiness.BUSINESS_LICENSE_RESETTING.getValue()) { //重置营业执照审批 CuMemberBusinessLicense cuMemberBusinessLicense = cuMemberBusinessLicenseService.selectLicenseByBusinessNo(businessCode); if (null == cuMemberBusinessLicense) { @@ -146,11 +133,6 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe } } - //驳回 - if (approveOperation == (EApproveOperation.REJECT.getValue())) { - // 根据后需求,是否重新发起 - // cuMemberRechargeService.updateDelFlagByRechargeCode(businessCode); - } } /** @@ -211,18 +193,14 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(eApproveStatus.getValue()==EApproveStatus.REJECTED.getValue()){ + if (eApproveStatus.getValue() == EApproveStatus.REJECTED.getValue()) { cuMemberBusinessLicense.setRejectMsg(""); } return cuMemberBusinessLicenseService.updateLicenseByBusinessNo(cuMemberBusinessLicense); } /** - * @description: 重置营业执照 - * @author: zhang jing - * @date: 2023/11/20 13:43 - * @param: [approvalBusinessResultDTO] - * @return: java.lang.Integer + * 重置营业执照 **/ private Integer resetBusinessLicenseApprove(ApprovalBusinessResultDTO approvalBusinessResultDTO) { LoginUser loginUser = approvalBusinessResultDTO.getLoginUser(); @@ -232,12 +210,11 @@ public class IMemberAccountAuditServiceProvider implements IMemberAccountAuditSe .pkModified(loginUser.getUserId()) .approveTime(approvalBusinessResultDTO.getOperationTime()) .build(); - if(approvalBusinessResultDTO.getApproveOperation()==EApproveOperation.AGREE.getValue()){ + if (approvalBusinessResultDTO.getApproveOperation() == EApproveOperation.AGREE.getValue()) { return cuMemberBusinessLicenseService.deleteLicense(cuMemberBusinessLicense); - }else{ + } else { return cuMemberBusinessLicenseService.rejectResetLicense(cuMemberBusinessLicense); } - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java index 9d6ed75e..46563624 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java @@ -1,41 +1,22 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.account.CuMemberRecharge; import com.hzs.member.account.IMemberJobServiceApi; import com.hzs.member.account.service.ICuMemberAccountDetailService; -import com.hzs.member.account.service.ICuMemberRechargeService; -import com.hzs.member.account.service.ICuMemberWithdrawService; import com.hzs.member.base.mapper.DeleteGarbageDataMapper; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; - /** * 会员模块定时任务服务提供 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/12 10:40 - * @Classname: IMemberJobServiceProvider - * @Package_name: com.hzs.member.account.provider */ - @Slf4j @DubboService public class IMemberJobServiceProvider implements IMemberJobServiceApi { @Autowired private ICuMemberAccountDetailService memberAccountDetailService; - - @Autowired - private ICuMemberWithdrawService memberWithdrawService; - - @Autowired - private ICuMemberRechargeService memberRechargeService; - @Autowired private DeleteGarbageDataMapper deleteGarbageDataMapper; @@ -51,24 +32,6 @@ public class IMemberJobServiceProvider implements IMemberJobServiceApi { return R.ok(); } - - @Override - public R automaticWithdrawal() { - try { - memberWithdrawService.autoWithdraw(); - } catch (Exception e) { - log.info("自动提现报错:", e); - return R.fail(e.getMessage()); - } - return R.ok(); - } - - - @Override - public R selectRechargeTotalAmount(Date startDate, Date endDate) { - return R.ok(memberRechargeService.selectRechargeTotalAmount(startDate, endDate)); - } - @Override public R autoDeleteGarbageData() { deleteGarbageDataMapper.deleteMemberAwards(30); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java index 6b231756..a7fe1ec9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberTradeServiceProvider.java @@ -4,7 +4,6 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.core.enums.EApproveRechargeStatus; import com.hzs.common.domain.member.account.CuMemberRecharge; -import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.MemberBalanceDTO; @@ -17,50 +16,30 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; -/** - * @Description: - * @Author: ljc - * @Time: 2023/3/8 18:28 - * @Classname: IMemberTradeServiceProvider - * @Package_name: com.hzs.member.account.provider - */ @Slf4j @DubboService public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { @Autowired - ICuMemberTradeService memberTradeService; - + private ICuMemberTradeService iCuMemberTradeService; @Autowired - ICuMemberRechargeService memberRechargeService; - - @Override - public R saveMemberOnlineTradeAndAccount(String rechargeCode) { - try { - return R.ok(memberTradeService.saveMemberTradeAndAccountByRechargeCode(rechargeCode)); - } catch (Exception e) { - log.error("在线充值插入交易流水失败,充值单号:{} ", rechargeCode, e); - return R.fail("提交扣费失败!"); - } - - } + private ICuMemberRechargeService iCuMemberRechargeService; @Override public R updateOnlineRechargeByRechargeCode(String rechargeCode, EApproveOperation eApproveOperation, Long pkMember) { try { - return R.ok(memberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); + return R.ok(iCuMemberRechargeService.updateOnlineRechargeByRechargeCode(rechargeCode, eApproveOperation, pkMember)); } catch (Exception e) { log.error("更新充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("充值回调处理异常:" + e.getMessage()); } } - @Override public R selectMemberRechargeByCodeAndPkMember(String rechargeCode, Long pkMember) { try { CuMemberRechargeVO memberRechargeVO = CuMemberRechargeVO.builder().rechargeCode(rechargeCode).pkMember(pkMember).build(); - CuMemberRecharge cuMemberRecharge = memberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); + CuMemberRecharge cuMemberRecharge = iCuMemberRechargeService.selectMemberRechargeByCodeAndPkMember(memberRechargeVO); if (null == cuMemberRecharge) { return R.fail("充值信息不存在!"); } @@ -76,34 +55,16 @@ public class IMemberTradeServiceProvider implements IMemberTradeServiceApi { log.error("查询预充值信息失败,充值单号:{} ", rechargeCode, e); return R.fail("查询预充值信息失败!"); } - } - /** - * 查询余额不足的用户信息 - * - * @param businessCommissionDTO 业务参数 - * @return List - */ @Override public List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO) { - return memberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); + return iCuMemberTradeService.selectBalanceNotEnoughMember(businessCommissionDTO); } - /** - * 业务办理扣费提交 - * - * @param businessCommissionDTO 业务办理入参 - * @return Integer - */ @Override public R businessCommissionSubmit(BusinessCommissionDTO businessCommissionDTO) { - return R.ok(memberTradeService.businessCommissionSubmit(businessCommissionDTO)); - } - - @Override - public R> querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return R.ok(memberTradeService.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify)); + return R.ok(iCuMemberTradeService.businessCommissionSubmit(businessCommissionDTO)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java index 0a9bf9f1..5eb9f888 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberAccountServiceProvider.java @@ -14,43 +14,23 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; import java.util.List; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/5 14:32 - * @Classname: MemberAccountServiceProvider - * @PackageName: com.hzs.member.account.provider - */ @Slf4j @DubboService public class MemberAccountServiceProvider implements IMemberAccountServiceApi { @Autowired - private ICuMemberAccountService cuMemberAccountService; + private ICuMemberAccountService iCuMemberAccountService; @Autowired private ICuMemberBusinessService iCuMemberBusinessService; @Override public R> queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { - return R.ok(cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); + return R.ok(iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount)); } @Override public R> queryCuMemberAccountByPkMembers(List pkMemberList) { - return R.ok(cuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); - } - - @Override - public R orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - try { - String str = iCuMemberBusinessService.orderChangeProductPre(saOrder, updateOrder); - if (null == str) { - return R.ok(); - } - return R.fail(str); - } catch (Exception e) { - return R.fail(e.getMessage()); - } + return R.ok(iCuMemberAccountService.queryCuMemberAccountByPkMembers(pkMemberList)); } @Override @@ -63,16 +43,6 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - try { - iCuMemberBusinessService.orderReturn(saOrder, userId, changeAmount, changeRemark); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - @Override public R orderReturnMember(List pkMemberList, Long userId) { try { @@ -96,14 +66,4 @@ public class MemberAccountServiceProvider implements IMemberAccountServiceApi { return R.ok(); } - @Override - public R insertMemberTrade(SaOrder saOrder, CuMemberAccountExt cuMemberAccount) { - try { - iCuMemberBusinessService.insertMemberTrade(saOrder, cuMemberAccount); - } catch (Exception e) { - return R.fail(e.getMessage()); - } - return R.ok(); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java index 76a14281..4789c8d7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/MemberBankServiceProvider.java @@ -9,21 +9,17 @@ import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; /** - * @Description: 银行卡 Doubbo服务 - * @Author: ljc - * @Time: 2022/11/11 16:31 - * @Classname: MemberBankServiceProvider - * @Package_name: com.hzs.member.account.provider + * 银行卡 Doubbo服务 */ @Slf4j @DubboService public class MemberBankServiceProvider implements IMemberBankServiceApi { @Autowired - ICuMemberBankService cuMemberBankService; + private ICuMemberBankService iCuMemberBankService; @Override public R addBankInfo(CuMemberBankParam cuMemberBankParam) { - return R.ok(cuMemberBankService.saveMemberBank(cuMemberBankParam)); + return R.ok(iCuMemberBankService.saveMemberBank(cuMemberBankParam)); } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java index e869194c..60d51718 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java @@ -24,7 +24,6 @@ public interface ICuMemberAccountService extends IService { */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); - /** * 根据会员编码获取余额 * @@ -34,7 +33,6 @@ public interface ICuMemberAccountService extends IService { */ BigDecimal selectBalanceByMemberCode(Long pkMember, Integer accountType); - /** * 更新用户余额 * @@ -92,14 +90,6 @@ public interface ICuMemberAccountService extends IService { */ List selectAccountDetail(Long pkMember, Integer pkCountry); - /** - * 根据国家查询余额与银行卡信息 - * - * @param pkCountry 国家ID - * @return List - */ - List queryMemberAccountByPkcountry(Integer pkCountry); - /** * 根据用户编号查询账户余额 (行转列) * @@ -229,14 +219,6 @@ public interface ICuMemberAccountService extends IService { */ List selectMemberAccountByPkMember(List pkMembers); - /** - * 查询会员账户以及会员信息 - * - * @param memberIdList 会员ID列表 - * @return - */ - List queryAccountAndMemberInfo(List memberIdList); - /** * 根据会员姓名与会员编号查询账户信息 * @@ -248,20 +230,6 @@ public interface ICuMemberAccountService extends IService { List selectFrozenAmountExport(CuMemberAccountVO cuMemberAccountVO); - /** - * 奖金发放,根据期间发放奖金,更新奖金余额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountGrantByPeriod(Integer pkCountry, Integer startPeriod, Integer endPeriod); - - /** - * 奖金可提现,根据期间更新可提现金额,减少可消费金额 - * - * @param startPeriod 期间 - */ - void updateMemberAccountWithdrawalByPeriod(Integer startPeriod, Integer endPeriod, Integer pkCountry); - /** * 根据用户ID查询账户余额信息 * @@ -271,18 +239,6 @@ public interface ICuMemberAccountService extends IService { */ CuMemberRechargeAccountParam findMemberBalanceById(Integer pkAccount, Long pkMember); - - /** - * 批量更新奖金账号 - * - * @param bonusList 奖金账号参数 - * @param operateType 操作类型 - * @param operateType 修改人 - * @return Boolean - */ - Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified); - - /** * 根据来源单号查询奖金账号信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java index 2b957eb8..d951c0db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberRechargeService.java @@ -1,6 +1,5 @@ package com.hzs.member.account.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.core.enums.EApproveOperation; import com.hzs.common.domain.member.account.CuMemberAccountRechargeExt; @@ -14,21 +13,14 @@ import com.hzs.member.account.vo.CuMemberRechargeDetailVO; import com.hzs.member.account.vo.CuMemberRechargeVO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** - *

* 会员充值表 服务类 - *

- * - * @author hzs - * @since 2022-09-08 */ public interface ICuMemberRechargeService extends IService { - /** * 根据批次查询充值信息 * @@ -37,7 +29,6 @@ public interface ICuMemberRechargeService extends IService { */ List selectRechargeByBatch(String batch); - /** * 会员批量充值 * @@ -46,7 +37,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer saveBatchMemberRecharge(CuMemberBatchRechargeParam batchRechargeParam); - /** * 根据充值单号更新审核状态信息 * @@ -63,7 +53,6 @@ public interface ICuMemberRechargeService extends IService { */ Integer submitAuditMemberRecharge(MemberAccountAudit memberAccountAudit); - /** * 审核通过后插入交易明细和用户余额表 * @@ -107,7 +96,6 @@ public interface ICuMemberRechargeService extends IService { */ Boolean preCharge(String rechargeAmount, Integer pkCountry, Long pkMember, String rechargeCode, Long pkCreator); - /** * 会员端在线支付更新审批状态 * @@ -126,7 +114,6 @@ public interface ICuMemberRechargeService extends IService { */ CuMemberRecharge getCuMemberRechargeByRechargeCode(String rechargeCode); - /** * 根据充值单号与用户ID查询充值信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java index 768419e9..185613c2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTradeService.java @@ -13,12 +13,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员交易明细 服务类 - *

- * - * @author hzs - * @since 2022-09-06 */ public interface ICuMemberTradeService extends IService { @@ -27,13 +22,9 @@ public interface ICuMemberTradeService extends IService { * * @param pkMember 会员主键 * @param sourceCode 订单编号 - * @return: List - * @Author: sui q - * @Date: 2022/10/22 21:26 */ List queryCuMemberTrade(Long pkMember, String sourceCode); - /** * 查询列表信息 * @@ -42,7 +33,6 @@ public interface ICuMemberTradeService extends IService { */ Object[] selectMemberTradeList(CuMemberTradeVO cuMemberTradeVO); - /** * 批量插入流水信息 * @@ -51,7 +41,6 @@ public interface ICuMemberTradeService extends IService { */ Integer batchSaveTradeByMemberCode(@Param("cuMemberTrades") List cuMemberTrades); - /** * 查询钱包明细详情信息 * @@ -93,24 +82,14 @@ public interface ICuMemberTradeService extends IService { List selectBalanceNotEnoughMember(BusinessCommissionDTO businessCommissionDTO); /** - * @description: 办理业务专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/10 15:19 - * @param: [mbbList] - * @return: java.util.List + * 办理业务专用查询会员余额 **/ - List selectBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); + List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); + /** - * @description: 特殊业务业务办理专用查询会员余额 - * @author: zhang jing - * @date: 2023/11/14 11:10 - * @param: [mbbList, pkCountry] - * @return: java.util.List + * 特殊业务业务办理专用查询会员余额 **/ - List selectSpecialBusinessBalanceNotEnoughMember(List mbbList,Integer pkCountry); - - - + List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry); /** * 查询钱包明细(前端) @@ -120,7 +99,6 @@ public interface ICuMemberTradeService extends IService { */ List selectWattleDetail(CuMemberTradeVO cuMemberTradeVO); - /** * 根据 来源编号更新交易编号 * @@ -129,16 +107,6 @@ public interface ICuMemberTradeService extends IService { */ Integer updateSourceCodeByTradeCode(CuMemberTradeVO cuMemberTradeVO); - /** - * 查询会员订单产生的最新交易明细 - * - * @param pkMember 会员 - * @param sourceCode 来源单号 - * @param tradeClassify 交易分类 -- 非必传 - * @return - */ - List querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify); - /** * 根据充值单号插入交易流水、余额表 * @@ -147,27 +115,6 @@ public interface ICuMemberTradeService extends IService { */ Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode); - - /** - * 批量获取cuMemberBonus主键 - * - * @param rowNum 数量 - * @return: List - * @Author: sui q - * @Date: 2022/12/13 13:47 - */ - List batchQueryCuMemberTradeSeq(Integer rowNum); - - /** - * 批量插入会员交易流水,用于奖金发放插入流水 - * - * @param cuMemberTradeList 交易流水 - * @return: void - * @Author: sui q - * @Date: 2023/3/21 11:45 - */ - void batchInsertCuMemberTrade(@Param("cuMemberTradeList") List cuMemberTradeList); - /** * 根据来源单号查询会员奖金币种的流水信息 * @@ -176,7 +123,6 @@ public interface ICuMemberTradeService extends IService { */ List selectMemberTradeBySourceCode(String sourceCode); - /** * 查询用户交易类型 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java index d22d408e..844c3565 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberTransferService.java @@ -38,33 +38,6 @@ public interface ICuMemberTransferService extends IService { */ Boolean isBloodKinshipUnderUmbrella(Long pkMember, Long toPkMember); - /** - * 查找安置人线上 - * - * @param pkMember 转出方ID - * @param toPkMember 转入方ID - * @return Boolean - */ - Boolean isPlaceSponsorOnline(Long pkMember, Long toPkMember); - - /** - * 查找安置人伞上 - * - * @param pkMember 转出方ID - * @param toPkMember 转入方ID - * @return Boolean - */ - Boolean isPlaceSponsorOnUmbrella(Long pkMember, Long toPkMember); - - /** - * 查找安置人伞下 - * - * @param pkMember 转出方ID - * @param toPkMember 转入方ID - * @return Boolean - */ - Boolean isPlaceSponsorUnderUmbrella(Long pkMember, Long toPkMember); - /** * 获取转账配置 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java index f1cabfab..6e5b6219 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberWithdrawService.java @@ -25,14 +25,6 @@ public interface ICuMemberWithdrawService extends IService { */ List getWithdrawTimes(Long pkMember); - /** - * 根据申请单号查询提现信息 - * - * @param code 单号 - * @return CuMemberWithdraw - */ - CuMemberWithdraw selectWithdrawByCode(String code); - /** * 根据批次号查询审核记录 * @@ -90,15 +82,6 @@ public interface ICuMemberWithdrawService extends IService { */ Integer withdrawPaymentPositiveByPkId(CuMemberWithdrawVO memberWithdrawVO); - /** - * 获取余额 - * - * @param pkMember 用户ID - * @param pkCountry 国家ID - * @return BigDecimal - */ - BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType); - /** * 计算本次提现应该交的个税 * @@ -128,11 +111,6 @@ public interface ICuMemberWithdrawService extends IService { */ BigDecimal computeRounding(BdWithdrawal bdWithdrawal, BigDecimal cashAmount); - /** - * 自动提现 - */ - void autoWithdraw(); - /** * 获取账户余额 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java index 48d27424..80c7ba89 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java @@ -324,11 +324,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryMemberAccountByPkcountry(Integer pkCountry) { - return baseMapper.queryMemberAccountByPkCountry(pkCountry); - } - @Override public List queryMemberAccountByMemberCode(String memberCode, List accountTypes, Integer pkCountry) { List pkAccounts = new ArrayList<>(); @@ -610,12 +605,6 @@ public class CuMemberAccountServiceImpl extends ServiceImpl queryAccountAndMemberInfo(List memberIdList) { - return baseMapper.queryAccountAndMemberInfo(memberIdList); - } - @Override public Object[] queryMemberAccountByMemberCodeAndName(CuMemberAccountVO cuMemberAccountVO) { CuMemberAccountExtVO cuMemberAccountExtVO; @@ -784,28 +773,12 @@ public class CuMemberAccountServiceImpl extends ServiceImpl cuMemberRechargeAccountParams = baseMapper.queryMemberAccountByMemberCode(null, Collections.singletonList(pkAccount), pkMember); return CollUtil.isNotEmpty(cuMemberRechargeAccountParams) ? cuMemberRechargeAccountParams.get(0) : null; } - - @Override - public Boolean batchUpdateBonusAccountByPkMember(List bonusList, int operateType, Long pkModified) { - return baseMapper.batchUpdateBonusAccountByPkMember(bonusList, operateType, pkModified); - } - @Override public List selectMemberBonusAccountBySourceCode(String sourceCode) { return baseMapper.selectMemberBonusAccountBySourceCode(sourceCode); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBankServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBankServiceImpl.java index b7ffdf00..31005f01 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBankServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberBankServiceImpl.java @@ -1,8 +1,8 @@ package com.hzs.member.account.service.impl; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EBankCardStatus; import com.hzs.common.core.enums.EDefault; @@ -20,56 +20,44 @@ import java.util.Date; import java.util.List; /** - *

* 会员信息-银行卡信息 服务实现类 - *

- * - * @author hzs - * @since 2022-08-31 */ @Service public class CuMemberBankServiceImpl extends ServiceImpl implements ICuMemberBankService { - @Override public CuMemberBankVO selectCuMemberBankById(Long pkId) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_ID", pkId); - queryWrapper.eq("DEFAULT_CARD", EDefault.YES.getValue()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberBank::getPkId, pkId); + queryWrapper.eq(CuMemberBank::getDefaultCard, EDefault.YES.getValue()); CuMemberBank cuMemberBank = this.getOne(queryWrapper); return cuMemberBank == null ? null : BeanUtil.copyProperties(cuMemberBank, CuMemberBankVO.class); } - @Override public CuMemberBankVO isBindBank(Long pkMember, Integer pkCountry) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_COUNTRY", pkCountry); - queryWrapper.eq("PK_MEMBER", pkMember); - queryWrapper.eq("DEFAULT_CARD", EDefault.YES.getValue()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberBank::getPkCountry, pkCountry); + queryWrapper.eq(CuMemberBank::getPkMember, pkMember); + queryWrapper.eq(CuMemberBank::getDefaultCard, EDefault.YES.getValue()); return BeanUtil.copyProperties(this.getOne(queryWrapper), CuMemberBankVO.class); } - @Override public Boolean unbindBank(Long pkId, Long pkMember) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()) - .set("MODIFIED_TIME", new Date()) - .set("PK_MODIFIED", pkMember) - .eq("PK_ID", pkId); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(CuMemberBank::getDelFlag, EDelFlag.DELETE.getValue()) + .set(CuMemberBank::getModifiedTime, new Date()) + .set(CuMemberBank::getPkModified, pkMember) + .eq(CuMemberBank::getPkId, pkId); return update(updateWrapper); } @Override public Integer saveMemberBank(CuMemberBankParam cuMemberBankParam) { - CuMemberBank cuMemberBank = new CuMemberBank(); - BeanUtil.copyProperties(cuMemberBankParam, cuMemberBank); - //是否绑定银行卡 - Long pkMember = cuMemberBankParam.getPkMember(); - Integer pkCountry = cuMemberBankParam.getPkCountry(); - CuMemberBankVO bindCard = isBindBank(pkMember, pkCountry); + CuMemberBankVO bindCard = isBindBank(cuMemberBankParam.getPkMember(), cuMemberBankParam.getPkCountry()); int isDefault = null != bindCard.getDefaultCard() ? EBankCardStatus.NO.getValue() : EBankCardStatus.YES.getValue(); + CuMemberBank cuMemberBank = BeanUtil.copyProperties(cuMemberBankParam, CuMemberBank.class); cuMemberBank.setDefaultCard(isDefault); cuMemberBank.setPkCreator(cuMemberBankParam.getPkMember()); return baseMapper.insert(cuMemberBank); @@ -83,26 +71,16 @@ public class CuMemberBankServiceImpl extends ServiceImpl updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("DEFAULT_CARD", EBankCardStatus.YES.getValue()).eq("PK_ID", pkId); - return update(updateWrapper); - } + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.set(CuMemberBank::getDefaultCard, EBankCardStatus.NO.getValue()) + .eq(CuMemberBank::getDefaultCard, EBankCardStatus.YES.getValue()) + .eq(CuMemberBank::getPkMember, pkMember) + .eq(CuMemberBank::getPkCountry, pkCountry); - /** - * 绑定的银行卡更新为非默认 - * - * @param pkMember 会员ID - * @param pkCountry 国家ID - * @return Boolean - */ - public Boolean updateMemberBankCardToDefault(Long pkMember, Integer pkCountry) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.set("DEFAULT_CARD", EBankCardStatus.NO.getValue()) - .eq("DEFAULT_CARD", EBankCardStatus.YES.getValue()) - .eq("PK_MEMBER", pkMember) - .eq("PK_COUNTRY", pkCountry); - return update(updateWrapper); + LambdaUpdateWrapper newUpdateWrapper = new LambdaUpdateWrapper<>(); + newUpdateWrapper.set(CuMemberBank::getDefaultCard, EBankCardStatus.YES.getValue()) + .eq(CuMemberBank::getPkId, pkId); + return update(newUpdateWrapper); } @Override diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java index 0b9d5b7a..8b1b5057 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTradeServiceImpl.java @@ -26,7 +26,6 @@ import com.hzs.member.account.service.ICuMemberRechargeService; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.account.vo.CuMemberTradeDetailVO; import com.hzs.member.account.vo.CuMemberTradeVO; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.system.base.dto.CurrencyDTO; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -40,33 +39,19 @@ import java.util.function.Function; import java.util.stream.Collectors; /** - *

* 会员交易明细 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service public class CuMemberTradeServiceImpl extends ServiceImpl implements ICuMemberTradeService { @Autowired - ICuMemberBaseService cuMemberBaseService; + private ICuMemberBaseService cuMemberBaseService; @Autowired - ICuMemberAccountService cuMemberAccountService; - + private ICuMemberAccountService cuMemberAccountService; @Autowired - ICuMemberRechargeService cuMemberRechargeService; - + private ICuMemberRechargeService cuMemberRechargeService; @Autowired - ITransactionCommonService iTransactionCommonService; - - private CuMemberBonusSettle cuMemberBonusSettle; - - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private ITransactionCommonService iTransactionCommonService; @Override public List queryCuMemberTrade(Long pkMember, String sourceCode) { @@ -174,7 +159,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl) objects[1],accountValue, isWithdraw); + return cuMemberAccountService.batchUpdateMemberAccountByPkmember((List) objects[1], accountValue, isWithdraw); } else { return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry((List) objects[1], null); } - - } } return true; @@ -264,7 +246,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl memberAmountDTOList = memberAmountMap.entrySet().stream().map(a -> a.getValue()).collect(Collectors.toList()); + List memberAmountDTOList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); //更新余额 return cuMemberAccountService.batchUpdateMemberAccountByPkMemberCountry(memberAmountDTOList, isWithdraw); } @@ -294,13 +276,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -317,11 +292,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl> maDto : memberAmountMap.entrySet()) { - Integer flag = 0; + int flag = 0; BigDecimal availableBalance; Integer businessType = 0; //中国 - if (pkCountry == CountryConstants.CHINA_COUNTRY) { + if (pkCountry.equals(CountryConstants.CHINA_COUNTRY)) { //会员下的业务 ff3: for (int i = 0; i < maDto.getValue().size(); i++) { @@ -424,21 +399,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl - **/ @Override public List selectSpecialBusinessBalanceNotEnoughMember(List mbbList, Integer pkCountry) { // 根据国家查询固定币种 @@ -652,7 +617,7 @@ public class CuMemberTradeServiceImpl extends ServiceImpl a.getValue()).collect(Collectors.toList()); + memberAmountList = memberAmountMap.entrySet().stream().map(Map.Entry::getValue).collect(Collectors.toList()); } } return new Object[]{cuMemberTradeLsit, memberAmountList}; @@ -689,7 +654,6 @@ public class CuMemberTradeServiceImpl extends ServiceImpl querySourceCodeLastTrade(Long pkMember, String sourceCode, Integer tradeClassify) { - return baseMapper.querySourceCodeLastTrade(pkMember, sourceCode, tradeClassify); - } - - @Override @Transactional(rollbackFor = Exception.class) public Integer saveMemberTradeAndAccountByRechargeCode(String rechargeCode) { @@ -796,25 +751,11 @@ public class CuMemberTradeServiceImpl extends ServiceImpl batchQueryCuMemberTradeSeq(Integer rowNum) { - return baseMapper.batchQueryCuMemberTradeSeq(rowNum); - } - - @Override - public void batchInsertCuMemberTrade(List cuMemberTradeList) { - List> cutList = cuMemberBonusSettle.handleCutList(cuMemberTradeList); - cutList.forEach(memberTradeList -> - baseMapper.batchInsertCuMemberTrade(memberTradeList)); - } - - @Override public List selectMemberTradeBySourceCode(String sourceCode) { return baseMapper.selectMemberTradeBySourceCode(sourceCode); } - @Override public List selectTradeType(Long pkMember, Integer pkCountry) { return baseMapper.selectTradeType(pkMember, pkCountry); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java index 674758c1..8bd8f3c6 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberTransferServiceImpl.java @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.msg.FinanceMsgConstants; import com.hzs.common.core.enums.*; +import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.utils.CommonUtil; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberTrade; @@ -80,35 +81,19 @@ public class CuMemberTransferServiceImpl extends ServiceImpl memberPlaceOn = iCuMemberService.queryPlaceSponsorOnUmbrella(pkMember); - Optional onPlaceOptional = memberPlaceOn.stream().filter(placeOn -> toPkMember.equals(placeOn.getPkId())).findFirst(); - return onPlaceOptional.isPresent(); - } - - @Override - public Boolean isPlaceSponsorUnderUmbrella(Long pkMember, Long toPkMember) { - List memberPlaceUnder = iCuMemberService.queryPlaceSponsorUnderUmbrella(pkMember); - Optional underPlaceOptional = memberPlaceUnder.stream().filter(placeUnder -> toPkMember.equals(placeUnder.getPkId())).findFirst(); - return underPlaceOptional.isPresent(); - } - @Transactional(rollbackFor = Exception.class) @Override public Integer saveMemberTransferInfo(CuMemberTransfer cuMemberTransfer, CuMemberAccount cuMemberAccount, CuMemberAccount toMemberAccount) { - Integer row = baseMapper.insert(cuMemberTransfer); - this.updateTradeAndBalancd(cuMemberTransfer, ETransferType.TRANSFER_OUT.getValue()); - this.updateTradeAndBalancd(cuMemberTransfer, ETransferType.TRANSFER_IN.getValue()); + int row = baseMapper.insert(cuMemberTransfer); + if (row == 0) { + throw new ServiceException("转账失败,请确认后重试"); + } + if (this.updateTradeAndBalancd(cuMemberTransfer, ETransferType.TRANSFER_OUT.getValue()) == 0) { + throw new ServiceException("转账失败,请确认后重试"); + } + if (this.updateTradeAndBalancd(cuMemberTransfer, ETransferType.TRANSFER_IN.getValue()) == 0) { + throw new ServiceException("转账失败,请确认后重试"); + } ChargingBonusDetail(cuMemberTransfer, cuMemberAccount, toMemberAccount); return row; } @@ -182,11 +167,14 @@ public class CuMemberTransferServiceImpl extends ServiceImpl * 会员提现表 服务实现类 - *

- * - * @author hzs - * @since 2022-09-06 */ @Service @Slf4j public class CuMemberWithdrawServiceImpl extends ServiceImpl implements ICuMemberWithdrawService { + @Autowired + private ICuMemberTradeService iCuMemberTradeService; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired + private ICuMemberBaseService iCuMemberBaseService; @DubboReference - IWithdrawalTaxServiceApi withdrawalTaxServiceApi; - - @Autowired - ICuMemberTradeService cuMemberTradeService; - - @Autowired - ICuMemberAccountService cuMemberAccountService; - - @Autowired - ICuMemberBaseService cuMemberBaseService; - - @Autowired - ICuMemberBankService cuMemberBankService; - - @Autowired - ICuMemberService cuMemberService; - + IWithdrawalTaxServiceApi iWithdrawalTaxServiceApi; @DubboReference - IWithdrawalAutoServiceApi withdrawalAutoServiceApi; - + IWithdrawalProcessServiceApi iWithdrawalProcessServiceApi; @DubboReference - IWithdrawalServiceApi withdrawalServiceApi; - - @DubboReference - IWithdrawalProcessServiceApi withdrawalProcessServiceApi; - - - @DubboReference - IApprovalServiceApi approvalServiceApi; + IApprovalServiceApi iApprovalServiceApi; @Override @@ -108,21 +76,11 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("WITHDRAW_CODE", code); - queryWrapper.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); - return getOne(queryWrapper); - } - - @Override public List selectWithdrawByBatch(String batchNO) { //根据单号查询充值信息 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BATCH", batchNO); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberWithdraw::getBatch, batchNO); return baseMapper.selectList(queryWrapper); } @@ -155,10 +113,11 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl withdrawalConfigs = withdrawalServiceApi.queryWithdrawalByIsAuto().getData(); - if (CollUtil.isNotEmpty(withdrawalConfigs)) { - for (BdWithdrawal withdrawal : withdrawalConfigs) { - Integer pkCountry = withdrawal.getPkCountry(); - if (Boolean.TRUE.equals(isWithdrawalCycle(pkCountry))) { - //查询提现到的币种 - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - Integer accountsType = bdAccounts.get(0).getFieldValue(); - //查询会员币种余额、锁定金额 - List cuMemberAccountExts = cuMemberAccountService.queryMemberAccountByPkcountry(pkCountry); - memberWithDrawal(withdrawal, cuMemberAccountExts, bdAccounts, accountsType, pkCountry); - } - } - } - } - - /** - * 会员提现 - * - * @param withdrawal 提现配置信息 - * @param cuMemberAccountExts 会员币种表 - * @param bdAccounts 币种信息 - * @param accountsType 配置的提现币种 - * @param pkCountry 国家ID - */ - public void memberWithDrawal(BdWithdrawal withdrawal, List cuMemberAccountExts, List bdAccounts, Integer accountsType, Integer pkCountry) { - //会员ID 银行卡ID - Long pkMember; - Long pkBank; - //余额 锁定金额 - BigDecimal balance, lockAccount; - //最高自动提现金额 - BigDecimal upperBound = withdrawal.getUpperBound(); - //最低自动提现金额 - BigDecimal lowerBound = withdrawal.getLowerBound(); - //配置文件中的提现次数 - Integer withdrawalNumber = withdrawal.getWithdrawalNumber(); - if (CollUtil.isNotEmpty(cuMemberAccountExts)) { - //查询每个会员正在参与审核的次数 - List withdrawTimesByPkCountry = baseMapper.getWithdrawTimesByPkCountry(pkCountry); - Map withdrawTimes = withdrawTimesByPkCountry.stream().collect(Collectors.toMap(CuMemberWithdrawExt::getPkMember, CuMemberWithdrawExt::getTimes)); - //汇率 - CurrencyDTO currencyDTO = cuMemberBaseService.getCurrency(pkCountry); - for (CuMemberAccountExt cuMemberAccountExt : cuMemberAccountExts) { - pkBank = cuMemberAccountExt.getPkBank(); - //是否绑定银行卡 - CuMemberBankVO memberBank = cuMemberBankService.selectCuMemberBankById(pkBank); - log.info("----------是否绑定银行卡"); - if (null != memberBank) { - log.info("----------绑定银行卡"); - pkMember = cuMemberAccountExt.getPkMember(); - //获取余额 - balance = getAvailableBalance(accountsType, cuMemberAccountExt); - //是否取整 - balance = computeRounding(withdrawal, balance); - // 提现金额在配置金额之间 - if (balance.compareTo(lowerBound) > 0 && balance.compareTo(upperBound) < 0) { - log.info("----------提现开始"); - Integer times = withdrawTimes.get(pkMember) == null ? 0 : withdrawTimes.get(pkMember); - //比较正在提现次数与配置的最大提现次数 - if (times <= withdrawalNumber) { - //本次应缴个税 - BigDecimal payIncomeTax = computeIncomeTaxValue(pkMember, balance, pkCountry, lowerBound); - //手续费金额 - BigDecimal serviceChargeAmount = computeServiceCharge(pkCountry, balance); - BigDecimal issuedAmount = balance.subtract(payIncomeTax).subtract(serviceChargeAmount); - String code = CommonUtil.createSerialNumber(EOrderPrefix.WITHDRAWAL_CODE.getValue()); - CuMember member = cuMemberService.getMember(pkMember); - String remarks = member.getMemberCode() + "自动申请提现" + balance.toString(); - CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) - .pkAccount(bdAccounts.get(0).getPkId()).pkBank(pkBank) - .pkRate(currencyDTO.getPkId()).cashAmount(balance) - .serviceCharge(serviceChargeAmount).incomeTax(payIncomeTax) - .issuedAmount(issuedAmount).withdrawCode(code).remarks(remarks).build(); - cuMemberWithdraw.setApproveState(EApproveStatus.WAIT_SUBMIT.getValue()); - cuMemberWithdraw.setDelFlag(EDelFlag.UN_DELETE.getValue()); - cuMemberWithdraw.setPkCountry(pkCountry); - cuMemberWithdraw.setPkCreator(pkMember); - //保存提现、交易流水、余额信息 - baseMapper.insert(cuMemberWithdraw); - this.updateTradeAndBalancd(cuMemberWithdraw, EOperationMethod.INSERT); - } - } - } - } - } - } - - - /** - * 获取余额 - * - * @param accountsType 账户值 - * @param cuMemberAccount 账户信息 - * @return BigDecimal - */ - private BigDecimal getAvailableBalance(Integer accountsType, CuMemberAccount cuMemberAccount) { - //账户余额 - BigDecimal accountBalance = getAccountBalance(accountsType, cuMemberAccount); - //可提现账户余额 - BigDecimal withdrawBalance = ReflectUtils.invokeGetter(cuMemberAccount, MemberFieldConstants.WITHDRAW_ACCOUNT + accountsType); - withdrawBalance = withdrawBalance == null ? BigDecimal.ZERO : withdrawBalance; - BigDecimal lockAccount = ReflectUtils.invokeGetter(cuMemberAccount, MemberFieldConstants.LOCK_WITHDRAW_ACCOUNT + accountsType); - if (null != lockAccount && lockAccount.compareTo(BigDecimal.ZERO) > 0) { - withdrawBalance = withdrawBalance.subtract(lockAccount); - } - //取最小余额 - return accountBalance.compareTo(withdrawBalance) < 0 ? accountBalance : withdrawBalance; - } - /** * 获取账户余额 * @@ -487,44 +335,10 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl listR = withdrawalAutoServiceApi.queryWithdrawalAuto(pkCountry).getData(); - for (BdWithdrawalAuto withdrawalAuto : listR) { - Integer withdrawalCycle = withdrawalAuto.getWithdrawalCycle(); - if (dayOfWeekNum.equals(withdrawalCycle)) { - return true; - } - - } - return false; - } - - @Override - public BigDecimal getBalance(Long pkMember, Integer pkCountry, Integer accountsType) { - //提现账户 - if (null == accountsType) { - List bdAccounts = cuMemberBaseService.getAccountByCountry(EAccountProperty.IS_WITHDRAWAL.getValue(), pkCountry); - accountsType = bdAccounts.get(0).getFieldValue(); - } - //查询账户余额 - return cuMemberAccountService.selectBalanceByMemberCode(pkMember, accountsType); - } - @Override public BigDecimal computeIncomeTaxValue(Long pkMember, BigDecimal cashAmount, Integer pkCountry, BigDecimal minAmount) { //获取个税配置 - R bdWithdrawalTaxExtR = withdrawalTaxServiceApi.queryWithdrawalTax(pkCountry); + R bdWithdrawalTaxExtR = iWithdrawalTaxServiceApi.queryWithdrawalTax(pkCountry); BdWithdrawalTaxExt withdrawalTax = bdWithdrawalTaxExtR.getData(); if (null == withdrawalTax) { return BigDecimal.ZERO; @@ -557,7 +371,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl getWithdrawApproveStateByIds(List pkIds, Integer approveState) { return baseMapper.getWithdrawApproveStateByIds(pkIds, approveState); } - @Override public CuMemberPetitionVO showMemberWithdrawPetition(List pkIds, Integer approveState) { CuMemberPetitionVO memberPetitionVo = new CuMemberPetitionVO(); @@ -603,7 +414,6 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl checkWithdrawPetitionByState(List pkIds, Integer approveState) { return BeanUtil.copyToList(baseMapper.showMemberWithdrawPetition(pkIds, approveState), CuMemberWithdrawVO.class); @@ -627,7 +437,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl withdrawCodeList = cuMemberWithdrawExts.stream().map(CuMemberWithdrawExt::getWithdrawCode).collect(Collectors.toList()); CuMemberTradeVO memberTradeVO = CuMemberTradeVO.builder().sourceCode(businessNo) .tradeCodes(withdrawCodeList).pkModified(loginUser.getUserId()).build(); - cuMemberTradeService.updateSourceCodeByTradeCode(memberTradeVO); + iCuMemberTradeService.updateSourceCodeByTradeCode(memberTradeVO); List memberWithdrawList = memberPetitionVo.getMemberWithdrawList(); //提交提现用户 @@ -640,7 +450,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl submit = approvalServiceApi.submit(approvalSubmitDTO, loginUser); + R submit = iApprovalServiceApi.submit(approvalSubmitDTO, loginUser); if (!submit.isSuccess()) { throw new RuntimeException(submit.getMsg()); } @@ -676,7 +486,7 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl cuMemberWithdrawList = baseMapper.selectMemberWithdrawListByPkMember(pkMember, pkCountry); if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { //查询币种值 - List allAccounts = cuMemberBaseService.getAccountByCountryId(pkCountry); + List allAccounts = iCuMemberBaseService.getAccountByCountryId(pkCountry); Map map = allAccounts.stream().collect(Collectors.toMap(BdAccount::getPkId, o -> o)); for (CuMemberWithdrawExt ext : cuMemberWithdrawList) { cuMemberWithdrawVO = BeanUtil.copyProperties(ext, CuMemberWithdrawVO.class); @@ -709,18 +519,18 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl 0) { //插入交易明细表 - cuMemberTradeService.save(getCuMemberTradeInfo(cuMemberWithdraw)); + iCuMemberTradeService.save(getCuMemberTradeInfo(cuMemberWithdraw)); //更新余额表 CuMemberAccount cuMemberAccount = this.getCuMemberAccount(cuMemberWithdraw, backAmount); cuMemberAccount.setPkCountry(cuMemberWithdraw.getPkCountry()); - cuMemberAccountService.updateMemberAccount(cuMemberAccount, pkModified); + iCuMemberAccountService.updateMemberAccount(cuMemberAccount, pkModified); } return baseMapper.updateWithdrawStatusByPkId(pkId, pkModified); } private CuMemberAccount getCuMemberAccount(CuMemberWithdraw cuMemberWithdraw, BigDecimal backAmount) { Integer pkAccount = cuMemberWithdraw.getPkAccount(); - BdAccount account = cuMemberBaseService.getAccount(pkAccount); + BdAccount account = iCuMemberBaseService.getAccount(pkAccount); if (account.getFieldValue().equals(EAccount.BONUS.getValue())) { return CuMemberAccount.builder() .account4(backAmount) @@ -744,11 +554,11 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); @@ -793,13 +603,13 @@ public class CuMemberWithdrawServiceImpl extends ServiceImpl cuMemberWithdrawList = baseMapper.selectList(wrapper); Integer pkCountry = SecurityUtils.getPkCountry(); - if(CollUtil.isNotEmpty(cuMemberWithdrawList)){ + if (CollUtil.isNotEmpty(cuMemberWithdrawList)) { for (CuMemberWithdraw cuMemberWithdraw : cuMemberWithdrawList) { BusinessCommissionDTO businessCommissionDTO = BusinessCommissionDTO.builder() .tradeCode(cuMemberWithdraw.getWithdrawCode()).pkCountry(pkCountry) .tradeType(EApprovalBusiness.WITHDRAWAL.getValue()) .pkCreator(SecurityUtils.getUserId()).build(); - cuMemberTradeService.businessCommissionReject(businessCommissionDTO); + iCuMemberTradeService.businessCommissionReject(businessCommissionDTO); } } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java index ac8659a3..cd8d6087 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/ApprovalDetailVO.java @@ -7,14 +7,9 @@ import java.util.Date; /** * 审批详情 - * @Description: - * @Author: ljc - * @Time: 2022/10/11 14:12 - * @Classname: ApprovalDetailVO - * @Package_name: com.hzs.member.account.vo */ @Data -public class ApprovalDetailVO implements Serializable { +public class ApprovalDetailVO implements Serializable { private static final long serialVersionUID = 6582252890330363302L; /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java index afcaece0..0f26b066 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberBankVO.java @@ -1,32 +1,24 @@ package com.hzs.member.account.vo; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; + import java.io.Serializable; /** * 会员银行卡VO - * @Description: - * @Author: ljc - * @Time: 2023/2/9 15:31 - * @Classname: CuMemberBankVO - * @Package_name: com.hzs.member.account.vo */ @Data @AllArgsConstructor @NoArgsConstructor public class CuMemberBankVO implements Serializable { - /** * 银行主键 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_BANK) private Integer pkBank; /** @@ -66,5 +58,5 @@ public class CuMemberBankVO implements Serializable { /** * logo图片 */ - private String logo; + private String logo; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java index 12d23863..1e0b3220 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeDetailVO.java @@ -15,12 +15,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java index 86d0030a..3b1fafdc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberTradeVO.java @@ -13,12 +13,7 @@ import java.util.Date; import java.util.List; /** - *

* 会员交易明细 - *

- * - * @author hzs - * @since 2022-09-06 */ @EqualsAndHashCode(callSuper = true) @Data diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberWithdrawVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberWithdrawVO.java index cc3cc670..bced8ec2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberWithdrawVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/vo/CuMemberWithdrawVO.java @@ -13,15 +13,8 @@ import java.util.Date; import java.util.List; /** - *

* 会员提现表 - *

- * - * @author hzs - * @since 2022-09-06 */ - - @EqualsAndHashCode(callSuper = true) @Data @Builder @@ -121,7 +114,6 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO { /** * 汇率 */ - @Excel(name = "汇率", scale = 4) @BigDecimalFormat("#0.0000") private BigDecimal exchangeRate; @@ -160,13 +152,11 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO { /** * 开户支行省 */ - @Excel(name = "开户支行省") private String accountProvince; /** * 开户支行市 */ - @Excel(name = "开户支行市") private String accountCity; /** @@ -185,12 +175,10 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO { * 有效期起始日期 */ @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "有效期起始日期", width = 30, dateFormat = "yyyy-MM-dd") private Date validStartDate; /** * 有效期截止日期 */ - @Excel(name = "有效期截止日期") private String validEndDate; /** @@ -317,7 +305,7 @@ public class CuMemberWithdrawVO extends CuMemberBaseVO { /** * 查询状态 */ - private Integer queryStatus; + private Integer queryStatus; /** * 会员编号集合 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/controller/api/ApiCuMemberAchieveDisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/controller/api/ApiCuMemberAchieveDisController.java index 4a73f7bf..5d2ebca5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/controller/api/ApiCuMemberAchieveDisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/controller/api/ApiCuMemberAchieveDisController.java @@ -117,10 +117,8 @@ public class ApiCuMemberAchieveDisController extends BaseController { */ @GetMapping("/query-real-performance-pic") public AjaxResult queryRealPerformancePic() { - int month = DateUtil.month(DateUtils.currentDate()) + 1; AzAchievementPie achievementPie = iCuMemberAchieveService.queryRealPerformancePic(SecurityUtils.getUserId(), SecurityUtils.getPkCountry(), month); - return AjaxResult.success(achievementPie); } @@ -227,14 +225,11 @@ public class ApiCuMemberAchieveDisController extends BaseController { } else if (pna.getAchievementType() == EAchievementType.FIRST_PURCHASE.getValue()) { //首购 orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); orderTypeList.add(EOrderType.FICTITIOUS_ORDER.getValue()); } else if (pna.getAchievementType() == EAchievementType.REPURCHASE.getValue()) { //复购 orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); - orderTypeList.add(EOrderType.COOPERATE_ORDER.getValue()); orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - orderTypeList.add(EOrderType.WELFARE_ORDER.getValue()); } pna.setOrderTypeList(orderTypeList); startPage(); @@ -415,8 +410,7 @@ public class ApiCuMemberAchieveDisController extends BaseController { memberMonthAchieveVO.setFirstAchieve(BigDecimal.ZERO); memberMonthAchieveVO.setRepurchaseAchieve(BigDecimal.ZERO); - if (EOrderType.REGISTER_ORDER.getValue() == cuMemberAchieveExt.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == cuMemberAchieveExt.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == cuMemberAchieveExt.getOrderType()) { if (Objects.equals(CountryConstants.CHINA_COUNTRY, cuMemberAchieveExt.getPkSettleCountry())) { memberMonthAchieveVO.setFirstAchieve(ComputeUtil.computeMultiply(cuMemberAchieveExt.getOrderAchieve(), cuMemberAchieveExt.getOutExchangeRate())); } else { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuActiveMemberCensusMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuActiveMemberCensusMapper.java index aaa87e39..d66187af 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuActiveMemberCensusMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuActiveMemberCensusMapper.java @@ -8,18 +8,11 @@ import java.util.List; /** * 统计活跃会员 Mapper 接口 - * - * @author zhangjing - * @since 2023-05-17 */ public interface CuActiveMemberCensusMapper extends BaseMapper { /** - * @description: 查询伞下活跃用户 - * @author: zhang jing - * @date: 2023/5/18 10:30 - * @param: [cvo] - * @return: java.util.List + * 查询伞下活跃用户 **/ List queryActiveMember(CuActiveMemberCensusVO cvo); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberAchieveMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberAchieveMapper.java index 64a5263e..58a43dc9 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberAchieveMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberAchieveMapper.java @@ -24,9 +24,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * 创建会员网体记录表 * * @param tableName 日期 - * @return: void - * @Author: sui q - * @Date: 2022/10/31 11:44 */ void createCuMemberAchieveTable(String tableName); @@ -34,17 +31,11 @@ public interface CuMemberAchieveMapper extends BaseMapper { * 创建每年的会员考核表 * * @param tableName 表名 - * @return: void - * @Author: sui q - * @Date: 2022/11/7 14:10 */ void createCuMemberMonthTable(String tableName); /* - * @description:更新会员业绩表 每月月统计报表 - * @author: sui q - * @date: 2023/8/29 10:57 - * @param: null null + * 更新会员业绩表 每月月统计报表 **/ void mergeCuMemberMonth(@Param("date") String date, @Param("period") Integer period); @@ -54,9 +45,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * @param targetTableName 目标表 网体月表 * @param sourceTableName 来源表 结算日表 * @param period 期间 - * @return: void2 - * @Author: sui q - * @Date: 2023/2/16 11:35 */ void insertCuMemberAchieveBySettleDate(@Param("targetTableName") String targetTableName, @Param("sourceTableName") String sourceTableName, @Param("period") Integer period); @@ -67,9 +55,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * @param targetTableName 目标表 网体月表 * @param sourceTableName 来源表 结算日表 * @param period 期间 - * @return: void - * @Author: sui q - * @Date: 2023/2/16 11:35 */ void mergeCuMemberAchieveBySettleDate(@Param("targetTableName") String targetTableName, @Param("sourceTableName") String sourceTableName, @Param("period") Integer period); @@ -80,17 +65,11 @@ public interface CuMemberAchieveMapper extends BaseMapper { * * @param sourceTable 来源表,记录10天跟月表一摸一样的滚动表数据 * @param targetTable 目标表 记录10天跟月表一摸一样的滚动表数据 - * @return: void - * @Author: sui q - * @Date: 2022/10/31 16:26 */ void updateCuMemberSettleAchieveByBeforeDay(@Param("sourceTable") String sourceTable, @Param("targetTable") String targetTable); /* - * @description: 更新为最初始的数据,新增的为0,历史的通过昨天进行更新 - * @author: sui q - * @date: 2023/8/11 14:57 - * @param: null null + * 更新为最初始的数据,新增的为0,历史的通过昨天进行更新 **/ void updateCuMemberSettleInitAchieve(String targetTable); @@ -100,18 +79,12 @@ public interface CuMemberAchieveMapper extends BaseMapper { * @param targetTable 结算表 * @param period 期间 * @param pkId 主键 - * @return: void - * @Author: sui q - * @Date: 2023/3/11 13:42 */ void updateCuMemberSettleAchieveBySpecialBus(@Param("targetTable") String targetTable, @Param("period") Integer period, @Param("pkId") Long pkId); /* - * @description: 根据到期日期更新业绩,到期后需要还原到实际累计金额 - * @author: sui q - * @date: 2023/4/8 15:32 - * @param: null null + * 根据到期日期更新业绩,到期后需要还原到实际累计金额 **/ void updateCuMemberSettleAchieveByDueDate(@Param("currentTableName") String currentTableName, @Param("yesTableName") String yesTableName, @Param("currentDate") Date currentDate); @@ -122,9 +95,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * * @param memberAchieveParamList 会员业绩 * @param tableName 更新的表,结算日的日表 - * @return: Boolean - * @Author: sui q - * @Date: 2022/11/2 11:30 */ Boolean updateCuMemberBackOldAchieveEveryDay(@Param("memberAchieveParamList") List memberAchieveParamList, @Param("tableName") String tableName); @@ -134,9 +104,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * * @param memberAchieveParamList 会员业绩 * @param tableName 更新的表,结算日的日表 - * @return: Boolean - * @Author: sui q - * @Date: 2022/11/2 11:30 */ Boolean updateCuMemberBackAchieveEveryDay(@Param("memberAchieveParamList") List memberAchieveParamList, @Param("tableName") String tableName); @@ -147,9 +114,6 @@ public interface CuMemberAchieveMapper extends BaseMapper { * @param pkMember 会员主键 * @param pkCountry 公司 * @param tableName 结算表 - * @return: CuMemberAchieve - * @Author: sui q - * @Date: 2022/10/26 15:04 */ CuMemberAchieve queryCuMemberAchieveByPkMember(@Param("pkMember") Long pkMember, @Param("pkCountry") Integer pkCountry, @Param("tableName") String tableName); @@ -214,123 +178,70 @@ public interface CuMemberAchieveMapper extends BaseMapper { Integer selectExistTable(String tableName); /** - * @description: 查询左右区新增业绩 - * @author: zhang jing - * @date: 2023/5/19 11:00 - * @param: [pna] - * @return: com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO + * 查询左右区新增业绩 **/ PlaceNewAddAchieveVO selectNewABAchieve(PlaceNewAddAchieveVO pna); List selectABDirectAchieve(PlaceNewAddAchieveVO pna); /** - * @description: 月度业绩-左右区人数详情(最新) - * @author: zhang jing - * @date: 2023/9/28 11:38 - * @param: [pna] - * @return: java.util.List + * 月度业绩-左右区人数详情(最新) **/ List placeNewAddAchieveDetails(PlaceNewAddAchieveVO pna); /** - * @description: 月度业绩-左右区人数详情(历史) - * @author: zhang jing - * @date: 2023/11/29 11:47 - * @param: [pna] - * @return: java.util.List + * 月度业绩-左右区人数详情(历史) **/ List placeNewAddAchieveHistoryDetails(PlaceNewAddAchieveVO pna); /** - * @description: 月度业绩-左右区业绩详情 - * @author: zhang jing - * @date: 2023/11/30 9:18 - * @param: [pna] - * @return: java.util.List + * 月度业绩-左右区业绩详情 **/ List leftRightAchieveDetails(PlaceNewAddAchieveVO pna); /** - * @description: 月度业绩-左右区血缘业绩详情 - * @author: zhang jing - * @date: 2023/11/30 11:25 - * @param: [pna] - * @return: java.util.List + * 月度业绩-左右区血缘业绩详情 **/ List leftRightDirectAchieveDetails(PlaceNewAddAchieveVO pna); /** - * @description: 月度业绩-查询血缘业绩详情 - * @author: zhang jing - * @date: 2023/11/30 14:15 - * @param: [pna] - * @return: java.util.List + * 月度业绩-查询血缘业绩详情 **/ List directAchieveDetails(PlaceNewAddAchieveVO pna); - /** - * @description: 查询直推业绩 - * @author: zhang jing - * @date: 2023/5/19 15:50 - * @param: [pna] - * @return: com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO + * 查询直推业绩 **/ PlaceNewAddAchieveVO selectParentAchieve(PlaceNewAddAchieveVO pna); /** - * @description: 查询左右区人数 - * @author: zhang jing - * @date: 2023/5/19 14:38 - * @param: [pna] - * @return: java.lang.Integer + * 查询左右区人数 **/ List selectABCoun(PlaceNewAddAchieveVO pna); /** - * @description: 查询最新月份左右区人数 - * @author: zhang jing - * @date: 2023/9/10 17:51 - * @param: [pna] - * @return: com.hzs.member.achieve.controller.vo.PlaceNewAddAchieveVO + * 查询最新月份左右区人数 **/ List selectABNewMonthCoun(PlaceNewAddAchieveVO pna); /** - * @description: 查询各个等级直推人数和业绩 - * @author: zhang jing - * @date: 2023/5/23 10:18 - * @param: [pav] - * @return: java.util.List + * 查询各个等级直推人数和业绩 **/ List selectParentCounAchieve(ParentAchieveVO pav); /** - * @description: 查询本人直推业绩 - * @author: zhang jing - * @date: 2023/5/23 19:29 - * @param: [pav] - * @return: java.util.List + * 查询本人直推业绩 **/ List selfParentCounAchieve(ParentAchieveVO pav); /** - * @description: 查询前10直推业绩 - * @author: zhang jing - * @date: 2023/5/23 19:31 - * @param: [pav] - * @return: java.util.List + * 查询前10直推业绩 **/ List parentCounAchieveTop(ParentAchieveVO pav); /** - * @description: 直推业绩前十人伞下等级业绩 - * @author: zhang jing - * @date: 2023/5/31 19:56 - * @param: [pav] - * @return: java.util.List + * 直推业绩前十人伞下等级业绩 **/ List umbrellaAchieveTop(ParentAchieveVO pav); @@ -387,10 +298,7 @@ public interface CuMemberAchieveMapper extends BaseMapper { RecommendDataDetailVO selectRecommendMarketValue(PlacementDataParam param); /* - * @description: 更新会员的业绩 - * @author: sui q - * @date: 2023/8/12 15:46 - * @param: null null + * 更新会员的业绩 **/ void updateCuMemberAchieve(@Param("tableName") String tableName, @Param("period") Integer period); @@ -421,43 +329,28 @@ public interface CuMemberAchieveMapper extends BaseMapper { List selectRecommendTeamImage(PlacementDataParam param); /* - * @description: 查询月统计数据,按照月倒叙 - * @author: sui q - * @date: 2023/8/29 16:10 - * @param: null null + * 查询月统计数据,按照月倒叙 **/ List queryMemberMonthAchieve(@Param("pkMember") Long pkMember, @Param("monthList") List monthList); /* - * @description: 查询会员一代伞下 - * @author: sui q - * @date: 2023/8/29 18:07 - * @param: null null + * 查询会员一代伞下 **/ List queryPkMemberMonthAchieve(@Param("month") String month, @Param("pkMember") Long pkMember); /* - * @description: 查询月统计数据,查询明细 - * @author: sui q - * @date: 2023/8/29 17:43 - * @param: null null + * 查询月统计数据,查询明细 **/ List queryMemberMonthAchieveDetail(@Param("monthAchieveParam") MonthAchieveParam monthAchieveParam, @Param("memberList") List memberList); /* - * @description: 查询月统计数据,查询明细,安置伞下 - * @author: sui q - * @date: 2023/9/6 21:12 - * @param: null null + * 查询月统计数据,查询明细,安置伞下 **/ List queryPlaceParentMemberMonthAchieve(MonthAchieveParam monthAchieveParam); /* - * @description: 查询月统计数据,查询明细,安置伞下 - * @author: sui q - * @date: 2023/9/6 21:12 - * @param: null null + * 查询月统计数据,查询明细,安置伞下 **/ List queryParentMemberMonthAchieve(MonthAchieveParam monthAchieveParam); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberTreeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberTreeMapper.java index fe461480..1f8e78f5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberTreeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/mapper/CuMemberTreeMapper.java @@ -21,30 +21,6 @@ public interface CuMemberTreeMapper extends BaseMapper { */ Integer queryExistOracleTable(String tableName); - /** - * 查询会员结算表,查询出结算表中会员伞下左右区满足等级 - * - * @param settleTableName 结算表 - * @param awardsValue 验证等级对应的值 - * @param placeDept 部门 - * @param pkMember 会员 - */ - Integer queryCuMemberSettlePlaceUnderUmbrella(@Param("settleTableName") String settleTableName, - @Param("awardsValue") Integer awardsValue, - @Param("placeDept") Integer placeDept, - @Param("pkMember") Long pkMember); - - /** - * 查询会员结算表,查询出结算表中会员血缘关系满足等级 - * - * @param settleTableName 结算表 - * @param pkMember 会员 - */ - Integer queryCuMemberSettleBloodUnderUmbrella(@Param("settleTableName") String settleTableName, - @Param("awardsValue") Integer awardsValue, - @Param("placeDept") Integer placeDept, - @Param("pkMember") Long pkMember); - /** * 根据pkmember查询 * @@ -66,15 +42,6 @@ public interface CuMemberTreeMapper extends BaseMapper { @Param("pkMember") Long pkMember, @Param("vertexIdList") List vertexIdList); - /** - * 查询直推人数 - * - * @param settleTableName - * @param pkMember - * @return - */ - Long queryCuMemberTreeParentTableCount(@Param("tableName") String settleTableName, @Param("pkMember") Long pkMember); - /** * 查询秒结表是否有值 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/provider/MemberAchieveServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/provider/MemberAchieveServiceProvider.java deleted file mode 100644 index dde31fec..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/provider/MemberAchieveServiceProvider.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.member.achieve.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.member.achieve.IMemberAchieveServiceApi; -import com.hzs.member.base.service.ICuMemberBusinessService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @Description: - * @Author: sui q - * @Time: 2022/10/26 15:14 - * @Classname: MemberAchieveServiceProvider - * @PackageName: com.hzs.member.achieve.provider - */ -@Slf4j -@DubboService -public class MemberAchieveServiceProvider implements IMemberAchieveServiceApi { - - @Autowired - private ICuMemberBusinessService cuMemberBusinessService; - - @Override - public R queryCuMemberAchieveByPkMember(CuMember cuMember, Boolean isFirst, Boolean isFirstAchieve) { - return R.ok(cuMemberBusinessService.queryCuMemberPlaceDept(cuMember, isFirst, isFirstAchieve)); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java index 246c0ca8..7b68a1d5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberAchieveService.java @@ -23,14 +23,6 @@ import java.util.List; */ public interface ICuMemberAchieveService extends IService { - /** - * 查询会员最新业绩 - * - * @param pkMember 会员主键 - * @param pkCountry 公司 - */ - CuMemberAchieve queryCuMemberAchieveByPkMember(Long pkMember, Integer pkCountry); - /* * 点击架构树显示会员的业绩情况 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberTreeService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberTreeService.java index 9e5bdc2b..a467900a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberTreeService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/ICuMemberTreeService.java @@ -19,24 +19,6 @@ public interface ICuMemberTreeService extends IService { */ Integer queryExistOracleTable(String tableName); - /** - * 查询会员结算表,查询出结算表中会员伞下左右区满足等级 - * - * @param settleTableName 结算表 - * @param placeDept 部门 - * @param awardsValue 奖衔对应的值 - * @param pkMember 会员 - */ - Boolean queryCuMemberSettlePlaceUnderUmbrella(String settleTableName, Integer awardsValue, Integer placeDept, Long pkMember); - - /** - * 查询会员结算表,查询出结算表中会员血缘关系满足等级 - * - * @param settleTableName 结算表 - * @param pkMember 会员 - */ - Boolean queryCuMemberSettleBloodUnderUmbrella(String settleTableName, Integer awardsValue, Integer placeDept, Long pkMember); - /** * 根据pkmember查询 * @@ -56,15 +38,6 @@ public interface ICuMemberTreeService extends IService { */ List queryCuMemberTreeParentTable(String settleTableName, Long pkMember, List vertexIdList); - /** - * 查询直推人数 - * - * @param settleTableName - * @param pkMember - * @return - */ - Long queryCuMemberTreeParentTableCount(String settleTableName, Long pkMember); - /** * 查询秒结表是否有值 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java index 773f3550..d0a9ebbd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberAchieveServiceImpl.java @@ -95,37 +95,8 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl cuMemberSettleExtList = iCuMemberTreeService.queryCuMemberTree(tableName, member.getPkId(), null); -// return BeanUtil.copyProperties(cuMemberSettleExtList.get(0), CuMemberDisVO.class); -// }else{ CuMember cuMember = iCuMemberService.queryMember(memberAchieveDisParam.getMemberCode()); CuMemberDisVO cuMemberDisVO = BeanUtil.copyProperties(cuMember, CuMemberDisVO.class); cuMemberDisVO.setMemberCode(cuMember.getMemberCode()); @@ -136,7 +107,6 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl weekSettleCountry, List daySettleCountry) { Map allCountryMap = iCountryServiceApi.getAllCountryMap().getData(); - for (Integer pkCountry : allCountryMap.keySet()) { - String value = iSystemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - // 周结 - if (StringUtils.isNotEmpty(value) && Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), value)) { - weekSettleCountry.add(pkCountry); - } else { - daySettleCountry.add(pkCountry); - } - } + daySettleCountry.addAll(allCountryMap.keySet()); } private CuMemberSettlePeriod getCuMemberSettlePeriod(String date) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberTreeServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberTreeServiceImpl.java index 862ffddf..4e97a25e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberTreeServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/achieve/service/impl/CuMemberTreeServiceImpl.java @@ -26,16 +26,6 @@ public class CuMemberTreeServiceImpl extends ServiceImpl 0; - } - - @Override - public Boolean queryCuMemberSettleBloodUnderUmbrella(String settleTableName, Integer awardsValue, Integer placeDept, Long pkMember) { - return baseMapper.queryCuMemberSettleBloodUnderUmbrella(settleTableName, awardsValue, placeDept, pkMember) > 0; - } - @Override public CuMemberSettleExt queryCuMemberTreeByPkMemberTable(String settleTableName, Long pkMember) { return baseMapper.queryCuMemberTreeByPkMemberTable(settleTableName, pkMember); @@ -62,11 +52,6 @@ public class CuMemberTreeServiceImpl extends ServiceImpl * 会员礼包收货地址 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface CuMemberGiftMapper extends BaseMapper { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java index e680ed86..867820db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/mapper/CuMemberGiftRecordMapper.java @@ -1,18 +1,10 @@ package com.hzs.member.address.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import java.util.List; - /** - *

* 会员礼包收货地址修改记录表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface CuMemberGiftRecordMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java deleted file mode 100644 index 9d48f010..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/provider/CuMemberGiftServiceProvider.java +++ /dev/null @@ -1,110 +0,0 @@ -package com.hzs.member.address.provider; - -import com.alibaba.fastjson2.JSONObject; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.member.account.dto.MemberAccountAudit; -import com.hzs.member.address.ICuMemberGiftServiceApi; -import com.hzs.member.address.service.ICuMemberGiftRecordService; -import com.hzs.member.address.service.ICuMemberGiftService; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.Date; - -/** - * @Description: 会员礼包修改收货地址审批回调 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider - */ -@Slf4j -@DubboService -public class CuMemberGiftServiceProvider implements ICuMemberGiftServiceApi { - - @Autowired - ICuMemberGiftRecordService cuMemberGiftRecordService; - @Autowired - ICuMemberGiftService cuMemberGiftService; - - @Override - public R auditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { - //审核状态(1=待提交,2=已提交,3=审核中,4=已驳回,5=已完成,6=已归档) - EApproveStatus eApproveStatus = approvalBusinessResultDTO.getEApproveStatus(); - EApprovalBusiness eApprovalBusiness = approvalBusinessResultDTO.getEApprovalBusiness(); - String businessCode = approvalBusinessResultDTO.getBusinessCode(); - - if (StringUtils.isEmpty(businessCode) || null == eApproveStatus || null == eApprovalBusiness) { - return R.fail("提交审核缺少参数!"); - } - int approveState = eApproveStatus.getValue(); - try { - //会员礼包收货地址修改审批 - if (approveState == (EApproveStatus.FINISH.getValue())) { - CuMemberGiftRecord cuMemberGiftRecord = cuMemberGiftRecordService.getById(Integer.parseInt(businessCode)); - String newValue=cuMemberGiftRecord.getNewValue(); - if(StringUtils.isNotEmpty(newValue)){ - JSONObject root = new JSONObject().parseObject(newValue); - Long pkId =root.getLong("pkId"); - String giftAddress =root.getString("giftAddress"); - String giftName =root.getString("giftName"); - String giftPhone =root.getString("giftPhone"); - Long giftProvince =root.getLong("giftProvince"); - Long giftCity =root.getLong("giftCity"); - Long giftCounty =root.getLong("giftCounty"); - CuMemberGift cuMemberGift= new CuMemberGift(); - cuMemberGift.setPkId(pkId); - cuMemberGift.setGiftAddress(giftAddress); - cuMemberGift.setGiftName(giftName); - cuMemberGift.setGiftPhone(giftPhone); - cuMemberGift.setGiftProvince(giftProvince); - cuMemberGift.setGiftCity(giftCity); - cuMemberGift.setGiftCounty(giftCounty); - cuMemberGift.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberGift.setPkModified(SecurityUtils.getUserId()); - cuMemberGift.setModifiedTime(new Date()); - cuMemberGiftService.updateById(cuMemberGift); - }else{ - return R.fail("提交审核缺少参数!"); - } - } - return R.ok(); - } catch (Exception e) { - //会员礼包修改收货地址业务发生异常时,提醒审批流程事务回滚 - log.error("审核状态为: {} 的审核出错", approveState, e); - return R.fail("会员礼包修改收货地址业务流程出错!"); - } - } - - - /** - * TDO转业务参数 - * - * @param approvalBusinessResultDTO 业务审批操作DTO - * @param approveState 审核状态 - * @param module 模块 - * @param businessCode 业务代码 - * @return MemberAccountAudit - */ - private MemberAccountAudit dtoToParam(ApprovalBusinessResultDTO approvalBusinessResultDTO, Integer approveState, Integer module, String businessCode) { - return MemberAccountAudit.builder() - .approver(approvalBusinessResultDTO.getLoginUser().getUserId()) - .pkModified(approvalBusinessResultDTO.getLoginUser().getUserId()) - .approveState(approveState) - .approveTime(approvalBusinessResultDTO.getOperationTime()) - .businessCode(businessCode).module(module) - .pkRole(approvalBusinessResultDTO.getSysUser().getUserId()) - .roleName(approvalBusinessResultDTO.getSysUser().getUserName()) - .build(); - } - - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java index 6cfabf95..c86dc907 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftRecordService.java @@ -1,16 +1,10 @@ package com.hzs.member.address.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.address.CuMemberGiftRecord; /** - *

* 会员礼包收货地址修改记录表 服务类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ public interface ICuMemberGiftRecordService extends IService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java index bc8b9236..f60a8dae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/ICuMemberGiftService.java @@ -8,30 +8,17 @@ import com.hzs.member.param.CuMemberGiftParam; import java.util.List; /** - *

* 会员礼包收货地址 服务类 - *

- * - * @author hzs - * @since 2022-08-22 */ public interface ICuMemberGiftService extends IService { /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List + * 查询会员礼包收货地址列表 **/ List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam); /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:23 - * @param: [pkId] - * @return: com.hzs.member.address.vo.CuMemberGiftVO + * 查询会员礼包收货地址修改审批详情 **/ - CuMemberGiftVO approvalDetail(Long pkId); + CuMemberGiftVO approvalDetail(Long pkId); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java index 7c667da2..a33a6063 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftRecordServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.member.address.service.ICuMemberGiftRecordService; import org.springframework.stereotype.Service; /** - *

* 会员礼包收货地址修改记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-10-22 */ @Service public class CuMemberGiftRecordServiceImpl extends ServiceImpl implements ICuMemberGiftRecordService { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java index 4c3369fb..508c1d0b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/address/service/impl/CuMemberGiftServiceImpl.java @@ -1,78 +1,29 @@ package com.hzs.member.address.service.impl; -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.member.address.CuMemberGift; -import com.hzs.common.domain.member.address.CuMemberGiftRecord; -import com.hzs.member.account.vo.ApprovalDetailVO; import com.hzs.member.address.mapper.CuMemberGiftMapper; -import com.hzs.member.address.service.ICuMemberGiftRecordService; import com.hzs.member.address.service.ICuMemberGiftService; import com.hzs.member.address.vo.CuMemberGiftVO; import com.hzs.member.param.CuMemberGiftParam; -import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalQueryDTO; -import com.hzs.system.sys.dto.ApprovalQueryDetailDTO; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.List; /** - *

* 会员礼包收货地址 服务实现类 - *

- * - * @author hzs - * @since 2022-08-22 */ @Service public class CuMemberGiftServiceImpl extends ServiceImpl implements ICuMemberGiftService { - @DubboReference - IApprovalServiceApi approvalServiceApi; - ICuMemberGiftRecordService cuMemberGiftRecordService; - /** - * @description: 查询会员礼包收货地址列表 - * @author: zhang jing - * @date: 2022/10/20 14:25 - * @param: [memberGiftParam] - * @return: java.util.List - **/ + @Override public List selectCuMemberGiftList(CuMemberGiftParam memberGiftParam) { return baseMapper.selectCuMemberGiftList(memberGiftParam); } - /** - * @description: 查询会员礼包收货地址修改审批详情 - * @author: zhang jing - * @date: 2022/10/22 14:07 - * @param: [pkId] - * @return: java.util.List - **/ @Override - public CuMemberGiftVO approvalDetail(Long pkId) { -/* CuMemberGiftVO memberGiftVO=new CuMemberGiftVO(); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("PK_CU_MEMBER_GIFT",pkId); - CuMemberGiftRecord memberGiftRecord=cuMemberGiftRecordService.getOne(queryWrapper); - //调用审批流 -// R approvalQueryResult = approvalServiceApi.approvalDetail(EApprovalBusiness.CU_MEMBER_GIFT,null,null); - R approvalQueryResult=null; - List approvalDetailVOS = new ArrayList<>(); - if (approvalQueryResult.isSuccess()) { - //转换审批详情 - List approvalQueryDetailDTOS = approvalQueryResult.getData().getDetailList(); - approvalQueryDetailDTOS.forEach(item -> approvalDetailVOS.add(BeanUtil.copyProperties(item, ApprovalDetailVO.class))); - } - memberGiftVO.setDetailList(approvalDetailVOS); - return memberGiftVO;*/ + public CuMemberGiftVO approvalDetail(Long pkId) { return null; } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index a0a76820..60614175 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -1,25 +1,36 @@ package com.hzs.member.base.controller.api; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.annotation.RepeatSubmitSimple; +import com.hzs.common.core.config.BdConfig; +import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.FileResult; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; +import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; +import com.hzs.common.core.utils.uuid.IdUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.detail.CuMemberChangeLog; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.param.ForgetPasswordParam; import com.hzs.member.base.param.MemberDataParam; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.service.IMemberInfoService; import com.hzs.common.core.utils.UploadFileUtil; @@ -34,7 +45,10 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.validation.Valid; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; +import java.util.concurrent.TimeUnit; /** * 会员控制器 @@ -50,6 +64,14 @@ public class ApiMemberController extends BaseController { private ICuMemberService iCuMemberService; @Autowired private IApiAliSmsService iApiAliSmsService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; + + + @Autowired + private RedisService redisService; @DubboReference IGradeServiceApi iGradeServiceApi; @@ -366,4 +388,90 @@ public class ApiMemberController extends BaseController { return getDataTable(list); } + + /** + * 查询推荐人编号 -- 188分享注册 + * + * @param pkParent 推荐人(加密) + * @return + */ + @GetMapping("/fans-convert-code/{pkParent}") + public AjaxResult fansConvertCode(@PathVariable("pkParent") String pkParent) { + // 验证必输项 + if (pkParent == null) { + return AjaxResult.error(MemberMsgConstants.REQUIRED_NOT_EMPTY); + } + CuMember cuMember = iCuMemberService.getMemberById(Long.parseLong(new String(Base64Decoder.decode(pkParent)))); + if (null != cuMember) { + return AjaxResult.success("", cuMember.getMemberCode()); + } + return AjaxResult.error(); + } + + /** + * 根据订单查询会员信息 -- 188分享注册 + * + * @param orderCode 订单编号 + * @return + */ +// @RepeatSubmitSimple(intervalTime = 2L) + @GetMapping("/fans-order/{orderCode}") + public AjaxResult fansOrder(@PathVariable("orderCode") String orderCode) { + CuMemberExt cuMemberExt = iCuMemberService.queryFansOrder(orderCode); + if (null == cuMemberExt) { + return AjaxResult.error("注册会员失败,请联系客服处理"); + } + // 自动登录 uuid 标记 + String uuid = IdUtils.simpleUUID(); + // 根据会员编号放一个登录 uuid 做为自动登录校验使用(120分钟有效) + redisService.setCacheObject(CacheConstants.AUTO_LOGIN + cuMemberExt.getMemberCode(), uuid, CacheConstants.LOGIN_TOKEN_REFRESH_TIME * 2, TimeUnit.MINUTES); + + + return AjaxResult.success(MemberShare.builder() + .memberName(cuMemberExt.getMemberName()) + .memberCode(cuMemberExt.getMemberCode()) + .phone(cuMemberExt.getPhone()) + .loginPassword(cuMemberExt.getLoginPassword()) + .payPassword(cuMemberExt.getPayPassword()) + .urlAddress(BdConfig.getPc()) +// .gzh(BdConfig.getGzh()) +// .ios(BdConfig.getIos()) +// .android(BdConfig.getAndroid()) + .uuid(uuid) + .build()); + } + /** + * + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint() { + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + MemberPointVO memberPointVO = iCuMemberRetailService.getMemberPointByUserId(settleDetailTableName,settleTableName,userId); + if (memberPointVO == null) { + return AjaxResult.success(); + } + memberPointVO.setMemberSettlePeriod(csPeriod.getSettleDate()); + startPage(); + return AjaxResult.success(memberPointVO); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/MemberFootmarkController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/MemberFootmarkController.java deleted file mode 100644 index 00225836..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/MemberFootmarkController.java +++ /dev/null @@ -1,150 +0,0 @@ -package com.hzs.member.base.controller.api; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.ESystemType; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.vo.AwardsVo; -import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.config.IAwardsServiceApi; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -import java.math.BigDecimal; -import java.util.*; - -@RestController -@RequestMapping("/api/member-footmark") -public class MemberFootmarkController { - - @DubboReference - IGradeServiceApi gradeServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference - ICurrencyServiceApi currencyServiceApi; - @Autowired - private ICuMemberService memberService; - - /** - * 成长之路 奖衔 - */ - @GetMapping("/grow-up-footmark-awards") - public AjaxResult growUpFootmarkAwards() { - Integer pkCountry = SecurityUtils.getPkCountry(); - Long userId = SecurityUtils.getUserId(); - CuMember member = memberService.getMember(userId); - Integer pkAwards = member.getPkAwards(); - R currencyDto = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - CurrencyDTO currency = currencyDto.getData(); - R awardsOne = awardsServiceApi.getAwardsOne(pkAwards); - - List awardsList = awardsServiceApi.queryByPkCountryAwards(pkCountry).getData(); - - // 奖衔级别 - Integer awardsValue = awardsOne.getData().getAwardsValue(); - // 子级名称 - String childLevelName = ""; - // 累计业绩 - BigDecimal achievement = BigDecimal.ZERO; - // 用户头像 - String thisAvatarUrl = ""; - List resultList = new ArrayList<>(); - for (BdAwards bdAwards : awardsList) { - // 下一级别 - if (bdAwards.getAwardsValue() == (awardsValue - 5)) { - childLevelName = bdAwards.getAwardsName(); - } - if (bdAwards.getAwardsValue() > awardsValue) { - bdAwards.setColor("#C0C1C1"); - } - if (pkAwards.equals(bdAwards.getPkId())) { - achievement = bdAwards.getCommunityCheck(); - thisAvatarUrl = bdAwards.getImage(); - } - - AwardsVo awardsVo = BeanUtil.copyProperties(bdAwards, AwardsVo.class); - // 小区业绩 - BigDecimal communityCheck = bdAwards.getCommunityCheck().multiply(currency.getInExchangeRate()); - if (communityCheck.compareTo(new BigDecimal(10000)) > 0) { - awardsVo.setCommunityCheckStr(communityCheck.divide(new BigDecimal(10000), 2, BigDecimal.ROUND_HALF_UP).stripTrailingZeros().toPlainString() + "万"); - } else { - awardsVo.setCommunityCheckStr(communityCheck + ""); - } - resultList.add(awardsVo); - } - - Map resultMap = new HashMap<>(); - resultMap.put("childLevelName", childLevelName); - // 排序 - resultMap.put("awardsList", new ArrayList<>(resultList)); - resultMap.put("thisAwardsName", awardsOne.getData().getAwardsName()); - resultMap.put("thisPkAwards", awardsOne.getData().getPkId()); - resultMap.put("achievement", achievement); - resultMap.put("thisAvatarUrl", thisAvatarUrl); - return AjaxResult.success(resultMap); - } - - /** - * 成长之路 等级 - */ - @GetMapping("/grow-up-footmark-grade") - public AjaxResult growUpFootmarkGrade() { - Integer pkCountry = SecurityUtils.getPkCountry(); - Long userId = SecurityUtils.getUserId(); - CuMember member = memberService.getMember(userId); - Integer grade = member.getPkSettleGrade(); - // 当前等级 - String thisGradeName = ""; - // 用户头像 - String thisAvatarUrl = ""; - // 色值 - String color = ""; - R currencyDate = currencyServiceApi.getCurrency(pkCountry); - CurrencyDTO currency = currencyDate.getData(); - R gradeDto = gradeServiceApi.getGrade(grade); - List gradeList = gradeServiceApi.queryGrowUpFootmarkGrade(pkCountry).getData(); - - for (BdGrade g : gradeList) { - if (grade.equals(g.getPkId())) { - thisGradeName = g.getGradeName(); - thisAvatarUrl = g.getImage(); - color = g.getColor(); - } - if (g.getGradeValue() > gradeDto.getData().getGradeValue()) { - g.setColor("#C0C1C1"); - } - // 计算人民币业绩 - g.setStartValue(g.getStartValue().multiply(currency.getInExchangeRate())); - } - - Map resultMap = new HashMap<>(); - // 颜色 - resultMap.put("color", color); - // 等级 - resultMap.put("gradeList", gradeList.stream()); - // 当前等级 - resultMap.put("thisGradeName", thisGradeName); - // 编号 - resultMap.put("memberCode", member.getMemberCode()); - // 会员名称 - resultMap.put("memberName", member.getMemberName()); - // 业绩 - resultMap.put("achievement", member.getConsumeAchieve()); - // 头像 - resultMap.put("thisAvatarUrl", thisAvatarUrl); - return AjaxResult.success(resultMap); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java index 58063571..d5aebd27 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberController.java @@ -9,7 +9,9 @@ import com.hzs.common.core.annotation.ColumnAuthority; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.EnumsPrefixConstants; +import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.VertexConstants; +import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; @@ -19,6 +21,7 @@ import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.system.config.BdAwards; @@ -26,9 +29,11 @@ import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.common.util.TransactionUtils; +import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.dto.LoginMember; import com.hzs.member.base.dto.MemberBusinessTemplate; import com.hzs.member.base.param.*; +import com.hzs.member.base.service.ICuMemberRetailService; import com.hzs.member.base.service.ICuMemberService; import com.hzs.member.base.vo.*; import com.hzs.member.login.service.IMemberLoginService; @@ -42,6 +47,7 @@ import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IMenuColumnServiceApi; import com.hzs.system.sys.IUserServiceApi; import com.hzs.system.sys.dto.UserAuthorityDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -53,6 +59,7 @@ import java.nio.charset.StandardCharsets; import java.util.*; import java.util.stream.Collectors; +@Slf4j @RequestMapping("/manager/member") @RestController public class CuMemberController extends BaseController { @@ -65,6 +72,10 @@ public class CuMemberController extends BaseController { private MemberTokenService memberTokenService; @Autowired private IMemberLoginService iMemberLoginService; + @Autowired + private ICuMemberRetailService iCuMemberRetailService; + @Autowired + private ICuMemberSettlePeriodService iCuMemberSettlePeriodService; @DubboReference IUserServiceApi iUserServiceApi; @@ -778,4 +789,56 @@ public class CuMemberController extends BaseController { return AjaxResult.success("", Base64Encoder.encode(tmpPwd.getBytes(StandardCharsets.UTF_8))); } + /** + * + * @param memberCode + * @param memberSettlePeriodId + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @GetMapping("/member-point") + public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId,String sort,String sortColumn) { + if (memberSettlePeriodId == null) { + log.error("参数错误{}", memberSettlePeriodId); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); + // 校验当前日结表是否存在 + Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前会员日结表信息不存在"); + } + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleDetailTableName,settleTableName,memberCode,sort,sortColumn); + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + startPage(); + return AjaxResult.success(getDataTable(list)); + } + + /** + * + * @return + */ + @Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT) + @PostMapping("/member-point-export") + public void memberPointExport(MemberPointExportParam param, HttpServletResponse response) { + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(param.getMemberSettlePeriodId()); + log.info("会员结算表信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); + String settleDetailTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("会员结算表名称{}{}",settleTableName,settleDetailTableName); + List list = iCuMemberRetailService.getMemberPointByMemberCode(settleDetailTableName, settleTableName, param.getMemberCode(), param.getSort(), param.getSortColumn()); + list.forEach(item -> { + item.setMemberSettlePeriod(csPeriod.getSettleDate()); + }); + ExcelUtil util = new ExcelUtil<>(MemberPointVO.class); + util.exportExcel(response, list, "会员点位信息"); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java index af0321cf..e77f33a3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberTeamController.java @@ -21,7 +21,6 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.service.ICuMemberTeamService; import com.hzs.member.base.vo.CuMemberTeamVO; -import com.hzs.system.base.ITransactionServiceApi; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,28 +31,19 @@ import java.util.List; /** * 会员所属团队(隶属团队)前端控制器 - * - * @author zhangjing - * @since 2022-09-16 */ @RestController @RequestMapping("/manage/member-team") public class CuMemberTeamController extends BaseController { @Autowired - private ICuMemberTeamService cuMemberTeamService; + private ICuMemberTeamService iCuMemberTeamService; - @DubboReference - ITransactionServiceApi iTransactionServiceApi; @DubboReference IMemberServiceApi iMemberServiceApi; /** - * @description: 查询会员所属团队(隶属团队)列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询会员所属团队(隶属团队)列表 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -62,16 +52,12 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); startPage(); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); return getDataTable(list); } /** - * @description: 隶属团队下拉选 - * @author: zhang jing - * @date: 2022/11/16 15:43 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 隶属团队下拉选 **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/listNoPage") @@ -79,7 +65,7 @@ public class CuMemberTeamController extends BaseController { cuMemberTeam.setPkCountry(SecurityUtils.getPkCountry()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - List list = cuMemberTeamService.queryCuMemberTeam(cuMemberTeam); + List list = iCuMemberTeamService.queryCuMemberTeam(cuMemberTeam); List listVo = new ArrayList<>(); list.forEach(item -> listVo.add(BeanUtil.copyProperties(item, CuMemberTeamVO.class))); return getDataTable(listVo); @@ -92,32 +78,24 @@ public class CuMemberTeamController extends BaseController { */ @GetMapping("/find-all") public AjaxResult findAll() { - return AjaxResult.success(cuMemberTeamService.list( + return AjaxResult.success(iCuMemberTeamService.list( Wrappers.lambdaQuery().eq(CuMemberTeam::getSystemType, SecurityUtils.getSystemType())) ); } /** * 根据体系查询团队配置 - * - * @param pkVertexList - * @return */ @GetMapping("/find-vertex") public AjaxResult findByVertex(@RequestParam List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CuMemberTeam::getPkBdVertex, pkVertexList); queryWrapper.orderByAsc(CuMemberTeam::getTeamName); - return AjaxResult.success(cuMemberTeamService.list(queryWrapper)); + return AjaxResult.success(iCuMemberTeamService.list(queryWrapper)); } - /** - * @description: 新增会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.INSERT) @PostMapping("/save") @@ -139,29 +117,20 @@ public class CuMemberTeamController extends BaseController { } LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); cuMemberTeam.setPkCountry(pkCountry); cuMemberTeam.setPkCreator(SecurityUtils.getUserId()); cuMemberTeam.setCreationTime(new Date()); cuMemberTeam.setSystemType(SecurityUtils.getSystemType()); - return toAjax(cuMemberTeamService.save(cuMemberTeam)); + return toAjax(iCuMemberTeamService.save(cuMemberTeam)); } - /** - * @description: 修改会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [cuMemberTeam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -186,52 +155,31 @@ public class CuMemberTeamController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(CuMemberTeam::getPkMember, member.getData().getPkId()); queryWrapper.ne(CuMemberTeam::getPkId, cuMemberTeam.getPkId()); - List list = cuMemberTeamService.list(queryWrapper); + List list = iCuMemberTeamService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MEMBER_CODE_REPEAT)); } cuMemberTeam.setPkMember(member.getData().getPkId()); - - if (null != cuMemberTeam.getPkTransaction()) { - iTransactionServiceApi.updateTransaction(pkCountry, - cuMemberTeam.getTeamName(), cuMemberTeam.getPkTransaction(), true); - } else { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.MEMBER, - cuMemberTeam.getTeamName(), EYesNo.NO, EYesNo.NO); - cuMemberTeam.setPkTransaction(pkTransaction.getData()); - } - cuMemberTeam.setPkModified(SecurityUtils.getUserId()); cuMemberTeam.setModifiedTime(new Date()); - return toAjax(cuMemberTeamService.updateById(cuMemberTeam)); + return toAjax(iCuMemberTeamService.updateById(cuMemberTeam)); } - /** - * @description: 查询单条会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { CuMemberTeamExt memberTeam = new CuMemberTeamExt(); memberTeam.setPkId(pkId); - List cuMemberTeam = cuMemberTeamService.queryCuMemberTeam(memberTeam); + List cuMemberTeam = iCuMemberTeamService.queryCuMemberTeam(memberTeam); CuMemberTeamExt cuMemberTeamExt = cuMemberTeam.get(0); return AjaxResult.success(cuMemberTeamExt); } - /** - * @description: 删除会员所属团队(隶属团队) - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除会员所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") @@ -241,37 +189,26 @@ public class CuMemberTeamController extends BaseController { updateWrapper.set(CuMemberTeam::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(CuMemberTeam::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(CuMemberTeam::getModifiedTime, new Date()); - //删除翻译 - CuMemberTeam memberTeam = cuMemberTeamService.getById(pkId); - List pkIdList = new ArrayList<>(); - pkIdList.add(memberTeam.getPkTransaction().longValue()); - iTransactionServiceApi.removeTransactionByPkId(pkIdList); - return toAjax(cuMemberTeamService.update(updateWrapper)); + return toAjax(iCuMemberTeamService.update(updateWrapper)); } /** - * @description: 更新所属团队(隶属团队) - * @author: sui q - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 更新所属团队(隶属团队) **/ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/update-team/{pkTeamCode}") public AjaxResult updateTeamByVertex(@PathVariable Long pkTeamCode) { - cuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); + iCuMemberTeamService.updateCuMemberTeamByVertex(pkTeamCode); return AjaxResult.success(); } /** * 刷新全部团队 - * - * @return */ @Log(module = EOperationModule.CU_MEMBER_TEAM, business = EOperationBusiness.AFFILIATION_TEAM, method = EOperationMethod.RENEW) @GetMapping("/flush-all") public AjaxResult flushAll() { - cuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); + iCuMemberTeamService.flushAllTeam(SecurityUtils.getPkCountry()); return AjaxResult.success(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java index 8d9618e1..cf2aad12 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberAgentMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberAgent; /** - *

* 会员信息-代理商信息 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface CuMemberAgentMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java index a0270d1a..16bdd4df 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberMapper.java @@ -13,6 +13,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import org.apache.ibatis.annotations.Param; @@ -41,22 +42,6 @@ public interface CuMemberMapper extends BaseMapper { */ List queryMemberInfoByCondition(CuMember cuMember); - /** - * 查找安置人伞上 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorOnUmbrella(@Param("memberId") Long memberId, - @Param("memberCode") String memberCode, - @Param("phone") String phone); - - /** - * 查找安置人伞上会员信息 - * - * @param memberId 编号、安置人 - */ - List querySponsorOnUmbrella(@Param("memberId") Long memberId, @Param("memberCodeList") List memberCodeList); - /** * 查找安置人伞下 * @@ -71,21 +56,6 @@ public interface CuMemberMapper extends BaseMapper { */ List selectPlaceSponsorUnderUmbrellaByCode(@Param("memberId") Long memberId, @Param("placeParentCode") String placeParentCode); - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorUnderUmbrellaByCondition(@Param("memberId") Long memberId, @Param("cuMemberExtList") List cuMemberExtList); - - /** - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 安置部门 - */ - CuMemberExt selectPlaceSponsorLastLeft(@Param("memberId") Long memberId, @Param("placeDept") Integer placeDept); - /** * 查找血缘伞上,推荐人 * @@ -277,15 +247,6 @@ public interface CuMemberMapper extends BaseMapper { */ List parentList(@Param("pkParent") Long pkParent, @Param("memberCode") String memberCode, @Param("memberName") String memberName, @Param("startCreateTime") Date startCreateTime, @Param("endCreateTime") Date endCreateTime, @Param("memberInfo") String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(@Param("topCode") String topCode, @Param("pkMember") Long pkMember); - /** * 校验会员编号是否存在 * @@ -373,11 +334,6 @@ public interface CuMemberMapper extends BaseMapper { */ void updatePlaceParentAndPlaceDeptById(@Param("pkMember") Long pkMember, @Param("pkPlaceParent") Long pkPlaceParent, @Param("placeDept") Integer placeDept); - /* - * 查询会员左右区人数 - **/ - List queryMemberLeftRightCount(@Param("pkMember") Long pkMember); - /** * 校验会员编号是否存在 * @@ -635,4 +591,14 @@ public interface CuMemberMapper extends BaseMapper { */ List queryDateBySummary(CensusSummaryParam censusSummaryParam); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(@Param("orderCode") String orderCode); + + CuMemberDetailDTO getCuMemberDetailById(@Param("pointMember") Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java new file mode 100644 index 00000000..94ab3f43 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailDetailMapper.java @@ -0,0 +1,49 @@ +package com.hzs.member.base.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +public interface CuMemberRetailDetailMapper extends BaseMapper { + List getChildList(@Param("memberCode") String memberCode, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("settleTableName")String settleTableName); + + CuMemberRetailDetail getCuMemberRetailDetailExt(@Param("memberCode")String memberCode, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("childNode")String childNode, + @Param("settleTableName")String settleTableName); + + Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); + + CuMemberRetailDetail getCuMemberRetailDetailByUserId(@Param("userId")Long userId, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("childNode")String childNode, + @Param("settleTableName")String settleTableName); + + List getChildListByUserId(@Param("userId") Long userId, + @Param("stage")Integer stage, + @Param("stageStatus")Integer stageStatus, + @Param("settleTableName")String settleTableName); + + + List getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName, + @Param("memberCode") String memberCode, + @Param("stage") Integer stage, + @Param("stageStatus") Integer stageStatus); + + + CuMemberPointDTO getPointDetailByUserId(@Param("userId") Long userId, + @Param("stage") Integer stage, + @Param("point") Integer point, + @Param("settleTableName") String settleTableName); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java new file mode 100644 index 00000000..26e6b25c --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRetailMapper.java @@ -0,0 +1,26 @@ +package com.hzs.member.base.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.vo.MemberPointVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * Mapper 接口 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface CuMemberRetailMapper extends BaseMapper { + + Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName); + + List getMemberPointByMemberCode(@Param("settleDetailTableName") String settleDetailTableName,@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode, @Param("sort") String sort, @Param("sortColumn") String sortColumn); + + MemberPointVO getMemberPointByUserId(@Param("settleDetailTableName") String settleDetailTableName,@Param("settleTableName") String settleTableName, @Param("userId") Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java index 9683ac95..5cb5cd22 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberShareMapper.java @@ -2,24 +2,10 @@ package com.hzs.member.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** - *

* 分享注册记录会员 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-15 */ public interface CuMemberShareMapper extends BaseMapper { - /** - * 海粉列表 - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberPointExportParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberPointExportParam.java new file mode 100644 index 00000000..5a4eb56e --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/param/MemberPointExportParam.java @@ -0,0 +1,17 @@ +package com.hzs.member.base.param; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.web.bind.annotation.RequestParam; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class MemberPointExportParam { + private String memberCode; + private Long memberSettlePeriodId; + private String sort; + private String sortColumn; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java index 1c6e70ab..9c5d4fb7 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/CuAwardsControlServiceProvider.java @@ -2,22 +2,16 @@ package com.hzs.member.base.provider; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuAwardsControlServiceApi; import com.hzs.member.base.dto.CuAwardsControlDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import com.hzs.system.config.dto.ServiceChargeDTO; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -27,8 +21,6 @@ import java.util.Map; /** * 真实奖衔控制涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceApi { @@ -36,39 +28,28 @@ public class CuAwardsControlServiceProvider implements ICuAwardsControlServiceAp @Autowired private ICuMemberServiceLogService memberServiceLogService; @Autowired - private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; - @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * @description: 查询真实奖衔控制审核列表 - * @author: zhang jing - * @date: 2023/4/10 15:17 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> awardsControlList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); List list = new ArrayList<>(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); for (CuMemberServiceLog cs : msList) { //查询扣费金额,账户信息 CuAwardsControlDTO control = JSONObject.parseObject(cs.getNewValue(), CuAwardsControlDTO.class); control.setCost(control.getCost()); control.setPkAccount(control.getPkAccount()); - if(control.getPkAccount()!=null){ - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(control.getPkAccount()); + if (control.getPkAccount() != null) { + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(control.getPkAccount()); control.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); } control.setPkMember(cs.getPkMember()); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java index a76bfd34..792b27a4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/ICuMemberAchieveLogServiceProvider.java @@ -2,27 +2,18 @@ package com.hzs.member.base.provider; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.member.detail.CuMemberAchieveLog; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.ICuMemberAchieveLogServiceApi; import com.hzs.member.base.dto.CuMemberAchieveLogDTO; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.handlebusiness.service.ICuHandleBusinessService; -import com.hzs.system.base.ICountryServiceApi; -import com.hzs.system.config.IAwardsServiceApi; -import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; import lombok.extern.slf4j.Slf4j; @@ -34,68 +25,47 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; -/** - * @description: - * @author: zhang jing - * @date: 2023/3/28 16:57 - * @param: - * @return: - **/ @Slf4j @DubboService public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogServiceApi { - @Autowired - private ICuMemberServiceLogService memberServiceLogService; - @Autowired - private ICuHandleBusinessService handleBusinessService; - @DubboReference - private IGradeServiceApi gradeServiceApi; - @DubboReference - private IAwardsServiceApi awardsServiceApi; - @DubboReference - private ICountryServiceApi countryServiceApi; @Autowired private ICuMemberAchieveLogService achieveLogService; @Autowired private ICuMemberAchieveLogService cuMemberAchieveLogService; - @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; @Autowired private ICuMemberBaseService cuMemberBaseService; @Autowired private ITransactionCommonService iTransactionCommonService; - /** - * 解析注水业绩诉求信息 - * - * @param analysisBusinessAppealParam 业务信息 - * @return R - */ + + @DubboReference + IServiceChargeServiceApi iServiceChargeServiceApi; + @Override public R> memberAchieveLog(AnalysisBusinessAppealParam analysisBusinessAppealParam) { - CuMemberAchieveLogVO cuMemberAchieveLogVO=new CuMemberAchieveLogVO(); - List list=new ArrayList<>(); + CuMemberAchieveLogVO cuMemberAchieveLogVO = new CuMemberAchieveLogVO(); + List list = new ArrayList<>(); cuMemberAchieveLogVO.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); List list1 = achieveLogService.queryTryAchieveLogList(cuMemberAchieveLogVO); - if(CollectionUtil.isNotEmpty(list1)){ + if (CollectionUtil.isNotEmpty(list1)) { //数据库内容翻译 - Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(),EnumsPrefixConstants.KEY_ACC); + Map transactionMap = iTransactionCommonService.enumTransactionByDBToTag(analysisBusinessAppealParam.getToLanguageTag(), EnumsPrefixConstants.KEY_ACC); Integer pkCountry = list1.get(0).getPkCountry(); - for(CuMemberAchieveLogVO cmal:list1){ + for (CuMemberAchieveLogVO cmal : list1) { Integer maxSecond = cuMemberAchieveLogService.selectByMaxApproveNumber(cmal.getPkMember(), EApproveStatus.FINISH.getValue()); //查询扣费金额,账户信息 ServiceChargeDTO serviceChargeDTO = new ServiceChargeDTO(); serviceChargeDTO.setType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); serviceChargeDTO.setQuantity(maxSecond + 1); serviceChargeDTO.setPkCountry(pkCountry); - R serviceChargeDTOR = serviceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); + R serviceChargeDTOR = iServiceChargeServiceApi.getServiceChargeByType(serviceChargeDTO); //接口查询金额是否足够 cmal.setCost(serviceChargeDTOR.getData().getCost()); cmal.setPkAccount(serviceChargeDTOR.getData().getPkAccount()); - Integer pkAccountKey=cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); + Integer pkAccountKey = cuMemberBaseService.translateAccountValue(serviceChargeDTOR.getData().getPkAccount()); cmal.setPkAccountKeyVal(transactionMap.get(pkAccountKey)); - cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getSettleDate())); - cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,cmal.getDueDate())); + cmal.setSettleDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getSettleDate())); + cmal.setDueDateStr(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cmal.getDueDate())); } } list1.forEach(item -> list.add(BeanUtil.copyProperties(item, CuMemberAchieveLogDTO.class))); @@ -104,5 +74,4 @@ public class ICuMemberAchieveLogServiceProvider implements ICuMemberAchieveLogSe } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java deleted file mode 100644 index a7fa4e0c..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberLevelServiceProvider.java +++ /dev/null @@ -1,29 +0,0 @@ -package com.hzs.member.base.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import com.hzs.member.base.IMemberLevelServiceApi; -import com.hzs.member.detail.service.ICuMemberLevelService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @Description: 会员等级相关dubbo服务 - * @Author: jiang chao - * @Time: 2025/2/27 9:25 - * @Classname: MemberLevelServiceProvider - * @PackageName: com.hzs.member.base.provider - */ -@DubboService -public class MemberLevelServiceProvider implements IMemberLevelServiceApi { - - @Autowired - private ICuMemberLevelService iCuMemberLevelService; - - @Override - public R> listMemberLevel(Long pkMember, Long pkOrder) { - return R.ok(iCuMemberLevelService.listMemberLevel(pkMember, pkOrder)); - } -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index a07ab2df..cddd62da 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -1,13 +1,13 @@ package com.hzs.member.base.provider; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.ELoginType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -18,8 +18,6 @@ import com.hzs.member.base.service.*; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.empty.service.ICuMemberEmptyCodeService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.member.swing.param.CuMemberSwingNetParam; -import com.hzs.member.swing.service.ICuMemberSwingNetService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -38,9 +36,9 @@ public class MemberServiceProvider implements IMemberServiceApi { @Autowired private ICuMemberService iCuMemberService; @Autowired - private ICuMemberBusinessService iCuMemberBusinessService; + private ICuMemberShareService iCuMemberShareService; @Autowired - private ICuMemberRegisterService iCuMemberRegisterService; + private ICuMemberBusinessService iCuMemberBusinessService; @Autowired private ICuMemberEmptyCodeService iCuMemberEmptyCodeService; @@ -58,6 +56,20 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(loginMember); } + + @Override + public R getShareMemberInfo(String memberCode) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberShare::getMemberCode, memberCode); + CuMemberShare cuMemberShare = iCuMemberShareService.getOne(queryWrapper); + if (null == cuMemberShare) { + return R.fail("用户名或密码错误"); + } + LoginMember loginMember = new LoginMember(); + loginMember.setLoginType(ELoginType.SHARE_MEMBER.getValue()); + loginMember.setCuMemberShare(cuMemberShare); + return R.ok(loginMember); + } @Override public R getMemberById(Long memberId) { return R.ok(iCuMemberService.getMemberById(memberId)); @@ -128,31 +140,11 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R> querySponsorOnUmbrella(Long memberId, String memberCode, String phone) { - return R.ok(iCuMemberService.queryPlaceSponsorOnUmbrella(memberId, memberCode, phone)); - } - - @Override - public R> querySponsorOnUmbrella(Long memberId, List memberCodeList) { - return R.ok(iCuMemberService.querySponsorOnUmbrella(memberId, memberCodeList)); - } - - @Override - public R> selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList) { - return R.ok(iCuMemberService.selectPlaceSponsorUnderUmbrellaByCondition(memberId, cuMemberExtList)); - } - @Override public R> queryPlaceSponsorUnderUmbrella(Long memberId, String... placeParent) { return R.ok(iCuMemberService.queryPlaceSponsorUnderUmbrella(memberId, placeParent)); } - @Override - public R queryPlaceSponsorLastLeft(Long memberId, Integer placeDept) { - return R.ok(iCuMemberService.queryPlaceSponsorLastLeft(memberId, placeDept)); - } - @Override public R getMember(String memberCode) { return R.ok(iCuMemberService.getMember(memberCode)); @@ -183,11 +175,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R queryCuMemberByPkMember(Long pkReference) { - return R.ok(iCuMemberService.queryCuMemberByPkMember(pkReference)); - } - @Override public R saveMember(SaOrderExt saOrder, CuMemberAccountExt cuMemberAccountExt) { try { @@ -217,11 +204,6 @@ public class MemberServiceProvider implements IMemberServiceApi { } } - @Override - public R createMemberIdAndCode(CuMember cuMember) { - return R.ok(iCuMemberService.createMemberIdAndCode(cuMember)); - } - @Override public R createRegisterMemberCode(CuMember cuMember) { return R.ok(iCuMemberService.createRegisterMemberCode(cuMember)); @@ -247,11 +229,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberService.findMemberByMemberId(pkMemberList, pkCountry)); } - @Override - public R queryCuMemberRegister(Long pkMember) { - return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); - } - @Override public R updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { try { @@ -276,11 +253,6 @@ public class MemberServiceProvider implements IMemberServiceApi { return R.ok(iCuMemberBusinessService.updateMemberLevel(cuMember, saOrder, pkOldLevel)); } - @Override - public R checkParent(String topCode, Long userId) { - return R.ok(iCuMemberService.checkParent(topCode, userId) > 0); - } - @Override public Integer getAwardsTranslateValue(Integer pkCountry, Integer pkId) { return iCuMemberService.getAwardsTranslateValue(pkCountry, pkId); @@ -379,5 +351,9 @@ public class MemberServiceProvider implements IMemberServiceApi { public R checkRegisterRelation(String phone, String parentCode) { return R.ok(iCuMemberService.checkRegisterRelation(phone, parentCode)); } + @Override + public R getMemberPhoneCount(String phone){ + return R.ok(iCuMemberService.getMemberPhoneCount(phone)); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java index fdce542f..11a85053 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberTeamServiceProvider.java @@ -34,11 +34,6 @@ public class MemberTeamServiceProvider implements IMemberTeamServiceApi { return R.ok(iCuMemberTeamService.checkVertex(pkVertex)); } - @Override - public R getCuMemberTeamById(Long pkMember) { - return R.ok(iCuMemberTeamService.getCuMemberTeamById(pkMember)); - } - @Override public R> getTeamByVertexIds(List pkVertexList) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java index 02257292..f6b0a1b1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/UpPolicyCurrencyServiceProvider.java @@ -1,24 +1,19 @@ package com.hzs.member.base.provider; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EPopupType; import com.hzs.common.core.enums.EnableStatus; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.service.ITransactionCommonService; -import com.hzs.member.account.service.ICuMemberBaseService; import com.hzs.member.base.IUpPolicyCurrencyServiceApi; import com.hzs.member.base.dto.UpPolicyCurrencyDTO; -import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.handlebusiness.dto.AnalysisBusinessAppealParam; -import com.hzs.system.config.IServiceChargeServiceApi; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -28,8 +23,6 @@ import java.util.Map; /** * 修改政策币涉及dubbo服务 - * - * @author zhangjing */ @DubboService public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyServiceApi { @@ -39,28 +32,20 @@ public class UpPolicyCurrencyServiceProvider implements IUpPolicyCurrencyService @Autowired private ITransactionCommonService iTransactionCommonService; - - /** - * @description: 查询修改政策币审核列表 - * @author: zhang jing - * @date: 2023/5/10 17:42 - * @param: [analysisBusinessAppealParam] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> policyCurrencyList(AnalysisBusinessAppealParam analysisBusinessAppealParam) { List list = new ArrayList<>(); CuMemberServiceLog memberServiceLog = new CuMemberServiceLog(); memberServiceLog.setBusinessNo(analysisBusinessAppealParam.getBusinessNo()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", analysisBusinessAppealParam.getBusinessNo()); - Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(),EnableStatus.values(), EPopupType.values()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, analysisBusinessAppealParam.getBusinessNo()); + Map transactionMap = iTransactionCommonService.exportEnumTransactionToTag(analysisBusinessAppealParam.getToLanguageTag(), EnableStatus.values(), EPopupType.values()); List msList = memberServiceLogService.list(queryWrapper); if (CollectionUtil.isNotEmpty(msList)) { msList.forEach(item -> { UpPolicyCurrencyDTO upc = JSONObject.parseObject(item.getNewValue(), UpPolicyCurrencyDTO.class); - upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS+upc.getEnableStatus())); - upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE+upc.getTransfer())); + upc.setEnableStatusVal(transactionMap.get(EnumsPrefixConstants.ENABLE_STATUS + upc.getEnableStatus())); + upc.setTransferVal(transactionMap.get(EnumsPrefixConstants.POPUP_TYPE + upc.getTransfer())); list.add(upc); }); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java index a8a7706f..c152436b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAchieveLogService.java @@ -1,111 +1,53 @@ package com.hzs.member.base.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.member.base.vo.CuMemberAchieveLogVO; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** - *

* 注水业绩记录表 服务类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ public interface ICuMemberAchieveLogService extends IService { /** - * @description: 特殊业务-注水业绩记录查询 - * @author: zhang jing - * @date: 2023/2/3 17:16 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩记录查询 **/ List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 特殊业务-注水业绩-审核列表 - * @author: zhang jing - * @date: 2023/3/28 16:28 - * @param: [cuMemberAchieveLogVO] - * @return: java.util.List + * 特殊业务-注水业绩-审核列表 **/ List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 查询某一期历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:20 - * @param: [calList] - * @return: java.util.List + * 查询某一期历史业绩 **/ List queryMemberAchieveHistoryList(List calList); /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:13 - * @param: [tableName, cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询单个会员当期业绩 **/ - CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO,Integer pkCountry); - /** - * @description: 查询最大审核次数 - * @author: zhang jing - * @date: 2023/2/6 16:10 - * @param: [pkMember, approveStatus] - * @return: java.lang.Integer - **/ - Integer selectByMaxApproveNumber(Long pkMember,int approveStatus); + CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry); /** - * @description: 注水业绩 - * @author: zhang jing - * @date: 2023/4/11 19:15 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 查询最大审核次数 + **/ + Integer selectByMaxApproveNumber(Long pkMember, int approveStatus); + + /** + * 注水业绩 **/ CuMemberAchieveLogVO infusingWater(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 发起签呈 - * @author: zhang jing - * @date: 2023/4/11 19:18 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO + * 发起签呈 **/ CuMemberAchieveLogVO petition(CuMemberAchieveLogVO cuMemberAchieveLogVO); /** - * @description: 审核注水业绩 - * @author: zhang jing - * @date: 2023/2/9 17:45 - * @param: [cuMemberAchieveLogVO] - * @return: boolean - **/ - boolean toExamine(ApprovalBusinessResultDTO approvalBusinessResultDTO); - - /** - * 根据期间查询特殊业务注水业务,用于更新业绩,奖金计算使用 - * @param period 期间 - * @return: List - * @Author: sui q - * @Date: 2023/3/11 11:26 - */ - List queryMemberAchieveLogByPeriod(Integer period); - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List + * 校验是否存在未审核数据 **/ List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java index 7cb2bd87..1a698b6c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberAgentService.java @@ -7,20 +7,8 @@ import java.util.List; import java.util.Map; /** - *

* 会员信息-代理商信息 服务类 - *

- * - * @author hzs - * @since 2022-08-31 */ public interface ICuMemberAgentService extends IService { - /** - * 查询所有的代理商会员会员 key 国家 +省 + 市 - * @return: List - * @Author: sui q - * @Date: 2023/1/5 15:16 - */ - Map> queryCuMemberAgent(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java index 6ec903c7..4b86fa28 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java @@ -123,15 +123,6 @@ public interface ICuMemberBusinessService { */ void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder); - /** - * 校验订单调换货物余额是否足够 - * - * @param saOrder 订单 - * @param updateOrder 新订单 - * @return - */ - String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder); - /** * 订单调换货物扣费处理 * @@ -142,17 +133,6 @@ public interface ICuMemberBusinessService { */ void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj); - /** - * 订单退单 - * - * @param saOrder 订单 - * @param userId 操作用户ID - * @param changeAmount 变动金额(除订单退回外,又追加的补偿或者扣款) -- 非必传 - * @param changeRemark 变动备注 -- 非必传 - * @return - */ - void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark); - /** * 订单退单注册会员 * @@ -198,11 +178,6 @@ public interface ICuMemberBusinessService { */ Boolean updateMemberLevel(CuMember cuMember, SaOrder saOrder, Integer pkOldLevel); - /* - * 查询会员的安置位置 - **/ - CuMember queryCuMemberPlaceDept(CuMember cuMember, Boolean isFirst, Boolean isFirstAchieve); - /** * 注册新零售会员 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index 1d4ae7f3..f2e6edae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -19,13 +19,6 @@ public interface ICuMemberRegisterService extends IService { */ List queryCuMemberRegisterExeByCondition(MemberParam memberParam); - /** - * 根据会员主键查询会员注册信息 - * - * @param pkMember 会员主键 - */ - CuMemberRegister queryCuMemberRegister(Long pkMember); - /** * 将用户注册表信息更改为死点 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java new file mode 100644 index 00000000..4ced2404 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRetailService.java @@ -0,0 +1,23 @@ +package com.hzs.member.base.service; + + +import com.hzs.member.base.vo.MemberPointVO; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +public interface ICuMemberRetailService{ + + Integer getFindCuMemberRetailDetail(String settleTableName); + + List getMemberPointByMemberCode(String settleDetailTableName,String settleTableName, String memberCode, String sort, String sortColumn); + + MemberPointVO getMemberPointByUserId(String settleDetailTableName,String settleTableName, Long userId); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 82998d90..006bd679 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -20,6 +20,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.member.share.param.ShareRegisterParam; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; @@ -40,11 +41,6 @@ public interface ICuMemberService extends IService { */ Boolean saveMember(CuMember cuMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 根据会员编号获取会员信息(查库) * @@ -102,34 +98,6 @@ public interface ICuMemberService extends IService { */ boolean checkLowerMember(Long pkMember); - /** - * 查找安置人伞上 - * - * @param memberId 安置人,编号 - */ - List queryPlaceSponsorOnUmbrella(Long memberId); - - /** - * 查找安置人伞上 - * - * @param memberId 安置人,编号 - */ - List queryPlaceSponsorOnUmbrella(Long memberId, String memberCode, String phone); - - /** - * 查找安置人伞上会员信息 - * - * @param memberId 编号、安置人 - */ - List querySponsorOnUmbrella(Long memberId, List memberCodeList); - - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList); - /** * 查找安置人伞下 * @@ -137,15 +105,6 @@ public interface ICuMemberService extends IService { */ List queryPlaceSponsorUnderUmbrella(Long memberId, String... placeParent); - /** - * 查询最末安置人 - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 1代表左区极左极下,2代表右区极左极下 - */ - CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept); - /** * 查找血缘伞上,推荐人 * @@ -496,15 +455,6 @@ public interface ICuMemberService extends IService { */ List parentList(Long pkParent, String memberCode, String memberName, Date startCreateTime, Date endCreateTime, String memberInfo); - /** - * 校验是否血缘关系 - * - * @param topCode 顶点编号 - * @param pkMember 当前会员 - * @return - */ - int checkParent(String topCode, Long pkMember); - /** * 校验会员编号是否存在 * @@ -611,11 +561,6 @@ public interface ICuMemberService extends IService { */ void updateParentByBusinessNoReject(ApprovalBusinessResultDTO approvalBusinessResultDTO); - /* - * 查询会员左右区人数 - **/ - List queryMemberLeftRightCount(Long pkMember); - /** * 修改安置通过 * @@ -813,7 +758,7 @@ public interface ICuMemberService extends IService { * @return */ CuMember getRetailTopMember(Long pkMember, String memberCode, Long topPkMember, String topMemberCode); - + String createRetailMemberCode(String prefix); /** * 校验注册关系(是否跨团队) * 2024.12.24 修改为校验手机号必须唯一(9035) @@ -911,4 +856,21 @@ public interface ICuMemberService extends IService { */ List selectCensusSummary(CensusSummaryParam censusSummaryParam, List days); + + /** + * 查询海粉订单 + * + * @param orderCode 订单编号 + * @return + */ + CuMemberExt queryFansOrder(String orderCode); + + /** + * 获取手机号数量 + * @param phone + * @return + */ + Integer getMemberPhoneCount(String phone); + + CuMemberDetailDTO getCuMemberDetailById(Long pointMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java index 686beef1..3ee1fa76 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberShareService.java @@ -2,25 +2,10 @@ package com.hzs.member.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.base.CuMemberShare; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; - -import java.util.List; /** * 分享注册记录会员 服务类 - * - * @author hzs - * @since 2023-03-15 */ public interface ICuMemberShareService extends IService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - List seaFlourList(SeaFlourParam seaFlourParam); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java index c3e395b7..406b0508 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberTeamService.java @@ -16,11 +16,6 @@ public interface ICuMemberTeamService extends IService { **/ List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt); - /* - * 根据会员主键获得所属团队 - **/ - CuMemberTeamExt getCuMemberTeamById(Long pkMember); - /** * 根据国家查询隶属团队 **/ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java new file mode 100644 index 00000000..779d47c1 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICumemberRetailDetailService.java @@ -0,0 +1,28 @@ +package com.hzs.member.base.service; + +import cn.hutool.core.lang.tree.Tree; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; + +import java.util.List; + +public interface ICumemberRetailDetailService { + List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName); + + CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus, String childNode, String settleTableName); + + Integer getFindCumemberRetailDetail(String settleTableName); + + List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail); + + CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName); + + List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName); + + List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus); + + + CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember,Integer stage, Integer point, String settleTableName); +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java index 000e1c0d..2b3c8bc2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAchieveLogServiceImpl.java @@ -2,9 +2,6 @@ package com.hzs.member.base.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; @@ -19,22 +16,18 @@ import com.hzs.common.domain.member.detail.CuMemberAchieveLog; import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; -import com.hzs.member.account.dto.MemberAmountDTO; import com.hzs.member.account.service.ICuMemberTradeService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; -import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.mapper.CuMemberAchieveLogMapper; import com.hzs.member.base.service.ICuMemberAchieveLogService; import com.hzs.member.base.vo.CuMemberAchieveLogVO; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.sys.IApprovalServiceApi; -import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; import com.hzs.system.sys.dto.BusinessLogDTO; import com.hzs.system.sys.dto.LoginUser; import org.apache.dubbo.config.annotation.DubboReference; -import org.apache.ibatis.annotations.Param; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -42,20 +35,10 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.math.RoundingMode; -import java.time.Instant; -import java.time.LocalDate; -import java.time.ZoneId; -import java.time.ZonedDateTime; -import java.time.temporal.ChronoUnit; import java.util.*; /** - *

* 注水业绩记录表 服务实现类 - *

- * - * @author zhangjing - * @since 2023-02-03 */ @Service public class CuMemberAchieveLogServiceImpl extends ServiceImpl implements ICuMemberAchieveLogService { @@ -64,124 +47,37 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @DubboReference + ICurrencyServiceApi currencyServiceApi; + @Override public List queryMemberAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { - //先查询 -// List listAll = new ArrayList<>(); -// if (StringUtils.isNotNull(cuMemberAchieveLogVO.getStartDate()) && -// StringUtils.isNotNull(cuMemberAchieveLogVO.getEndtDate())) { -// Instant startInstant = cuMemberAchieveLogVO.getStartDate().toInstant(); -// Instant endInstant = cuMemberAchieveLogVO.getEndtDate().toInstant(); -// ZoneId zoneId = ZoneId.systemDefault(); -// LocalDate startLocalDate = startInstant.atZone(zoneId).toLocalDate(); -// LocalDate endLocalDate = endInstant.atZone(zoneId).toLocalDate(); -// //根据日期范围遍历日期 -// for (LocalDate localDate = startLocalDate; localDate.isBefore(endLocalDate); -// localDate = localDate.plusDays(1)) { -// ZonedDateTime zdt = localDate.atStartOfDay(zoneId); -// Date date = Date.from(zdt.toInstant()); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// listAll.addAll(list); -// } -// } else { -// Date date = new Date(); -// date = DateUtils.beforeDate(1, ChronoUnit.DAYS, date); -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, date); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// listAll = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), -// cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), -// cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), -// cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), -// cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), -// cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), -// cuMemberAchieveLogVO.getInfusingWaterType()); -// } //先查询注水日志表 - List list = baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), + return baseMapper.queryMemberAchieveLogList(cuMemberAchieveLogVO.getMemberCode(), cuMemberAchieveLogVO.getMemberName(), cuMemberAchieveLogVO.getPkCountry(), cuMemberAchieveLogVO.getPkAwards(), cuMemberAchieveLogVO.getPkTeamCode(), cuMemberAchieveLogVO.getPkVertex(), cuMemberAchieveLogVO.getStartDate(), cuMemberAchieveLogVO.getEndtDate(), cuMemberAchieveLogVO.getStaDueDate(), cuMemberAchieveLogVO.getEndDueDate(), cuMemberAchieveLogVO.getWaterStatus(), cuMemberAchieveLogVO.getInfusingWaterType()); -// if (CollectionUtil.isNotEmpty(list)) { -// list.forEach(itm -> { -// String datestr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, itm.getSettleDate()); -// String month = DateUtils.getMonth(datestr); -// String tableName = TableNameConstants.CU_MEMBER_ACHIEVE + month; -// //查询最新期数 -// int period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate( -// DateUtils.parseDateToStr(datestr)).getPkId(); -// itm.setPeriod(period); -// itm.setTableName(tableName); -// }); -// List achieveHistoryList = baseMapper.queryMemberAchieveHistoryList(list); -// if (CollectionUtil.isNotEmpty(achieveHistoryList)) { -// list.forEach(itm -> { -// achieveHistoryList.forEach(itmm -> { -// if (itmm.getPkMember().equals(itm.getPkMember()) && -// itmm.getPeriod().equals(itm.getPeriod())) { -// itm.setAbalance(itmm.getAbalance()); -// itm.setBbalance(itmm.getBbalance()); -// itm.setAsumPv(itmm.getAsumPv()); -// itm.setBsumPv(itmm.getBsumPv()); -// itm.setAsumRealPv(itmm.getAsumRealPv()); -// itm.setBsumRealPv(itmm.getBsumRealPv()); -// itm.setRepABalance(itmm.getRepABalance()); -// itm.setRepBBalance(itmm.getRepBBalance()); -// itm.setRepASumPv(itmm.getRepASumPv()); -// itm.setRepBSumPv(itmm.getRepBSumPv()); -// } -// }); -// }); -// } -// } - return list; } - /** - * @description: 查询某一期的历史业绩 - * @author: zhang jing - * @date: 2023/9/11 9:19 - * @param: [calList] - * @return: java.util.List - **/ + @Override public List queryMemberAchieveHistoryList(List calList) { List list = baseMapper.queryMemberAchieveHistoryList(calList); R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - BigDecimal exchangeRate = SecurityUtils.getPkCountry() == CountryConstants.CHINA_COUNTRY ? currency.getData().getInExchangeRate() : BigDecimal.ONE; + BigDecimal exchangeRate = SecurityUtils.getPkCountry().equals(CountryConstants.CHINA_COUNTRY) ? currency.getData().getInExchangeRate() : BigDecimal.ONE; List listnew = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { list.forEach(itm -> { @@ -201,26 +97,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl + * 特殊业务-注水业绩-审核列表 **/ public List queryTryAchieveLogList(CuMemberAchieveLogVO cuMemberAchieveLogVO) { return baseMapper.queryTryAchieveLogList(cuMemberAchieveLogVO.getApproveStatus(), cuMemberAchieveLogVO.getBusinessNo()); } - - /** - * @description: 查询单个会员当期业绩 - * @author: zhang jing - * @date: 2023/2/4 10:14 - * @param: [cuMemberAchieveLogVO] - * @return: com.hzs.member.base.vo.CuMemberAchieveLogVO - **/ @Override public CuMemberAchieveLogVO searchOne(CuMemberAchieveLogVO cuMemberAchieveLogVO, Integer pkCountry) { CuMemberAchieveLogVO achieveLogVO = new CuMemberAchieveLogVO(); @@ -256,25 +139,11 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免签呈 或 免签呈+免支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDSIGNING.getValue() || @@ -363,7 +232,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -437,13 +315,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl dtoList = new ArrayList<>(); //业务单号 String code = CommonUtil.createSerialNumber(EOrderPrefix.MEMBER_ACHIEVE.getValue()); - Set pkMemberIds = new HashSet<>(); cuMemberAchieveLogVO.setPkAccount(cuMemberAchieveLogVO.getCmalvList().get(0).getPkAccount()); for (CuMemberAchieveLogVO cmal : cuMemberAchieveLogVO.getCmalvList()) { @@ -469,14 +339,13 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl calList=new ArrayList<>(); + List calList = new ArrayList<>(); calList.add(cuMemberAchieveLogVO); - calList=cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); + calList = cuMemberAchieveLogService.queryMemberAchieveHistoryList(calList); //免支付 或 需签呈+支付 if (cuMemberAchieveLogVO.getProcessType() == EProcessType.AVOIDPAY.getValue() || cuMemberAchieveLogVO.getProcessType() == EProcessType.DOUBLEPAY.getValue()) { - pkMemberIds.add(cmal.getPkMember()); CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); memberAchieveLog.setASumRealModifyPv(cmal.getAsumRealModifyPv()); memberAchieveLog.setBSumRealModifyPv(cmal.getBsumRealModifyPv()); @@ -502,7 +371,7 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl 0) { - content = content + " 左区真实业绩"+waterType+": " + cmal.getAsumRealModifyPv(); - } if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 更后右区真实业绩"+waterType+": " + cmal.getBsumRealModifyPv(); - } if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购业绩"+waterType+": " + cmal.getAfirstModifyPv(); - } if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购业绩"+waterType+": " + cmal.getBfirstModifyPv(); - } if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区首购结余"+waterType+": " + cmal.getRepAFirstModifyBalance(); - } if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区首购结余"+waterType+": " + cmal.getRepBFirstModifyBalance(); - } if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购业绩累计业绩"+waterType+": " + cmal.getRepAModifySumPv(); - } if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购业绩累计业绩"+waterType+": " + cmal.getRepBModifySumPv(); - } if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 左区复购结余"+waterType+": " + cmal.getRepAModifyBalance(); - } if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { - content = content + " 右区复购结余"+waterType+": " + cmal.getRepBModifyBalance(); + content = content + " 左区真实业绩" + waterType + ": " + cmal.getAsumRealModifyPv(); + } + if (cmal.getBsumRealModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 更后右区真实业绩" + waterType + ": " + cmal.getBsumRealModifyPv(); + } + if (cmal.getAfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购业绩" + waterType + ": " + cmal.getAfirstModifyPv(); + } + if (cmal.getBfirstModifyPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购业绩" + waterType + ": " + cmal.getBfirstModifyPv(); + } + if (cmal.getRepAFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区首购结余" + waterType + ": " + cmal.getRepAFirstModifyBalance(); + } + if (cmal.getRepBFirstModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区首购结余" + waterType + ": " + cmal.getRepBFirstModifyBalance(); + } + if (cmal.getRepAModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购业绩累计业绩" + waterType + ": " + cmal.getRepAModifySumPv(); + } + if (cmal.getRepBModifySumPv().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购业绩累计业绩" + waterType + ": " + cmal.getRepBModifySumPv(); + } + if (cmal.getRepAModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 左区复购结余" + waterType + ": " + cmal.getRepAModifyBalance(); + } + if (cmal.getRepBModifyBalance().compareTo(BigDecimal.ZERO) > 0) { + content = content + " 右区复购结余" + waterType + ": " + cmal.getRepBModifyBalance(); } //组装日志数据 @@ -594,96 +472,6 @@ public class CuMemberAchieveLogServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper(); - queryWrapper.eq("BUSINESS_NO", approvalBusinessResultDTO.getBusinessCode()); - queryWrapper.eq("APPROVE_STATUS", EApproveStatus.ALREADY_SUBMIT.getValue()); - List malList = baseMapper.selectList(queryWrapper); - //审核通过 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.FINISH.getValue()) { - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - //修改日志表审核状态 - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - updateWrapper.set("APPROVE_STATUS", EApproveStatus.FINISH.getValue()); - updateWrapper.set("MODIFIED_TIME", date); - updateWrapper.set("PK_MODIFIED", userID); - baseMapper.update(null, updateWrapper); - } - } - } - //审核驳回 - if (approvalBusinessResultDTO.getEApproveStatus().getValue() == EApproveStatus.REJECTED.getValue()) { - List memberAmountDTOList = new ArrayList<>(); - if (CollectionUtil.isNotEmpty(malList)) { - for (CuMemberAchieveLog cmal : malList) { - if (StringUtils.isNotNull(cmal.getCost()) && cmal.getCost().compareTo(BigDecimal.ZERO) > 0) { - MemberAmountDTO memberAmountDTO = new MemberAmountDTO(); - memberAmountDTO.setPkMember(cmal.getPkMember()); - memberAmountDTO.setTradeAmount(cmal.getCost()); - memberAmountDTO.setPkAccount(cmal.getPkAccount()); - memberAmountDTOList.add(memberAmountDTO); - } - //修改日志表审核状态 - CuMemberAchieveLog memberAchieveLog = BeanUtil.copyProperties(cmal, CuMemberAchieveLog.class); - memberAchieveLog.setModifiedTime(date); - memberAchieveLog.setPkModified(userID); - memberAchieveLog.setPkCountry(pkCountry); - memberAchieveLog.setApproveStatus(EApproveStatus.REJECTED.getValue()); - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_MEMBER", cmal.getPkMember()); - updateWrapper.eq("BUSINESS_NO", cmal.getBusinessNo()); - baseMapper.update(memberAchieveLog, updateWrapper); - } - if (CollectionUtil.isNotEmpty(memberAmountDTOList)) { - //退款 - BusinessCommissionDTO businessCommissionDTO = new BusinessCommissionDTO(); - businessCommissionDTO.setPkCountry(pkCountry); - businessCommissionDTO.setPkAccount(memberAmountDTOList.get(0).getPkAccount()); - businessCommissionDTO.setMemberAmountDTOList(memberAmountDTOList); - businessCommissionDTO.setTradeType(EApprovalBusiness.MEMBER_ACHIEVE.getValue()); - businessCommissionDTO.setTradeCode(approvalBusinessResultDTO.getBusinessCode()); - businessCommissionDTO.setPkCreator(approvalBusinessResultDTO.getLoginUser().getUserId()); - Boolean result = cuMemberTradeService.businessCommissionSubmit(businessCommissionDTO, EApproveStatus.REJECTED); - if (!result) { - throw new ServiceException(ConfigMsgConstants.MEMBER_ACHIEVE_IS_REFUND); - } - } - } - } - return true; - } - - @Override - public List queryMemberAchieveLogByPeriod(Integer period) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - queryWrapper.in(SystemFieldConstants.APPROVE_STATUS, EApproveStatus.FINISH.getValue()); - queryWrapper.orderByAsc(MemberFieldConstants.PK_MEMBER, SystemFieldConstants.CREATION_TIME); - return baseMapper.selectList(queryWrapper); - } - - /** - * @description: 校验是否存在未审核数据 - * @author: zhang jing - * @date: 2023/3/28 14:36 - * @param: [memberAchieveLogVO] - * @return: java.util.List - **/ @Override public List checkAchieveList(CuMemberAchieveLogVO memberAchieveLogVO) { return baseMapper.checkAchieveList(memberAchieveLogVO); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java index dc9b6cbf..8142128b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberAgentServiceImpl.java @@ -1,48 +1,15 @@ package com.hzs.member.base.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; -import com.hzs.common.core.enums.EAgentType; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.member.base.CuMemberAgent; import com.hzs.member.base.mapper.CuMemberAgentMapper; import com.hzs.member.base.service.ICuMemberAgentService; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - /** - *

* 会员信息-代理商信息 服务实现类 - *

- * - * @author hzs - * @since 2022-08-31 */ @Service public class CuMemberAgentServiceImpl extends ServiceImpl implements ICuMemberAgentService { - @Override - public Map> queryCuMemberAgent() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select(" pk_member,agent_province,agent_city,agent_county,agent_grade,pk_country ") - .eq(MemberFieldConstants.AGENT_TYPE, EAgentType.AGENT.getValue()); - List cuMemberAgentList = baseMapper.selectList(queryWrapper); - Map> cuMemberAgentMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAgentList.size())); - cuMemberAgentList.forEach(cuMemberAgent -> { - String key = cuMemberAgent.getPkCountry().toString() + cuMemberAgent.getAgentProvince().toString() + cuMemberAgent.getAgentCity().toString(); - if(cuMemberAgentMap.containsKey(key)){ - cuMemberAgentMap.get(key).add(cuMemberAgent); - }else{ - List cuMemberAgents = new ArrayList<>(); - cuMemberAgents.add(cuMemberAgent); - cuMemberAgentMap.put(key, cuMemberAgents); - } - }); - return cuMemberAgentMap; - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index 370ce38f..c4a95899 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; @@ -18,7 +17,6 @@ import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.account.CuMemberTrade; import com.hzs.common.domain.member.account.CuMemberTradeBonus; import com.hzs.common.domain.member.account.CuMemberTradeDetail; -import com.hzs.common.domain.member.achieve.CuMemberAchieve; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.base.CuMemberRegister; @@ -26,12 +24,10 @@ import com.hzs.common.domain.member.detail.CuMemberAwards; import com.hzs.common.domain.member.detail.CuMemberChangeLog; import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.TOnlinePayment; import com.hzs.common.util.TransactionUtils; import com.hzs.member.account.dto.BusinessCommissionDTO; @@ -39,7 +35,6 @@ import com.hzs.member.account.service.ICuMemberAccountService; import com.hzs.member.account.service.ICuMemberTradeBonusService; import com.hzs.member.account.service.ICuMemberTradeDetailService; import com.hzs.member.account.service.ICuMemberTradeService; -import com.hzs.member.achieve.service.ICuMemberAchieveService; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.base.service.*; import com.hzs.member.detail.service.ICuMemberAwardsService; @@ -56,7 +51,6 @@ import com.hzs.system.config.dto.AreaCurrencyDTO; import com.hzs.third.pay.ITOnlinePaymentServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -89,19 +83,14 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Autowired private MemberToolsHandler memberToolsHandler; @Autowired - private ICuMemberAchieveService cuMemberAchieveService; - @Autowired private RedisService redisService; - @Autowired - private RabbitTemplate rabbitTemplate; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired private ICuMemberService cuMemberService; private ICuMemberRegisterService cuMemberRegisterService; - @Autowired - private ICuMemberAccountService iCuMemberAccountService; - - private ICuMemberAccountService cuMemberAccountService; private ICuMemberTradeService cuMemberTradeService; @@ -147,16 +136,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { this.cuMemberTradeService = cuMemberTradeService; } - @Autowired - public void setCuMemberAccountService(ICuMemberAccountService cuMemberAccountService) { - this.cuMemberAccountService = cuMemberAccountService; - } - - @Autowired - public void setCuMemberService(ICuMemberService cuMemberService) { - this.cuMemberService = cuMemberService; - } - @Autowired public void setCuMemberRegisterService(ICuMemberRegisterService cuMemberRegisterService) { this.cuMemberRegisterService = cuMemberRegisterService; @@ -316,7 +295,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); } private void saveMemberRecords(CuMember cuMember, SaOrder saOrder) { @@ -380,7 +359,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccount.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount); if (cuMemberAccountExtList.size() == 0) { throw new RuntimeException("没有找到会员账户"); } @@ -398,12 +377,10 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } /** + * 插入会员的交易明细 + * * @param saOrder 订单 * @param cuMemberAccount 账户 - * @Description: 插入会员的交易明细 - * @return: void - * @Author: sui q - * @Date: 2022/9/13 15:12 */ @Transactional(rollbackFor = Exception.class) @Override @@ -551,7 +528,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } // 更新账户余额 try { - if (!cuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { + if (!iCuMemberAccountService.updateMemberAccount(updateMemberAccount, pkMember)) { throw new RuntimeException("用户付款失败,请重试!"); } } finally { @@ -606,11 +583,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberByRegisterOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); - - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { - // 会员账号 验证会员账户是否存在金额 - CuMember member = cuMemberService.getMemberById(saOrder.getPkMember()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + // 会员账号 验证会员账户是否存在金额 + CuMember member = cuMemberService.getMemberById(saOrder.getPkMember()); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + ||(ObjectUtil.isNotEmpty(member) && EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType() && saOrder.getPayTime().equals(member.getPayTime())) + ) { // 会员变为死点 member.setCategory(ECategory.LOGGED_OUT.getValue()); member.setCustomerType(ECustomerType.DEAD_POINT.getValue()); @@ -641,10 +619,13 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean singleRevokeMemberBySelfRevokeOrder(Long pkApprove, SaOrderExt saOrder, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); // 回退给创建人 - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { + CuMember member = cuMemberService.getMember(saOrder.getPkMember()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + if ( + EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() + || (saOrder.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && saOrder.getPayTime().equals(member.getPayTime())) + ) { // 会员账号 验证会员账户是否存在金额 - CuMember member = cuMemberService.getMember(saOrder.getPkMember()); //删除会员 LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); @@ -685,7 +666,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { public Boolean updateCuMemberAccountByDraw(Long pkMember, Integer pkCountry, Integer accountValue, BigDecimal rewardMoney) { CuMemberAccount cuMemberAccountParam = CuMemberAccount.builder().pkMember(pkMember).build(); cuMemberAccountParam.setPkCountry(pkCountry); - List cuMemberAccountExtList = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); + List cuMemberAccountExtList = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccountParam); if (CollectionUtil.isEmpty(cuMemberAccountExtList)) { return Boolean.FALSE; } @@ -799,10 +780,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } /** - * @Description: 撤销订单,回退奖金账户金额 - * @return: void - * @Author: sui q - * @Date: 2023/3/30 15:32 + * 撤销订单,回退奖金账户金额 */ private void revokeBonusAccount(Long pkApprove, SaOrder saOrder, CuMemberAccount payMemberAccount, List newCuMemberTradeBonusList, List cuMemberTradeDetailList, CuMemberAccount updateMemberAccount, List cuMemberTradeList, CuMemberTrade cuMemberTrade, BigDecimal tradeMoney, AreaCurrencyDTO currencyDto) { @@ -871,7 +849,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 按照memberList 倒叙往后删除 Date currentDateTime = DateUtils.currentDateTime(); List centerIdList = saOrderMap.values().stream().map(BaseEntity::getPkCreator).distinct().collect(Collectors.toList()); - List cuMemberAccountList = cuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); + List cuMemberAccountList = iCuMemberAccountService.queryCuMemberAccountByPkMembers(centerIdList); Map cuMemberAccountMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberAccountList.size())); cuMemberAccountList.forEach(cuMemberAccount -> cuMemberAccountMap.put(cuMemberAccount.getPkMember(), cuMemberAccount)); @@ -883,7 +861,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 回退奖衔,根据订单从 cu_member_awards查询 cuMemberAwardsService.deleteCuMemberAwards(saOrder.getPkId(), pkApprove, currentDateTime); cuMemberService.deleteCuMemberByPkMember(pkMember, pkApprove, currentDateTime); - cuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); + iCuMemberAccountService.deleteCuMemberAccountByPkMember(pkMember, pkApprove, currentDateTime); // 撤销正常订单,修改 cu_member_register 账户状态为死点 CuMemberRegister cuMemberRegister = new CuMemberRegister(); cuMemberRegister.setPkMember(pkMember); @@ -920,41 +898,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override public Boolean normalRevokeOrder(Long pkApprove, SaOrderExt saOrder, CuMember cuMember, BusinessCommissionDTO businessCommissionDTO) { deductCancelOrderCost(businessCommissionDTO); - Date currentDateTime = DateUtils.currentDateTime(); - - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { - // 升级订单 - // 回退等级 - cuMemberLevelService.deleteCuMemberLevelRecord(saOrder.getPkId(), pkApprove, currentDateTime); - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) { - // 复购订单 - // 会员等级发生变化,新等级需要处理 - BdGrade newGrade = saOrder.getNewGrade(); - if (null != cuMember && null != newGrade) { - // 更新会员等级 - cuMember.setPkSettleGrade(newGrade.getPkId()); - } - - // 处理升级记录(添加、删除) - List deleteLevelList = saOrder.getDeleteLevelList(); - if (CollectionUtil.isNotEmpty(deleteLevelList)) { - cuMemberLevelService.update(Wrappers.lambdaUpdate() - .set(CuMemberLevel::getDelFlag, EDelFlag.DELETE.getValue()) - .set(CuMemberLevel::getModifiedTime, new Date()) - .set(CuMemberLevel::getPkModified, pkApprove) - .in(CuMemberLevel::getPkId, deleteLevelList.stream().map(CuMemberLevel::getPkId).collect(Collectors.toList())) - ); - } - List createLevelList = saOrder.getCreateLevelList(); - if (CollectionUtil.isNotEmpty(createLevelList)) { - // 校验插入的升级时间要小于V4、V5的升级时间 - CuMemberLevel tmpLevel = cuMemberLevelService.getLevelByGradeValue(saOrder.getPkMember(), EGrade.VIP.getValue(), saOrder.getPayTime(), saOrder.getPkCountry()); - if (null != tmpLevel) { - createLevelList = createLevelList.stream().filter(tmp -> tmp.getUpgradeTime().compareTo(tmpLevel.getUpgradeTime()) < 0).collect(Collectors.toList()); - } - cuMemberLevelService.insertBatch(createLevelList); - } - } // 更新会员标记,如果是则更新会员信息 if (saOrder.getUpdateFlag() != null && EYesNo.YES.getIntValue() == saOrder.getUpdateFlag()) { @@ -964,7 +907,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } } - // 部分撤单 todo 发货后邮费不退,未发货退邮费 if (saOrder.getPayType().equals(EOrderPayType.WALLET.getValue())) { // 钱包支付,则需要回退金额 // 部分撤单 @@ -985,7 +927,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override @Transactional(rollbackFor = Exception.class) public Boolean cancelMemberAccount(Long pkMember, SaOrder saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 回退账号余额 cancelOrderBackAccount(pkMember, saOrder, payMemberAccount); return Boolean.TRUE; @@ -993,7 +935,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Override public void cancelPartOrderBackAmount(Long pkApprove, SaOrderExt saOrder) { - CuMemberAccount payMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); + CuMemberAccount payMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator()); BigDecimal backOrderAmount = saOrder.getBackOrderAmount(); // 考虑部分撤单 // 部分退,回退金额按照 币种扣除的倒叙扣除 现金->消费->奖金 奖金->消费->现金 @@ -1065,62 +1007,18 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { saveAndUpdateCuMember(cuMemberTradeList, updateMemberAccount); } - @Transactional(rollbackFor = Exception.class) - @Override - public String orderChangeProductPre(SaOrder saOrder, SaOrder updateOrder) { - // 查询会员订单支付币种 - List cuMemberTrades = cuMemberTradeService.queryCuMemberTrade(saOrder.getPkCreator(), saOrder.getOrderCode()); - - // 查询会员当前余额 - CuMemberAccount cuMemberAccount = new CuMemberAccount(); - cuMemberAccount.setPkCountry(saOrder.getPkCountry()); - cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); - - if (CollectionUtil.isNotEmpty(cuMemberTrades)) { - List currencyDTOList = iAreaCurrencyServiceApi.queryAreaCurrencyByPkCountry(saOrder.getPkCountry()).getData(); - Map areaCurrencyMap = new HashMap<>(); - currencyDTOList.forEach(areaCurrencyDTO -> areaCurrencyMap.put(areaCurrencyDTO.getPkAccount(), areaCurrencyDTO)); - - for (CuMemberTrade cuMemberTrade : cuMemberTrades) { - BigDecimal tradeMoney = cuMemberTrade.getTradeAmount().negate(); - - AreaCurrencyDTO currencyDto = areaCurrencyMap.get(cuMemberTrade.getPkAccount()); - // 用于更新账户余额 - BigDecimal oriTradeMoney = ReflectUtils.invokeGetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue()); - ReflectUtils.invokeSetter(tmpCuMemberAccount, MemberFieldConstants.ACCOUNT + currencyDto.getFieldValue(), ComputeUtil.computeAdd(oriTradeMoney, tradeMoney)); - } - } - - // 获取需要扣除币种金额 - R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); - if (!resultR.isSuccess()) { - log.error("调换货物校验余额是否足够失败: {}", resultR.getMsg()); - return "调换货物校验余额是否足够失败"; - } - CuMemberAccountExt cuMemberAccountExt = resultR.getData(); - if (!cuMemberAccountExt.getIsPayment()) { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY); - } else { - return cuMemberAccountExt.getErrorMsg(); - } - } - return null; - } - @Transactional(rollbackFor = Exception.class) @Override public void orderChangeProduct(SaOrder saOrder, SaOrder updateOrder, Long userId, Object obj) { if (null != saOrder && null != updateOrder) { // 撤销订单 - this.cancelOrderBackAccount(userId, saOrder, cuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); + this.cancelOrderBackAccount(userId, saOrder, iCuMemberAccountService.queryCuMemberAccountByPkMember(saOrder.getPkCreator())); // 查询会员当前余额 CuMemberAccount cuMemberAccount = new CuMemberAccount(); cuMemberAccount.setPkCountry(saOrder.getPkCountry()); cuMemberAccount.setPkMember(saOrder.getPkCreator()); - CuMemberAccountExt tmpCuMemberAccount = cuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); + CuMemberAccountExt tmpCuMemberAccount = iCuMemberAccountService.queryMemberAccountByCondition(cuMemberAccount).get(0); // 获取需要扣除各币种金额 R resultR = iSaOrderServiceApi.queryOrderSpendDetails(tmpCuMemberAccount, updateOrder, null); @@ -1159,129 +1057,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } } - @Transactional(rollbackFor = Exception.class) - @Override - public void orderReturn(SaOrder saOrder, Long userId, BigDecimal changeAmount, String changeRemark) { - // 当前时间 - Date nowDate = new Date(); - // 订单编号 - String orderCode = saOrder.getOrderCode(); - // 订单购买人 - Long pkMember = saOrder.getPkCreator(); - // 订单所属国 - Integer pkCountry = saOrder.getPkCountry(); - - // 更新账户余额 - CuMemberAccount updateMemberAccount = new CuMemberAccount(); - updateMemberAccount.setPkMember(pkMember); - updateMemberAccount.setPkCountry(pkCountry); - // 红冲交易明细数据 - List saveMemberTradeList = new ArrayList<>(); - - // 查询订单创建人账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); - // 订单所属专区扣币的第一位配置 - AreaCurrencyDTO areaCurrencyDTO = iAreaCurrencyServiceApi.queryAreaCurrencyByCondition(saOrder.getOrderType(), pkCountry).getData().get(0); - // 专区扣币的第一位配置所用字段 - String accountField = MemberFieldConstants.ACCOUNT + areaCurrencyDTO.getFieldValue(); - - if (EOrderPayType.WALLET.getValue() == saOrder.getPayType()) { - // 钱包支付 - // 查询之前订单的支付明细 - List memberTradeList = cuMemberTradeService.querySourceCodeLastTrade(pkMember, orderCode, null); - - // 获取所有账户配置ID - List pkAccountList = memberTradeList.stream().map(CuMemberTrade::getPkAccount).collect(Collectors.toList()); - // 账户对应账户配置map - Map accountMap = iAccountServiceApi.getAccountMap(pkAccountList).getData(); - - // 根据之前交易明细,生成红冲交易数据 - for (CuMemberTrade cuMemberTrade : memberTradeList) { - // 账户取值所用字段 - String field = MemberFieldConstants.ACCOUNT + accountMap.get(cuMemberTrade.getPkAccount()).getFieldValue(); - // 交易金额 - BigDecimal tradeAmount = cuMemberTrade.getTradeAmount().negate(); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, field); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装红冲交易明细 - saveMemberTradeList.add(this.createMemberTradeByTrade(cuMemberTrade, ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, field, tradeBalance); - // 设置更新账户变动余额 - ReflectUtils.invokeSetter(updateMemberAccount, field, tradeAmount); - } - } else { - // 在线支付 - // 交易金额(订单金额 + 邮费) - BigDecimal tradeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()); - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - // 交易余额 - BigDecimal tradeBalance = tradeBeforeBalance.add(tradeAmount); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.RETURN_MONEY, ETradeClassify.REFUND, tradeBeforeBalance, tradeAmount, ETradeType.RETURN_MONEY.getLabel(), userId)); - - // 原账户余额 - ReflectUtils.invokeSetter(cuMemberAccount, accountField, tradeBalance); - // 设置更新账户余额 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, tradeAmount); - } - - if (null != changeAmount && changeAmount.compareTo(BigDecimal.ZERO) != 0) { - // 存在退返金额 并且不为0,则进行处理,退回给订单所属专区扣币第一位配置 - // 交易前余额 - BigDecimal tradeBeforeBalance = ReflectUtils.invokeGetter(cuMemberAccount, accountField); - - // 封装交易流水 - saveMemberTradeList.add(this.createMemberTradeByOrder(saOrder, areaCurrencyDTO.getPkAccount(), ETradeType.ORDER_REFUND_ADJUST, ETradeClassify.REFUND, tradeBeforeBalance, changeAmount, changeRemark, userId)); - - // 变动前账户 - BigDecimal changeBeforeAccount = ReflectUtils.invokeGetter(updateMemberAccount, accountField); - if (null == changeBeforeAccount) { - // 如果为空,直接赋值 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeAmount); - } else { - // 如果不为空,进行累加 - ReflectUtils.invokeSetter(updateMemberAccount, accountField, changeBeforeAccount.add(changeAmount)); - } - } - - // 批量插入会员明细 - cuMemberTradeService.batchSaveTradeByMemberCode(saveMemberTradeList); - - // 奖金账户有变化,需要同步处理 可提现奖金账户 - BigDecimal bonusBigDecimal = ReflectUtils.invokeGetter(updateMemberAccount, MemberFieldConstants.ACCOUNT + 4); - if (null != bonusBigDecimal && bonusBigDecimal.compareTo(BigDecimal.ZERO) != 0) { - // 奖金账户变化不为空,则需要同步处理 奖金可提现账户 - ReflectUtils.invokeSetter(updateMemberAccount, MemberFieldConstants.WITHDRAW_ACCOUNT + 4, bonusBigDecimal); - } - // 更新会员余额 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); - - // 更新创建人账号(根据订单类型不同,进行处理) - switch (EOrderType.getEnumByValue(saOrder.getOrderType())) { - case REGISTER_ORDER: - // 注册类订单,需要更新用户为已注销状态 - LambdaUpdateWrapper memberUpdateWrapper = new LambdaUpdateWrapper<>(); - memberUpdateWrapper.eq(CuMember::getPkId, saOrder.getPkMember()); - memberUpdateWrapper.set(CuMember::getPkModified, userId); - memberUpdateWrapper.set(CuMember::getModifiedTime, nowDate); - memberUpdateWrapper.set(CuMember::getCategory, ECategory.LOGGED_OUT.getValue()); - cuMemberService.update(memberUpdateWrapper); - // 添加会员信息修改记录 - CuMemberChangeLog cuMemberChangeLog = new CuMemberChangeLog(); - cuMemberChangeLog.setPkMember(saOrder.getPkMember()); - cuMemberChangeLog.setChangeType(EMemberChangeType.ORDER_RETURN.getValue()); - cuMemberChangeLog.setChangeAfter(ECategory.LOGGED_OUT.getLabel()); - cuMemberChangeLogService.save(cuMemberChangeLog); - } - } - @Transactional(rollbackFor = Exception.class) @Override public void orderReturnMember(List pkMemberList, Long userId) { @@ -1388,7 +1163,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { Date nowDate = new Date(); // 会员账户 - CuMemberAccount cuMemberAccount = cuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); + CuMemberAccount cuMemberAccount = iCuMemberAccountService.queryCuMemberAccountByPkMember(pkMember); // 会员更新账户 CuMemberAccount updateMemberAccount = new CuMemberAccount(); updateMemberAccount.setPkMember(pkMember); @@ -1417,7 +1192,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { // 保存会员交易明细 cuMemberTradeService.save(cuMemberTrade); // 更新会员账户 - cuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); + iCuMemberAccountService.updateMemberAccount(updateMemberAccount, userId); return null; } @@ -1429,90 +1204,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { return saveLevelUpgrade(cuMember, EUpgradeType.ACTIVITY_UPGRADE.getValue(), saOrder, pkOldLevel); } - @Override - public CuMember queryCuMemberPlaceDept(CuMember cuMember, Boolean isFirst, Boolean isFirstAchieve) { - Long pkMember = cuMember.getPkParent(); - Integer pkCountry = cuMember.getPkSettleCountry(); - // 获取推荐人的左右区 - CuMember parentMember = cuMemberService.queryMember(pkMember); - int placeDept; - // 查询当前的业绩 - CuMemberAchieve cuMemberAchieve = cuMemberAchieveService.queryCuMemberAchieveByPkMember(pkMember, pkCountry); - placeDept = getPlaceDept(isFirst, isFirstAchieve, cuMemberAchieve, parentMember.getPkId()); - CuMemberExt cuMemberExt = cuMemberService.queryPlaceSponsorLastLeft(pkMember, placeDept); - CuMember placeCuMember = new CuMember(); - if (cuMemberExt != null) { - placeCuMember.setPkPlaceParent(cuMemberExt.getPkId()); - placeCuMember.setMemberCode(cuMemberExt.getMemberCode()); - placeCuMember.setMemberName(cuMemberExt.getMemberName()); - placeCuMember.setPkVertex(cuMemberExt.getPkVertex()); - placeCuMember.setServiceCode(cuMemberExt.getServiceCode()); - placeCuMember.setNickName(cuMemberExt.getNickName()); - placeDept = EPlaceDept.LEFT_DEPT.getValue(); - if (cuMemberExt.getPkId().equals(pkMember)) { - placeDept = EPlaceDept.RIGHT_DEPT.getValue(); - } - } else { - placeCuMember.setPkPlaceParent(parentMember.getPkId()); - placeCuMember.setMemberCode(parentMember.getMemberCode()); - placeCuMember.setMemberName(parentMember.getMemberName()); - placeCuMember.setPkVertex(parentMember.getPkVertex()); - placeCuMember.setServiceCode(parentMember.getServiceCode()); - placeCuMember.setNickName(parentMember.getNickName()); - } - placeCuMember.setPlaceDept(placeDept); - return placeCuMember; - } - - /** - * 获得左右区 - * - * @param isFirst 是否收单 - * @param isFirstAchieve 受否判断首购业绩 - * @param cuMemberAchieve 业绩 - * @return: Integer - * @Author: sui q - * @Date: 2023/3/15 9:35 - */ - private Integer getPlaceDept(Boolean isFirst, Boolean isFirstAchieve, CuMemberAchieve cuMemberAchieve, Long pkParent) { - int placeDept = EPlaceDept.LEFT_DEPT.getValue(); - if (!isFirst) { - if (cuMemberAchieve != null) { - if (isFirstAchieve) { - // 分享专区,快速注册判断首购业绩,比较左右区 放入小区 - if (ComputeUtil.compareGreaterThan(cuMemberAchieve.getASumPv(), cuMemberAchieve.getBSumPv())) { - placeDept = EPlaceDept.RIGHT_DEPT.getValue(); - } - } else { - // 嗨粉判断复购业绩 放入小区 - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberAchieve.getRepASumPv(), cuMemberAchieve.getRepBSumPv()))) { - if (ComputeUtil.compareValue(cuMemberAchieve.getRepASumPv(), cuMemberAchieve.getRepBSumPv())) { - placeDept = EPlaceDept.RIGHT_DEPT.getValue(); - } - } else { - // 验证左右区人数,放入人数少的 - List personNumList = cuMemberService.queryMemberLeftRightCount(pkParent); - if (personNumList != null && personNumList.size() > 1) { - long leftNum = 0; - long rigthNum = 0; - for (CuMember member : personNumList) { - if (EPlaceDept.LEFT_DEPT.getValue() == member.getPlaceDept()) { - leftNum = member.getPkId(); - } else { - rigthNum = member.getPkId(); - } - } - if (leftNum > rigthNum) { - placeDept = EPlaceDept.RIGHT_DEPT.getValue(); - } - } - } - } - } - } - return placeDept; - } - @Transactional(rollbackFor = Exception.class) @Override public void saveRetailMember(CuMember cuMember, SaOrderExt saOrder, CuMemberAccountExt cuMemberAccountExt) { @@ -1525,7 +1216,7 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { .build(); cuMemberAccount.setPkCreator(cuMember.getPkCreator()); cuMemberAccount.setPkCountry(cuMember.getPkSettleCountry()); - cuMemberAccountService.save(cuMemberAccount); + iCuMemberAccountService.save(cuMemberAccount); // 保存会员注册信息 CuMemberRegister cuMemberRegister = BeanUtil.copyProperties(cuMember, CuMemberRegister.class); @@ -1550,9 +1241,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { } this.handleRetailMemberAccount(saOrder, cuMemberAccountExt); - - // 推送会员激活处理 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE, RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_KEY, Collections.singletonList(cuMember.getPkId())); } @Transactional(rollbackFor = Exception.class) @@ -1561,12 +1249,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { boolean updateFlag = false; LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); -// if (null != saOrder.getPkGrade()) { -// updateWrapper.set(CuMember::getPkSettleGrade, saOrder.getPkGrade()); -// updateFlag = true; -// -// cuMember.setPkSettleGrade(saOrder.getPkGrade()); -// } if (activateFlag) { updateWrapper.set(null != cuMember.getIsActivate(), CuMember::getIsActivate, cuMember.getIsActivate()); updateWrapper.set(null != cuMember.getPayStatus(), CuMember::getPayStatus, cuMember.getPayStatus()); @@ -1580,11 +1262,6 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { cuMemberService.update(updateWrapper); } -// if (!cuMember.getPkSettleGrade().equals(saOrder.getPkGradeOld())) { -// // 保存会员等级变动(如果旧等级和新等级相同,则不记录) -// saveLevelUpgrade(cuMember, EUpgradeType.BUY_UPGRADE.getValue(), saOrder, saOrder.getPkGradeOld()); -// } - this.handleRetailMemberAccount(saOrder, cuMemberAccountExt); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index 002e2a6c..d2dc5e91 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -27,15 +27,6 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRegister::getPkMember, pkMember); - queryWrapper.orderByAsc(CuMemberRegister::getPayTime); - List cuMemberRegisters = baseMapper.selectList(queryWrapper); - return cuMemberRegisters.get(0); - } - @Override public void updateCuMemberRegister(CuMemberRegister cuMemberRegister) { baseMapper.updateCuMemberRegister(cuMemberRegister); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java new file mode 100644 index 00000000..f1a5c5bd --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRetailServiceImpl.java @@ -0,0 +1,37 @@ +package com.hzs.member.base.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.domain.member.base.CuMemberRetail; +import com.hzs.member.base.mapper.CuMemberRetailMapper; +import com.hzs.member.base.service.ICuMemberRetailService; +import com.hzs.member.base.vo.MemberPointVO; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author bd + * @since 2025-09-25 + */ +@Service +public class CuMemberRetailServiceImpl extends ServiceImpl implements ICuMemberRetailService { + + @Override + public Integer getFindCuMemberRetailDetail(String settleTableName) { + return baseMapper.getFindCumemberRetailDetail(settleTableName); + } + + @Override + public List getMemberPointByMemberCode(String settleDetailTableName, String settleTableName, String memberCode, String sort, String sortColumn) { + return baseMapper.getMemberPointByMemberCode(settleDetailTableName,settleTableName,memberCode,sort,sortColumn); + } + + @Override + public MemberPointVO getMemberPointByUserId(String settleDetailTableName,String settleTableName, Long userId) { + return baseMapper.getMemberPointByUserId(settleDetailTableName,settleTableName,userId); + } +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index df8fb41d..8fca1f7c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -52,6 +52,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO; import com.hzs.member.marketnews.param.MarketNewsParam; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.member.share.param.ShareRegisterParam; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; import com.hzs.retail.member.param.ShareRetailMemberParam; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; @@ -67,7 +68,6 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.ApprovalSubmitDTO; import com.hzs.system.sys.dto.BusinessLogDTO; import com.hzs.system.sys.dto.LoginUser; -import io.jsonwebtoken.lang.Collections; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -79,7 +79,6 @@ import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.text.NumberFormat; import java.util.*; -import java.util.concurrent.TimeUnit; import java.util.function.Function; import java.util.stream.Collectors; @@ -142,21 +141,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return save; } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMember::getPkParent, pkReference); - queryWrapper.eq(CuMember::getCategory, ECategory.NORMAL.getValue()); - queryWrapper.eq(CuMember::getPayStatus, EPayStatus.PAID.getValue()); - List customerList = new ArrayList<>(); - customerList.add(ECustomerType.NORMAL.getValue()); - customerList.add(ECustomerType.EMPTY_ORDER.getValue()); - customerList.add(ECustomerType.FANS.getValue()); - queryWrapper.in(CuMember::getCustomerType, customerList); - Integer count = baseMapper.selectCount(queryWrapper); - return count == null ? 0 : count; - } - @Override public CuMemberExt getMemberById(Long memberId) { return baseMapper.queryLoginMember(null, memberId); @@ -201,26 +185,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return this.count(queryWrapper) > 0; } - @Override - public List queryPlaceSponsorOnUmbrella(Long memberId) { - return baseMapper.selectPlaceSponsorOnUmbrella(memberId, null, null); - } - - @Override - public List queryPlaceSponsorOnUmbrella(Long memberId, String memberCode, String phone) { - return baseMapper.selectPlaceSponsorOnUmbrella(memberId, memberCode, phone); - } - - @Override - public List querySponsorOnUmbrella(Long memberId, List memberCodeList) { - return baseMapper.querySponsorOnUmbrella(memberId, memberCodeList); - } - - @Override - public List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList) { - return baseMapper.selectPlaceSponsorUnderUmbrellaByCondition(memberId, cuMemberExtList); - } - @Override public List queryPlaceSponsorUnderUmbrella(Long memberId, String... placeParent) { if (placeParent != null && placeParent.length > 0) { @@ -230,29 +194,6 @@ public class CuMemberServiceImpl extends ServiceImpl i } } - @Override - public CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept) { - CuMemberExt cuMemberExt = baseMapper.selectPlaceSponsorLastLeft(memberId, placeDept); - if (placeDept == EPlaceDept.LEFT_DEPT.getValue()) { - return cuMemberExt; - } else { - // 1判断是否存在极右极左 至少2层推荐 - // 2不存在查询code是否存在第二部门安置人 1层推荐 - // 3不存在 code就是右区的极左极下 没有推荐 - if (cuMemberExt == null) { - // 2023.11.28 添加 category(10) 查询条件,待激活、死活也占点位,查询也需要算上 - List cuMemberExtList = baseMapper.queryMemberInfoByCondition( - CuMember.builder().pkPlaceParent(memberId).placeDept(placeDept).category(10).build()); - if (Collections.isEmpty(cuMemberExtList)) { - CuMember member = getMember(memberId); - return BeanUtil.copyProperties(member, CuMemberExt.class); - } - return cuMemberExtList.get(0); - } - } - return cuMemberExt; - } - @Override public List queryBloodKinshipOnUmbrella(Long memberId) { return baseMapper.selectBloodKinshipOnUmbrella(memberId); @@ -2374,7 +2315,7 @@ public class CuMemberServiceImpl extends ServiceImpl i @Override public CuMember shareRegisterMember(ShareRegisterParam registerParam) { // 处理等级 - GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.START_UP.getValue(), CountryConstants.CHINA_COUNTRY).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.MEMBER.getValue(), CountryConstants.CHINA_COUNTRY).getData(); if (null == gradeDTO) { return null; } @@ -2478,11 +2419,6 @@ public class CuMemberServiceImpl extends ServiceImpl i return baseMapper.selectRegList(marketNewsParam); } - @Override - public int checkParent(String topCode, Long pkMember) { - return baseMapper.checkParent(topCode, pkMember); - } - @Override public Map checkMemberCodeExist(Collection codeList, Boolean checkEmpty, Long excludeMemberEmpty) { Map resultMap = new HashMap<>(); @@ -2931,11 +2867,6 @@ public class CuMemberServiceImpl extends ServiceImpl i } } - @Override - public List queryMemberLeftRightCount(Long pkMember) { - return baseMapper.queryMemberLeftRightCount(pkMember); - } - @Override public CuMemberExt queryRegisterOrder(String orderCode, Long pkMember) { return baseMapper.queryRegisterOrder(orderCode, pkMember); @@ -3059,6 +2990,7 @@ public class CuMemberServiceImpl extends ServiceImpl i * @param prefix 会员编号前缀 * @return */ + @Override public String createRetailMemberCode(String prefix) { if (StringUtils.isEmpty(prefix)) { prefix = SysConstants.RETAIL_PREFIX; @@ -3246,14 +3178,20 @@ public class CuMemberServiceImpl extends ServiceImpl i // 根据类型查询所有人各类型的订单业绩汇总 List censusSummaryList = new ArrayList<>(); for (String day : days) { - censusSummaryParam.setTime(day); + censusSummaryParam.setTime(day);// 将体系转换成集合类型 + if (censusSummaryParam.getPkBdVertexStr() != null) { + censusSummaryParam.setPkBdVertexStrList(Arrays.stream(censusSummaryParam.getPkBdVertexStr().split(",")) + .map(Integer::valueOf) + .collect(Collectors.toList())); + } + List memberMeritsSummaryVoList = baseMapper.queryDateBySummary(censusSummaryParam); Map memberMeritsSummaryMap = memberMeritsSummaryVoList.stream().collect(Collectors.toMap(MemberMeritsSummaryVo::getOrderType, Function.identity())); CensusSummaryVo censusSummaryVo = new CensusSummaryVo(); censusSummaryVo.setSettleDate(day); - // 注册 + // 精品 BigDecimal reAmount = BigDecimal.ZERO; BigDecimal reAchieve = BigDecimal.ZERO; if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REGISTER.getValue()) != null) { @@ -3263,7 +3201,7 @@ public class CuMemberServiceImpl extends ServiceImpl i censusSummaryVo.setRegisterAmount(reAmount); censusSummaryVo.setRegisterPv(reAchieve); - // 升级 + // 甄选 BigDecimal upAmount = BigDecimal.ZERO; BigDecimal upAchieve = BigDecimal.ZERO; if (memberMeritsSummaryMap.get(EOrderType.RETAIL_UPGRADE.getValue()) != null) { @@ -3273,33 +3211,53 @@ public class CuMemberServiceImpl extends ServiceImpl i censusSummaryVo.setUpgradeAmount(upAmount); censusSummaryVo.setUpgradePv(upAchieve); - // 首购 - censusSummaryVo.setFirstPurchaseAmount(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount())); - censusSummaryVo.setFirstPurchasePv(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv())); - - // 复购订单 - BigDecimal repurchaseAmount = BigDecimal.ZERO; - BigDecimal repurchaseAchieve = BigDecimal.ZERO; + // 商城 + BigDecimal repAmount = BigDecimal.ZERO; + BigDecimal repAchieve = BigDecimal.ZERO; if (memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()) != null) { - repurchaseAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); - repurchaseAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); - } - // 复消 - if (memberMeritsSummaryMap.get(EOrderType.CONSUME_ORDER.getValue()) != null) { - repurchaseAmount = repurchaseAmount.add(memberMeritsSummaryMap.get(EOrderType.RETAIL_CONSUME.getValue()).getAmount()); + repAmount = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAmount(); + repAchieve = memberMeritsSummaryMap.get(EOrderType.RETAIL_REPURCHASE.getValue()).getAchieve(); } + censusSummaryVo.setRepurchaseAmount(repAmount); + censusSummaryVo.setRepurchasePv(repAchieve); - // 复购 - censusSummaryVo.setRepurchaseAmount(repurchaseAmount); - censusSummaryVo.setRepurchasePv(repurchaseAchieve); + // 五折 + BigDecimal disAmount = BigDecimal.ZERO; + BigDecimal disAchieve = BigDecimal.ZERO; + if (memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()) != null) { + disAmount = memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()).getAmount(); + disAchieve = memberMeritsSummaryMap.get(EOrderType.DISCOUNT_ORDER.getValue()).getAchieve(); + } + censusSummaryVo.setDiscountAmount(disAmount); + censusSummaryVo.setDiscountPv(disAchieve); // 金额总计 - censusSummaryVo.setAmountTotal(censusSummaryVo.getFirstPurchaseAmount().add(censusSummaryVo.getRepurchaseAmount())); + censusSummaryVo.setAmountTotal(censusSummaryVo.getRegisterAmount().add(censusSummaryVo.getUpgradeAmount()) + .add(censusSummaryVo.getRepurchaseAmount()).add(censusSummaryVo.getDiscountAmount())); // 业绩汇总 - censusSummaryVo.setPvTotal(censusSummaryVo.getFirstPurchasePv().add(censusSummaryVo.getRepurchasePv())); + censusSummaryVo.setPvTotal(censusSummaryVo.getRegisterPv().add(censusSummaryVo.getUpgradePv()) + .add(censusSummaryVo.getRepurchasePv()).add(censusSummaryVo.getDiscountPv())); censusSummaryList.add(censusSummaryVo); } return censusSummaryList; } + + @Override + public CuMemberExt queryFansOrder(String orderCode) { + return baseMapper.queryFansOrder(orderCode); + } + + @Override + public Integer getMemberPhoneCount(String phone) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(CuMember::getDelFlag, EDelFlag.UN_DELETE.getValue()); + wrapper.eq(CuMember::getPhone, phone); + return baseMapper.selectCount(wrapper); + } + + @Override + public CuMemberDetailDTO getCuMemberDetailById(Long pointMember) { + return baseMapper.getCuMemberDetailById(pointMember); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java index 484846da..ed3b1eea 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberShareServiceImpl.java @@ -4,30 +4,12 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.member.base.mapper.CuMemberShareMapper; import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import org.springframework.stereotype.Service; -import java.util.List; - /** * 分享注册记录会员 服务实现类 - * - * @author hzs - * @since 2023-03-15 */ @Service public class CuMemberShareServiceImpl extends ServiceImpl implements ICuMemberShareService { - /** - * 海粉列表 - * - * @param seaFlourParam - * @return - */ - @Override - public List seaFlourList(SeaFlourParam seaFlourParam) { - return baseMapper.seaFlourList(seaFlourParam); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java index b45e29ac..8bfe6910 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberTeamServiceImpl.java @@ -18,17 +18,6 @@ import java.util.List; @Service public class CuMemberTeamServiceImpl extends ServiceImpl implements ICuMemberTeamService { - @Override - public CuMemberTeamExt getCuMemberTeamById(Long pkMember) { - CuMemberTeamExt cuMemberTeamExtParam = new CuMemberTeamExt(); - cuMemberTeamExtParam.setPkMember(pkMember); - List cmtExtList = baseMapper.queryCuMemberTeam(cuMemberTeamExtParam); - if (null != cmtExtList && cmtExtList.size() > 0) { - return cmtExtList.get(0); - } - return null; - } - @Override public List queryCuMemberTeam(CuMemberTeamExt cuMemberTeamExt) { return baseMapper.queryCuMemberTeam(cuMemberTeamExt); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java new file mode 100644 index 00000000..fc3f0aad --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/ICumemberRetailDetailServiceImpl.java @@ -0,0 +1,170 @@ +package com.hzs.member.base.service.impl; + +import cn.hutool.core.lang.tree.Tree; +import cn.hutool.core.lang.tree.TreeUtil; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.common.core.enums.EBonusStage; +import com.hzs.common.core.enums.EBonusStageStatus; +import com.hzs.common.core.enums.EBonusStageType; +import com.hzs.common.core.enums.EMemberChildNodeType; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; +import com.hzs.common.domain.member.base.CuMember; +import com.hzs.member.base.mapper.CuMemberRetailDetailMapper; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.dto.CuMemberDetailDTO; +import com.hzs.member.structure.controller.dto.CuMemberPointDTO; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; +import java.util.stream.Stream; + +@Service +public class ICumemberRetailDetailServiceImpl extends ServiceImpl implements ICumemberRetailDetailService { + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICumemberRetailDetailService iCumemberRetailDetailService; + @Override + public List getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName) { + return baseMapper.getChildList(memberCode,stage,stageStatus,settleTableName); + } + + @Override + public CuMemberRetailDetail getCuMemberRetailDetail(String memberCode, Integer stage, Integer stageStatus,String childNode,String settleTableName) { + return baseMapper.getCuMemberRetailDetailExt(memberCode,stage,stageStatus,childNode,settleTableName); + } + + @Override + public Integer getFindCumemberRetailDetail(String settleTableName) { + return baseMapper.getFindCumemberRetailDetail(settleTableName); + } + + @Override + public List> convertToNodeList(CuMemberRetailDetail cuMemberRetailDetail) { + // 所有会员id + Set ids = new LinkedHashSet<>(); + ids.add(cuMemberRetailDetail.getPkMember()); + // 过滤空的会员id + Stream.of( + cuMemberRetailDetail.getPointMember11(), cuMemberRetailDetail.getPointMember12(), + cuMemberRetailDetail.getPointMember21(), cuMemberRetailDetail.getPointMember22(), cuMemberRetailDetail.getPointMember23(), cuMemberRetailDetail.getPointMember24(), + cuMemberRetailDetail.getPointMember31(), cuMemberRetailDetail.getPointMember32(), cuMemberRetailDetail.getPointMember33(), cuMemberRetailDetail.getPointMember34(), + cuMemberRetailDetail.getPointMember35(), cuMemberRetailDetail.getPointMember36(), cuMemberRetailDetail.getPointMember37(), cuMemberRetailDetail.getPointMember38() + ).filter(Objects::nonNull).forEach(ids::add); + + // 查找对应会员信息 + List members; + if (ids.isEmpty()) { + members = Collections.emptyList(); + } else { + members = iCuMemberService.listByIds(new ArrayList<>(ids)); + } + + Map memberMap = members.stream() + .collect(Collectors.toMap(CuMember::getPkId, Function.identity(), (a, b) -> a)); + + // 构建node + List> nodeList = new ArrayList<>(); + nodeList.add(makeNode(EMemberChildNodeType.ROOT.getId(), EMemberChildNodeType.ROOT.getParentId(), EMemberChildNodeType.ROOT.getLabel(), cuMemberRetailDetail.getChildNode(),cuMemberRetailDetail.getPkMember(), memberMap)); + + nodeList.add(makeNode(EMemberChildNodeType.NODE1.getId(), EMemberChildNodeType.NODE1.getParentId(), EMemberChildNodeType.NODE1.getLabel(), cuMemberRetailDetail.getPoint11(), cuMemberRetailDetail.getPointMember11(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE2.getId(), EMemberChildNodeType.NODE2.getParentId(), EMemberChildNodeType.NODE2.getLabel(), cuMemberRetailDetail.getPoint12(),cuMemberRetailDetail.getPointMember12(), memberMap)); + + nodeList.add(makeNode(EMemberChildNodeType.NODE3.getId(), EMemberChildNodeType.NODE3.getParentId(), EMemberChildNodeType.NODE3.getLabel(), cuMemberRetailDetail.getPoint21(),cuMemberRetailDetail.getPointMember21(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE4.getId(), EMemberChildNodeType.NODE4.getParentId(), EMemberChildNodeType.NODE4.getLabel(), cuMemberRetailDetail.getPoint22(),cuMemberRetailDetail.getPointMember22(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE5.getId(), EMemberChildNodeType.NODE5.getParentId(), EMemberChildNodeType.NODE5.getLabel(), cuMemberRetailDetail.getPoint23(),cuMemberRetailDetail.getPointMember23(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE6.getId(), EMemberChildNodeType.NODE6.getParentId(), EMemberChildNodeType.NODE6.getLabel(), cuMemberRetailDetail.getPoint24(),cuMemberRetailDetail.getPointMember24(), memberMap)); + + nodeList.add(makeNode(EMemberChildNodeType.NODE7.getId(), EMemberChildNodeType.NODE7.getParentId(), EMemberChildNodeType.NODE7.getLabel(), cuMemberRetailDetail.getPoint31(),cuMemberRetailDetail.getPointMember31(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE8.getId(), EMemberChildNodeType.NODE8.getParentId(), EMemberChildNodeType.NODE8.getLabel(), cuMemberRetailDetail.getPoint32(),cuMemberRetailDetail.getPointMember32(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE9.getId(), EMemberChildNodeType.NODE9.getParentId(), EMemberChildNodeType.NODE9.getLabel(), cuMemberRetailDetail.getPoint33(),cuMemberRetailDetail.getPointMember33(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE10.getId(), EMemberChildNodeType.NODE10.getParentId(), EMemberChildNodeType.NODE10.getLabel(), cuMemberRetailDetail.getPoint34(),cuMemberRetailDetail.getPointMember34(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE11.getId(), EMemberChildNodeType.NODE11.getParentId(), EMemberChildNodeType.NODE11.getLabel(), cuMemberRetailDetail.getPoint35(),cuMemberRetailDetail.getPointMember35(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE12.getId(), EMemberChildNodeType.NODE12.getParentId(), EMemberChildNodeType.NODE12.getLabel(), cuMemberRetailDetail.getPoint36(),cuMemberRetailDetail.getPointMember36(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE13.getId(), EMemberChildNodeType.NODE13.getParentId(), EMemberChildNodeType.NODE13.getLabel(), cuMemberRetailDetail.getPoint37(),cuMemberRetailDetail.getPointMember37(), memberMap)); + nodeList.add(makeNode(EMemberChildNodeType.NODE14.getId(), EMemberChildNodeType.NODE14.getParentId(), EMemberChildNodeType.NODE14.getLabel(), cuMemberRetailDetail.getPoint38(),cuMemberRetailDetail.getPointMember38(), memberMap)); + + // 构造树结构 + return TreeUtil.build(nodeList, EMemberChildNodeType.ROOT.getParentId(), (node, tree) -> { + tree.setId((String) node.get("id")); + tree.setParentId((String) node.get("parentId")); + tree.setName((String) node.get("label")); + tree.putExtra("memberCode", node.get("memberCode")); + tree.putExtra("memberName", node.get("memberName")); + tree.putExtra("nodeCode", node.get("nodeCode")); + tree.putExtra("pointMember", node.get("pointMember")); + }); + } + + @Override + public CuMemberRetailDetail getCuMemberRetailDetailByUserId(Long userId, Integer stage, Integer stageStatus, String childNode, String settleTableName) { + return baseMapper.getCuMemberRetailDetailByUserId(userId,stage,stageStatus,childNode,settleTableName); + } + + @Override + public List getChildListByUserId(Long userId, Integer stage, Integer stageStatus, String settleTableName) { + return baseMapper.getChildListByUserId(userId,stage,stageStatus,settleTableName); + } + + @Override + public List getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) { + List cuMemberRetailDetailDTOList = baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus); + cuMemberRetailDetailDTOList.forEach(item -> { + item.setPointTypeLabel(EBonusStageType.getEBonusStageTypeByValue(item.getPointType()).getLabel()); + item.setStageLabel(EBonusStage.getEBonusStageByValue(item.getStage()).getLabel()); + item.setStageStatusLabel(EBonusStageStatus.getEBonusStageStatusLabel(item.getStageStatus()).getLabel()); + }); + return cuMemberRetailDetailDTOList; + } + + @Override + public CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember, Integer stage, Integer point, String settleTableName) { + CuMemberPointDTO cuMemberPointDTO = baseMapper.getPointDetailByUserId(pointMember, stage, point, settleTableName); + CuMemberDetailDTO cuMemberDetailDTO = iCuMemberService.getCuMemberDetailById(pointMember); + if (cuMemberDetailDTO == null || cuMemberPointDTO == null) { + return null; + } + return makeCuMemberPointDetailVO(cuMemberDetailDTO,cuMemberPointDTO,point); + } + + private CuMemberPointDetailVO makeCuMemberPointDetailVO(CuMemberDetailDTO cuMemberDetailDTO, CuMemberPointDTO cuMemberPointDTO,Integer point) { + return CuMemberPointDetailVO.builder() + .memberCode(cuMemberDetailDTO.getMemberCode()) + .memberName(cuMemberDetailDTO.getMemberName() + "-" + point) + .awardsName(cuMemberDetailDTO.getAwardsName()) + .vertexName(cuMemberDetailDTO.getVertexName()) + .creationTime(cuMemberPointDTO.getCreationTime()) + .build(); + } + + + private Map makeNode(String id, String parentId, String label,Integer pointMember, + Long memberId, Map memberMap) { + Map map = new HashMap<>(); + map.put("id", id); + map.put("parentId", parentId); + map.put("label", label); + map.put("nodeCode", label); + + if (memberId != null && memberMap.containsKey(memberId)) { + CuMember member = memberMap.get(memberId); + map.put("memberCode", member.getMemberCode()); + map.put("memberName", member.getMemberName()); + map.put("pointMember", pointMember); + } else { + // 没有信息置空 + map.put("memberCode", ""); + map.put("memberName", ""); + map.put("pointMember", ""); + } + return map; + } + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberPointVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberPointVO.java new file mode 100644 index 00000000..c77a6603 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/MemberPointVO.java @@ -0,0 +1,59 @@ +package com.hzs.member.base.vo; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.hzs.common.core.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +public class MemberPointVO { + /** + * 会员编号 + */ + @Excel(name = "会员编号") + private String memberCode; + /** + * 会员姓名 + */ + @Excel(name = "会员姓名") + private String memberName; + /** + * 子点位总数 + */ + @Excel(name = "子点位总数") + private Integer pointCount; + /** + * 待激活点位数 + */ + @Excel(name = "待激活点位数") + private Integer waitPointCount; + /** + * 复购业绩余额 + */ + @Excel(name = "复购业绩余额") + private Long repPvBalance; + /** + * 期数 + */ + @Excel(name = "期数",dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date memberSettlePeriod; + + @Excel(name = "一阶未完成数量") + private Integer firstOrderQuantity; + + @Excel(name = "二阶未完成数量") + private Integer secondOrderQuantity; + + @Excel(name = "三阶未完成数量") + private Integer threeOrderQuantity; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java index 39db0474..7169ca10 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/vo/RetailMemberVO.java @@ -118,7 +118,7 @@ public class RetailMemberVO implements Serializable { /** * 消费业绩 注册业绩 */ - @Excel(name = "注册业绩($)") + @Excel(name = "注册业绩") private BigDecimal consumeAchieve; /** * 隶属体系 @@ -161,26 +161,7 @@ public class RetailMemberVO implements Serializable { private String memberAccountVal; @Excel(name = "收益状态") private String incomeStatusVal; - /** - * 省 - */ - @Excel(name = "收益区省") - private String giftProvince; - private Integer province; - - /** - * 市 - */ - @Excel(name = "收益区市") - private String giftCity; - private Integer city; - /** - * 县(区) - */ - @Excel(name = "收益区县(区)") - private String giftCounty; - private Integer county; /** * 创建时间 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java index f0d1d24f..c5e4c3e5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushHisMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; /** - *

* 会员奖金-直推历史轮次记录 Mapper 接口 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface CuMemberBonusPushHisMapper extends BaseMapper { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java index 67dea457..46d4d53c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/mapper/CuMemberBonusPushMapper.java @@ -2,32 +2,10 @@ package com.hzs.member.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** - *

* 会员奖金-直推收益明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface CuMemberBonusPushMapper extends BaseMapper { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(@Param("pkMember") Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java index 35dd9eb3..5c75b534 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushHisService.java @@ -3,23 +3,9 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务类 - *

- * - * @author hzs - * @since 2023-09-10 */ public interface ICuMemberBonusPushHisService extends IService { - /* - * @description: 查询会员历史推荐 - * @author: sui q - * @date: 2023/9/10 14:23 - * @param: null null - **/ - List queryCuMemberBonusPushHis(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java index b915c039..52a03351 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/ICuMemberBonusPushService.java @@ -1,36 +1,10 @@ package com.hzs.member.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.bonus.CuMemberBonus; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.apache.ibatis.annotations.Param; - -import java.util.List; -import java.util.Set; /** - *

* 会员奖金-直推收益明细表 服务类 - *

- * - * @author hzs - * @since 2022-11-10 */ public interface ICuMemberBonusPushService extends IService { - - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - List tripleCycleList(TripleCycleListParam tripleCycleListParam); - - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - CuMemberBonusPush nextRound(Long pkMember); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java index 66e55b27..0acb3e7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java @@ -1,32 +1,15 @@ package com.hzs.member.bonus.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; import com.hzs.member.bonus.mapper.CuMemberBonusPushHisMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 会员奖金-直推历史轮次记录 服务实现类 - *

- * - * @author hzs - * @since 2023-09-10 */ @Service public class CuMemberBonusPushHisServiceImpl extends ServiceImpl implements ICuMemberBonusPushHisService { - @Override - public List queryCuMemberBonusPushHis(Long pkMember) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("(round+1) round,second,cal_achieve"); - queryWrapper.eq(MemberFieldConstants.PK_MEMBER, pkMember); - queryWrapper.orderByDesc("round,second"); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java index 7b335116..23194c45 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/bonus/service/impl/CuMemberBonusPushServiceImpl.java @@ -2,45 +2,14 @@ package com.hzs.member.bonus.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; -import com.hzs.member.achieve.service.impl.CuMemberBonusSettle; import com.hzs.member.bonus.mapper.CuMemberBonusPushMapper; import com.hzs.member.bonus.service.ICuMemberBonusPushService; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.List; -import java.util.Set; - /** - *

* 会员奖金-直推收益明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-11-10 */ @Service public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusPushService { - /** - * 查询三单循环列表 - * @param tripleCycleListParam - * @return - */ - @Override - public List tripleCycleList(TripleCycleListParam tripleCycleListParam) { - return baseMapper.tripleCycleList(tripleCycleListParam); - } - /** - * 获取下一轮次 - * @param pkMember - * @return - */ - @Override - public CuMemberBonusPush nextRound(Long pkMember) { - return baseMapper.nextRound(pkMember); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java index d5073e16..64916347 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/param/CensusSummaryParam.java @@ -51,5 +51,9 @@ public class CensusSummaryParam { * 体系 */ private String pkBdVertexStr; + /** + * 体系集合 + */ + private List pkBdVertexStrList; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java index 91faac1a..b2ad770d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/census/vo/CensusSummaryVo.java @@ -19,54 +19,29 @@ public class CensusSummaryVo { @Excel(name = "结算时间") private String settleDate; - /** - * 注册金额 - */ - @Excel(name = "注册金额") + @Excel(name = "精品金额") private BigDecimal registerAmount; - /** - * 注册业绩 - */ - @Excel(name = "注册业绩") + @Excel(name = "精品业绩") private BigDecimal registerPv; - /** - * 升级金额 - */ - @Excel(name = "升级金额") + @Excel(name = "甄选金额") private BigDecimal upgradeAmount; - /** - * 升级业绩 - */ - @Excel(name = "升级业绩") + @Excel(name = "甄选业绩") private BigDecimal upgradePv; - /** - * 首购金额 - */ - @Excel(name = "首购金额") - private BigDecimal firstPurchaseAmount; - - /** - * 首购业绩 - */ - @Excel(name = "首购业绩") - private BigDecimal firstPurchasePv; - - /** - * 复购金额 - */ - @Excel(name = "复购金额") + @Excel(name = "商城金额") private BigDecimal repurchaseAmount; - /** - * 复购pv - */ - @Excel(name = "复购业绩") + @Excel(name = "商城业绩") private BigDecimal repurchasePv; + @Excel(name = "五折金额") + private BigDecimal discountAmount; + + @Excel(name = "五折业绩") + private BigDecimal discountPv; /** * 金额总计 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/controller/api/ApiCuMemberAssessController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/controller/api/ApiCuMemberAssessController.java index 978fce5c..685f9e9c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/controller/api/ApiCuMemberAssessController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/controller/api/ApiCuMemberAssessController.java @@ -63,9 +63,6 @@ public class ApiCuMemberAssessController extends BaseController { // 复购考核 orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - } else if (cuMemberAssessVO.getAssessType() == EAssessmentType.SHARE_ASSESS.getValue()) { - // 分红考核 - orderTypeList.add(EOrderType.WELFARE_ORDER.getValue()); } //默认查询当月 @@ -159,10 +156,6 @@ public class ApiCuMemberAssessController extends BaseController { // 复购订单 item.setChangeType(purAsseAdd.getValue()); item.setTradeAchieveSign("+" + tradeAchieve); - } else if (orderType == EOrderType.WELFARE_ORDER.getValue()) { - // 福利订单 - item.setChangeType(shareAsseAdd.getValue()); - item.setTradeAchieveSign("+" + tradeAchieve); } } }); @@ -233,7 +226,6 @@ public class ApiCuMemberAssessController extends BaseController { // 复购考核 orderTypeList.add(EOrderType.REPURCHASE_ORDER.getValue()); orderTypeList.add(EOrderType.MALL_ORDER.getValue()); - orderTypeList.add(EOrderType.COOPERATE_ORDER.getValue()); cuMemberAssessVO.setOrderTypeList(orderTypeList); CuMemberAssessVO order = cuMemberAssessService.getOrderAssessList(cuMemberAssessVO); @@ -246,14 +238,14 @@ public class ApiCuMemberAssessController extends BaseController { } } else if (EAssessmentType.SHARE_ASSESS.getValue() == assessType) { // 分红考核 - orderTypeList.add(EOrderType.WELFARE_ORDER.getValue()); - cuMemberAssessVO.setOrderTypeList(orderTypeList); - - CuMemberAssessVO order = cuMemberAssessService.getOrderAssessList(cuMemberAssessVO); - BigDecimal orderAchieve = BigDecimal.ZERO; - if (StringUtils.isNotNull(order)) { - monthSurplus = monthSurplus.add(order.getOrderAssAchieve()).add(orderAchieve); - } +// orderTypeList.add(EOrderType.WELFARE_ORDER.getValue()); +// cuMemberAssessVO.setOrderTypeList(orderTypeList); +// +// CuMemberAssessVO order = cuMemberAssessService.getOrderAssessList(cuMemberAssessVO); +// BigDecimal orderAchieve = BigDecimal.ZERO; +// if (StringUtils.isNotNull(order)) { +// monthSurplus = monthSurplus.add(order.getOrderAssAchieve()).add(orderAchieve); +// } } return AjaxResult.success(monthSurplus); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java deleted file mode 100644 index d6822234..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAssessExemptMapper.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface CuMemberAssessExemptMapper extends BaseMapper { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAwardsMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAwardsMapper.java index fe523df1..8e88c0db 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAwardsMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberAwardsMapper.java @@ -2,44 +2,10 @@ package com.hzs.member.detail.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 会员信息-奖衔升级记录 Mapper 接口 */ public interface CuMemberAwardsMapper extends BaseMapper { - /** - * 批量更新会员奖衔记录,此方法用于奖金结算,批量更新为删除状态,留存奖衔降级记录 - * - * @param cuMemberAwardsList 更新的人 - * @param period 期间 - */ - Integer updateBatchCuMemberAwards(@Param("cuMemberAwardsList") List cuMemberAwardsList, @Param("period") Integer period); - - /** - * 查询会员最后一条奖衔升级记录 - * - * @param cuMemberAwardsList 奖衔升级记录 - */ - List queryLastCuMemberAwards(@Param("cuMemberAwardsList") List cuMemberAwardsList); - - /** - * 批量插入奖衔记录 - * - * @param cuMemberAwardsList 需要插入的奖衔列表 - */ - Integer saveBatchCuMemberAwards(@Param("cuMemberAwardsList") List cuMemberAwardsList); - - /** - * 查询手动升级的最新一条 - * - * @param pkMember 会员ID - * @return - */ - CuMemberAwardsExt queryLastManualAwards(@Param("pkMember") Long pkMember); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java index 39503912..3891743c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberLevelMapper.java @@ -5,7 +5,6 @@ import com.hzs.common.domain.member.detail.CuMemberGrade; import com.hzs.common.domain.member.detail.CuMemberLevel; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -13,24 +12,6 @@ import java.util.List; */ public interface CuMemberLevelMapper extends BaseMapper { - /** - * 查询最新升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID(可为null) - * @return - */ - CuMemberLevel getLastUpgrade(@Param("pkMember") Long pkMember, - @Param("pkOrder") Long pkOrder); - - /** - * 查询所有升级记录 - * - * @param pkMember 会员ID - * @return - */ - List getUpgradeList(@Param("pkMember") Long pkMember); - /** * 批量保存升级记录 * @@ -47,18 +28,4 @@ public interface CuMemberLevelMapper extends BaseMapper { */ int insertGradeBatch(@Param("memberGradeList") List memberGradeList); - /** - * 查询会员升级记录 - * - * @param pkMember 会员ID - * @param gradeValue 等级值 - * @param queryTime 查询开始时间(可为空) - * @param pkCountry 所属国家 - * @return - */ - CuMemberLevel getLevelByGradeValue(@Param("pkMember") Long pkMember, - @Param("gradeValue") Integer gradeValue, - @Param("queryTime") Date queryTime, - @Param("pkCountry") Integer pkCountry); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java index 85c3bd86..7b43d310 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/mapper/CuMemberServiceLogMapper.java @@ -7,7 +7,6 @@ import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -17,13 +16,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper Integer selectByMaxApproveNumber(@Param("pkMember") Long pkMember, @Param("editType") Integer editType, @Param("approveStatus") Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(@Param("pkMember") Long pkMember, - @Param("editType") int editType, - @Param("approveStatus") int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -37,11 +29,6 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -82,28 +69,4 @@ public interface CuMemberServiceLogMapper extends BaseMapper */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(@Param("pkMember") Long pkMember); - - /** - * 查询会员办理业务日志表最新数据 - **/ - List selectTopDataList(@Param("pkMember") Long pkMember, - @Param("editTypeList") List editTypeList, - @Param("approveStatus") int approveStatus, - @Param("actEndDateStr") String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java deleted file mode 100644 index e60f1eae..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberDetailProvider.java +++ /dev/null @@ -1,49 +0,0 @@ -package com.hzs.member.detail.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.member.base.CuMemberRegister; -import com.hzs.common.domain.member.detail.CuMemberLevel; -import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; -import com.hzs.member.base.service.ICuMemberRegisterService; -import com.hzs.member.detail.ICuMemberDetailServiceApi; -import com.hzs.member.detail.service.ICuMemberAwardsService; -import com.hzs.member.detail.service.ICuMemberLevelService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * 会员升级记录dubbo服务 - */ -@DubboService -public class CuMemberDetailProvider implements ICuMemberDetailServiceApi { - - @Autowired - private ICuMemberLevelService iCuMemberLevelService; - @Autowired - private ICuMemberAwardsService iCuMemberAwardsService; - @Autowired - private ICuMemberRegisterService iCuMemberRegisterService; - - @Override - public R getLastUpgrade(Long pkMember, Long pkOrder) { - return R.ok(iCuMemberLevelService.getLastUpgrade(pkMember, pkOrder)); - } - - @Override - public R> getUpgradeList(Long pkMember) { - return R.ok(iCuMemberLevelService.getUpgradeList(pkMember)); - } - - @Override - public R queryLastManualAwards(Long pkMember) { - return R.ok(iCuMemberAwardsService.queryLastManualAwards(pkMember)); - } - - @Override - public R getMemberRegister(Long pkMember) { - return R.ok(iCuMemberRegisterService.queryCuMemberRegister(pkMember)); - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java index 0fc5091e..cdae0548 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/provider/CuMemberServiceLogProvider.java @@ -1,15 +1,12 @@ package com.hzs.member.detail.provider; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.domain.member.detail.CuMemberServiceLog; -import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.member.detail.service.ICuMemberServiceLogService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; import java.util.List; @DubboService @@ -43,32 +40,4 @@ public class CuMemberServiceLogProvider implements ICuMemberServiceLogServiceApi return iCuMemberServiceLogService.updateByBusinessNo(memberLog); } - @Override - public R> selectCuMemberServiceLog(String businessNo) { - return iCuMemberServiceLogService.selectCuMemberServiceLog(businessNo); - } - - @Override - public R queryPolicy(Long pkMember) { - return R.ok(iCuMemberServiceLogService.queryPolicy(pkMember)); - } - - @Override - public R queryCount(Long pkMember, Integer approvalBusiness, Integer approveStatus) { - LambdaQueryWrapper query = new LambdaQueryWrapper<>(); - query.eq(CuMemberServiceLog::getApproveStatus, approveStatus); - query.eq(CuMemberServiceLog::getEditType, approvalBusiness); - query.eq(CuMemberServiceLog::getPkMember, pkMember); - return R.ok(iCuMemberServiceLogService.count(query)); - } - - @Override - public R selectTopData(Long pkMember, int editType, int approveStatus) { - return R.ok(iCuMemberServiceLogService.selectTopData(pkMember, editType, approveStatus)); - } - - @Override - public R> listActivateLog(Date queryDate) { - return R.ok(iCuMemberServiceLogService.listActivateLog(queryDate)); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java deleted file mode 100644 index c50a43f9..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAssessExemptService.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.hzs.member.detail.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; - -/** - *

- * 考核业绩免考记录表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -public interface ICuMemberAssessExemptService extends IService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAwardsService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAwardsService.java index a23abec2..ceb5ddae 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAwardsService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberAwardsService.java @@ -2,7 +2,6 @@ package com.hzs.member.detail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; import java.util.Date; @@ -20,12 +19,4 @@ public interface ICuMemberAwardsService extends IService { */ void deleteCuMemberAwards(Long pkOrder, Long pkApprove, Date currentDateTime); - /** - * 查询手动开通的最新一条 - * - * @param pkMember 会员ID - * @return - */ - CuMemberAwardsExt queryLastManualAwards(Long pkMember); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java index db92ef4b..1261a153 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberLevelService.java @@ -21,23 +21,6 @@ public interface ICuMemberLevelService extends IService { */ void deleteCuMemberLevelRecord(Long pkOrder, Long pkApprove, Date currentDateTime); - /** - * 查询最新升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID(可为null) - * @return - */ - CuMemberLevel getLastUpgrade(Long pkMember, Long pkOrder); - - /** - * 查询所有升级记录 - * - * @param pkMember 会员ID - * @return - */ - List getUpgradeList(Long pkMember); - /** * 批量保存升级记录 * @@ -54,24 +37,4 @@ public interface ICuMemberLevelService extends IService { */ int insertGradeBatch(List memberGradeList); - /** - * 获取会员升级记录 - * - * @param pkMember 会员ID - * @param pkOrder 订单ID -- 可为空 - * @return - */ - List listMemberLevel(Long pkMember, Long pkOrder); - - /** - * 查询会员升级记录 - * - * @param pkMember 会员ID - * @param gradeValue 等级值 - * @param queryTime 查询开始时间(可为空) - * @param pkCountry 所属国家 - * @return - */ - CuMemberLevel getLevelByGradeValue(Long pkMember, Integer gradeValue, Date queryTime, Integer pkCountry); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java index f1ba72b5..e50b362d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/ICuMemberServiceLogService.java @@ -6,9 +6,7 @@ import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.detail.CuMemberServiceLogExt; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** @@ -25,11 +23,6 @@ public interface ICuMemberServiceLogService extends IService */ Integer selectByMaxApproveNumber(Long pkMember, Integer editType, Integer approveStatus); - /** - * 查询会员办理业务日志最新数据 - **/ - CuMemberServiceLog selectTopData(Long pkMember, int editType, int approveStatus); - /** * 查询用户是否已经存在未审核业务 **/ @@ -43,11 +36,6 @@ public interface ICuMemberServiceLogService extends IService */ List selectByServiceLogList(CuMemberServiceLog cuMemberServiceLog); - /** - * 查询审核通过的最新数据 - **/ - CuMemberServiceLogVO selectNewestServiceLog(CuMemberServiceLogVO cuMemberServiceLogVO); - /** * 查询会员原值 **/ @@ -101,11 +89,6 @@ public interface ICuMemberServiceLogService extends IService */ List queryList(Integer editType, String memberCode, String memberName, Integer pkCountry, Integer approveStatus); - /** - * 根据业务单号查询业务日志 - **/ - R> selectCuMemberServiceLog(String businessNo); - /** * 查询展示列表 * @@ -113,25 +96,4 @@ public interface ICuMemberServiceLogService extends IService */ List selectByList(CuMemberServiceLogExt memberServiceLogExt); - /** - * 查询指定会员政策币信息 - * - * @param pkMember 会员ID - * @return - */ - CuMemberServiceLogExt queryPolicy(Long pkMember); - - /** - * 查询会员多个办理业务的日志最新数据 - **/ - CuMemberServiceLogVO selectTopDataList(Long pkMember, List editType, int approveStatus, String actEndDateStr); - - /** - * 查询激活操作数据 - * - * @param queryDate - * @return - */ - List listActivateLog(@Param("queryDate") Date queryDate); - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java deleted file mode 100644 index b30e4634..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAssessExemptServiceImpl.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.hzs.member.detail.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.member.detail.CuMemberAssessExempt; -import com.hzs.member.detail.mapper.CuMemberAssessExemptMapper; -import com.hzs.member.detail.service.ICuMemberAssessExemptService; -import org.springframework.stereotype.Service; - -/** - *

- * 考核业绩免考记录表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 - */ -@Service -public class CuMemberAssessExemptServiceImpl extends ServiceImpl implements ICuMemberAssessExemptService { - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAwardsServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAwardsServiceImpl.java index a3622b68..fbcff62b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAwardsServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberAwardsServiceImpl.java @@ -1,20 +1,11 @@ package com.hzs.member.detail.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.core.enums.*; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.member.detail.CuMemberAwards; -import com.hzs.common.domain.member.detail.ext.CuMemberAwardsExt; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.detail.mapper.CuMemberAwardsMapper; import com.hzs.member.detail.service.ICuMemberAwardsService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; @@ -25,9 +16,6 @@ import java.util.*; @Service public class CuMemberAwardsServiceImpl extends ServiceImpl implements ICuMemberAwardsService { - @Autowired - private ICuMemberTreeService iCuMemberTreeService; - @Override public void deleteCuMemberAwards(Long pkOrder, Long pkApprove, Date currentDateTime) { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); @@ -38,155 +26,4 @@ public class CuMemberAwardsServiceImpl extends ServiceImpl updateAwardsRecord(List enoughAwardsMemberList, Map originalCuMemberSettleMap, - Integer period) { - if (enoughAwardsMemberList.size() == 0) { - return null; - } - // 更新奖衔记录变动 - // 增加奖衔记录表 - // 更新升奖衔的会员,插入升衔记录 - return upgradeCuMemberAwards(enoughAwardsMemberList, originalCuMemberSettleMap, period); - - } - - /** - * 插入升级记录 - * - * @param enoughAwardsMemberList 足够升级的 - * @param originalCuMemberSettleMap 记录会员原等级的map - * @param period 期间 - */ - private List upgradeCuMemberAwards(List enoughAwardsMemberList, Map originalCuMemberSettleMap, - Integer period) { - List cuMemberAwardsList = new ArrayList<>(); - if (enoughAwardsMemberList.size() > 0) { - // 记录要入库的,为了验证是否首次晋升 - enoughAwardsMemberList.forEach(enoughAwardsMember -> getCuMemberAwards(originalCuMemberSettleMap, period, cuMemberAwardsList, enoughAwardsMember)); - // 验证满足的这群人是否是首次晋升,查询出值的不是首次晋升 - List originalCuMemberAwardsList = baseMapper.queryLastCuMemberAwards(cuMemberAwardsList); - // 是首次晋升的数据 - Map cuMemberAwardsMap = new HashMap<>(ComputeUtil.mapInitCapacity(originalCuMemberAwardsList.size())); - originalCuMemberAwardsList.forEach(cuMemberAwards -> cuMemberAwardsMap.put(cuMemberAwards.getPkMember(), cuMemberAwards)); - cuMemberAwardsList.forEach(cuMemberAwards -> { - CuMemberAwards memberAwards = cuMemberAwardsMap.get(cuMemberAwards.getPkMember()); - // 没有奖衔升级记录或者奖衔升级记录是会员的 算首次晋升 - if (memberAwards == null || memberAwards.getNewLevel() == EAwards.MEMBER.getValue()) { - cuMemberAwards.setPurchaseStatus(EYesNo.YES.getIntValue()); - } - }); - // 插入记录 - baseMapper.saveBatchCuMemberAwards(cuMemberAwardsList); - } - return cuMemberAwardsList; - } - - private void getCuMemberAwards(Map originalCuMemberSettleMap, Integer period, List cuMemberAwardsList, CuMemberSettleExt enoughAwardsMember) { - CuMemberAwards cuMemberAwards = CuMemberAwards.builder() - .pkMember(enoughAwardsMember.getPkMember()) - .period(period) - .upType(EUpgradeType.AUTO_UPGRADE.getValue()) - // 原等级 - .oldLevel(originalCuMemberSettleMap.get(enoughAwardsMember.getPkMember()).getPkOriAwards()) - .newLevel(enoughAwardsMember.getPkAwards()) - // 默认不免考 - .purchaseStatus(EYesNo.NO.getIntValue()) - .build(); - cuMemberAwards.setPkCreator(MagicNumberConstants.PK_ADMIN); - cuMemberAwards.setPkCountry(enoughAwardsMember.getPkSettleCountry()); - cuMemberAwardsList.add(cuMemberAwards); - } - - /** - * 更新降衔的会员,把升衔记录删除 - * - * @param period 期间 - * @param changeAwardsList 降低奖衔的人 - * @param cuMemberAwardsList 所有变动记录的数据 - */ - private void reduceCuMemberAwards(List changeAwardsList, Integer period, List cuMemberAwardsList) { - // 验证是否有降奖衔的,降奖衔的也要更新 - if (changeAwardsList.size() > 0) { - // 更新奖衔表,将奖衔升级记录修改为删除状态 - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - baseMapper.updateBatchCuMemberAwards(changeAwardsList, period); - // 根据 changeAwardsList 查找到这群人的历史奖衔升级记录 - List hisCuMemberAwardsList = baseMapper.queryLastCuMemberAwards(changeAwardsList); - Map cuMemberAwardsMap = new HashMap<>(); - hisCuMemberAwardsList.forEach(cuMemberAwards -> cuMemberAwardsMap.put(cuMemberAwards.getPkMember(), cuMemberAwards)); - // 用于更新网体,将原有奖衔还原 - changeAwardsList.forEach(cuMemberAwards -> { - if (cuMemberAwardsMap.containsKey(cuMemberAwards.getPkMember())) { - // 原有奖衔 - cuMemberAwards.setNewLevel(cuMemberAwardsMap.get(cuMemberAwards.getPkMember()).getNewLevel()); - } else { - // 没有值的变为会员 - cuMemberAwards.setNewLevel(EAwards.MEMBER.getValue()); - } - }); - cuMemberAwardsList.addAll(changeAwardsList); - } - } - - /** - * 查询某一期变动的奖衔 - * - * @param period 奖金期 - */ - private List queryCuMemberAwardsByPeriod(Integer period) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - queryWrapper.eq(MemberFieldConstants.UP_TYPE, EUpgradeType.AUTO_UPGRADE.getValue()); - return baseMapper.selectList(queryWrapper); - } - - /** - * 验证血缘关系 - * - * @param settleTableName 结算表 - * @param cuMemberSettleExt 会员结算表 - * @param bdAwards 等级 - */ - private Boolean validateBloodRelation(String settleTableName, CuMemberSettleExt cuMemberSettleExt, BdAwards bdAwards) { - // 左区满足,且满足血缘 - if (iCuMemberTreeService.queryCuMemberSettlePlaceUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsLeft(), EPlaceDept.LEFT_DEPT.getValue(), cuMemberSettleExt.getPkMember()) && - iCuMemberTreeService.queryCuMemberSettleBloodUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsLeft(), EPlaceDept.LEFT_DEPT.getValue(), cuMemberSettleExt.getPkMember())) { - // 验证血缘,左区存在血缘关系的 - // 右区满足,且满足血缘 - // 进行验证血缘验证 - return iCuMemberTreeService.queryCuMemberSettlePlaceUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsRight(), EPlaceDept.RIGHT_DEPT.getValue(), cuMemberSettleExt.getPkMember()) && - iCuMemberTreeService.queryCuMemberSettleBloodUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsRight(), EPlaceDept.RIGHT_DEPT.getValue(), cuMemberSettleExt.getPkMember()); - } - return false; - } - - /** - * 验证左右区安置关系 - * - * @param settleTableName 结算表 - * @param bdAwards 等级 - * @param pkMember 会员 - */ - private Boolean validateCuMemberPlaceRelation(String settleTableName, BdAwards bdAwards, Long pkMember) { - // 验证左区 - if (iCuMemberTreeService.queryCuMemberSettlePlaceUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsLeft(), EPlaceDept.LEFT_DEPT.getValue(), pkMember)) { - // 在验证右区 - return iCuMemberTreeService.queryCuMemberSettlePlaceUnderUmbrella(settleTableName, bdAwards.getPkCheckAwardsRight(), EPlaceDept.RIGHT_DEPT.getValue(), pkMember); - } - return false; - } - - @Override - public CuMemberAwardsExt queryLastManualAwards(Long pkMember) { - return baseMapper.queryLastManualAwards(pkMember); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java index 86477026..6ece88f0 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberLevelServiceImpl.java @@ -1,7 +1,6 @@ package com.hzs.member.detail.service.impl; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.member.detail.CuMemberGrade; @@ -29,16 +28,6 @@ public class CuMemberLevelServiceImpl extends ServiceImpl getUpgradeList(Long pkMember) { - return baseMapper.getUpgradeList(pkMember); - } - @Override public int insertBatch(List memberLevelList) { return baseMapper.insertBatch(memberLevelList); @@ -49,18 +38,4 @@ public class CuMemberLevelServiceImpl extends ServiceImpl listMemberLevel(Long pkMember, Long pkOrder) { - return this.list(Wrappers.lambdaQuery() - .eq(CuMemberLevel::getPkMember, pkMember) - .eq(null != pkOrder, CuMemberLevel::getPkOrder, pkOrder) - .orderByAsc(CuMemberLevel::getUpgradeTime) - ); - } - - @Override - public CuMemberLevel getLevelByGradeValue(Long pkMember, Integer gradeValue, Date queryTime, Integer pkCountry) { - return baseMapper.getLevelByGradeValue(pkMember, gradeValue, queryTime, pkCountry); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java index e7aa36c4..bac50d7e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/detail/service/impl/CuMemberServiceLogServiceImpl.java @@ -1,13 +1,11 @@ package com.hzs.member.detail.service.impl; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EApproveStatus; import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.exception.ServiceException; @@ -19,15 +17,12 @@ import com.hzs.member.detail.mapper.CuMemberServiceLogMapper; import com.hzs.member.detail.service.ICuMemberServiceLogService; import com.hzs.member.detail.vo.CuMemberServiceLogVO; import com.hzs.member.handlebusiness.vo.BusinessMemberVO; -import com.hzs.member.self.vo.DomicileChangeVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; -import java.util.Comparator; import java.util.Date; import java.util.List; -import java.util.stream.Collectors; /** * 会员更名、密码修改表 服务实现类 @@ -40,11 +35,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectServiceLogList(CuMemberServiceLogVO cuMemberServiceLogVO) { return baseMapper.selectServiceLogList(cuMemberServiceLogVO); @@ -55,11 +45,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectOldValue(BusinessMemberVO businessMemberVO) { return baseMapper.selectOldValue(businessMemberVO); @@ -102,15 +87,15 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl selectByBusinessNo(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(CuMemberServiceLog::getBusinessNo, businessNo); return R.ok(baseMapper.selectOne(queryWrapper)); } @Override public R updateByBusinessNo(CuMemberServiceLog memberLog) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("BUSINESS_NO", memberLog.getBusinessNo()); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(CuMemberServiceLog::getBusinessNo, memberLog.getBusinessNo()); return R.ok(baseMapper.update(memberLog, updateWrapper) == 1); } @@ -119,13 +104,6 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl> selectCuMemberServiceLog(String businessNo) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("BUSINESS_NO", businessNo); - return R.ok(baseMapper.selectList(queryWrapper)); - } - @Override public List selectByList(CuMemberServiceLogExt memberServiceLogExt) { return baseMapper.selectByList(memberServiceLogExt); @@ -136,39 +114,4 @@ public class CuMemberServiceLogServiceImpl extends ServiceImpl editType, int approveStatus, String actEndDateStr) { - CuMemberServiceLogVO cmvo = new CuMemberServiceLogVO(); - List cmsList = baseMapper.selectTopDataList(pkMember, editType, approveStatus, actEndDateStr); - if (CollectionUtil.isNotEmpty(cmsList)) { - List sortedCmsList = cmsList.stream() - .sorted(Comparator.comparing(CuMemberServiceLog::getCreationTime)) - .collect(Collectors.toList()); - for (CuMemberServiceLog cms : sortedCmsList) { - cms.setPkMember(pkMember); - if (cms.getEditType() == EApprovalBusiness.CHANGE_NAME.getValue()) { - cmvo.setOldName(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.CHANGE_PHONE.getValue()) { - cmvo.setOldPhone(cms.getOldValue()); - } - if (cms.getEditType() == EApprovalBusiness.DOMICILE_CHANGE.getValue()) { - DomicileChangeVO oldValue = JSONUtil.toBean(cms.getOldValue(), DomicileChangeVO.class); - cmvo.setOldPhone(oldValue.getPhone()); - cmvo.setOldName(oldValue.getMemberName()); - } - } - } - return cmvo; - } - - @Override - public List listActivateLog(Date queryDate) { - return baseMapper.listActivateLog(queryDate); - } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java index b5649b94..de9a9182 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/handlebusiness/service/impl/CuHandleBusinessServiceImpl.java @@ -687,23 +687,6 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl 0; } - - if (result) { - // 修改是否激活,旧值为未激活,新值为激活的会员需要推MQ处理秒结状态 - List pkMemberList = handleBusinessVO.getBusinessMemberList().stream() - .filter( - tmpData -> EApprovalBusiness.IS_ACTIVATE.getValue() == tmpData.getBusinessType() - && tmpData.getOldValue().equals(EYesNo.NO.getIntValue() + "") - && tmpData.getNewValue().equals(EYesNo.YES.getIntValue() + "") - ) - .map(BusinessMemberVO::getPkMember) - .collect(Collectors.toList()); - if (CollectionUtil.isNotEmpty(pkMemberList)) { - // 推送会员激活处理 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_EXCHANGE, RabbitMqConstants.ORDER_SECOND_ACTIVATE_COMPENSATION_KEY, pkMemberList); - } - } - return result; } @@ -857,9 +840,6 @@ public class CuHandleBusinessServiceImpl extends ServiceImpl o.getPkId().equals(memberExt.getPkAwards())).findFirst().get().getAwardsValue(); if(ObjectUtil.isNotEmpty(memberExt) && EAwards.HEADER.getValue() > memberAwardsValue){ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java index 157c9f1f..b6f74543 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/IMemberLoginService.java @@ -21,4 +21,13 @@ public interface IMemberLoginService { **/ LoginMember passwordFreelogin(String username); + + /** + * 分享登录 + * + * @param username 用户名 + * @param password 密码 + * @return + */ + LoginMember shareLogin(String username, String password); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java index c2a8572d..948f122f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/login/service/impl/MemberLoginServiceImpl.java @@ -11,6 +11,7 @@ import com.hzs.common.core.utils.ServletUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.ip.IpUtils; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.detail.CuMemberLogin; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.utils.SecurityUtils; @@ -157,6 +158,35 @@ public class MemberLoginServiceImpl implements IMemberLoginService { return loginMember; } + @Override + public LoginMember shareLogin(String username, String password) { + // 用户名或密码为空 错误 + if (StringUtils.isAnyBlank(username, password)) { + // 用户/密码必须填写 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_REQUIRED)); + } + // 查询用户信息 + R memberResult = iMemberServiceApi.getShareMemberInfo(username); + + if (R.FAIL == memberResult.getCode()) { + throw new ServiceException(memberResult.getMsg()); + } + + if (StringUtils.isNull(memberResult.getData())) { + // 登录用户: %s 不存在 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_NOT_EXIST, username)); + } + + LoginMember loginMember = memberResult.getData(); + CuMemberShare cuMemberShare = loginMember.getCuMemberShare(); + // 密码校验 + if (!SecurityUtils.matchesPassword(password, cuMemberShare.getLoginPwd())) { + // 用户不存在/密码错误 + throw new ServiceException(TransactionUtils.getContent(SystemMsgConstants.USER_ERROR, username)); + } + + return loginMember; + } /** * 记录登录信息 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java index a3181c2c..ec87797f 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/controller/api/MarketNewsController.java @@ -1,31 +1,15 @@ package com.hzs.member.marketnews.controller.api; -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.date.DateUtil; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.EnumsPrefixConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.enums.EPlaceDept; -import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.web.controller.BaseController; -import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.member.base.service.ICuMemberShareService; -import com.hzs.member.bonus.service.ICuMemberBonusPushHisService; -import com.hzs.member.bonus.service.ICuMemberBonusPushService; import com.hzs.member.marketnews.param.MarketNewsParam; -import com.hzs.member.marketnews.param.SeaFlourParam; -import com.hzs.member.marketnews.param.TripleCycleListParam; -import com.hzs.member.marketnews.vo.SeaFlourVo; import com.hzs.member.marketnews.vo.UserInvestmentVo; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; @@ -37,33 +21,14 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; -import java.math.BigDecimal; import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.function.Function; -import java.util.stream.Collectors; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/13 16:38 - * @Classname: MarketNewsController - * @PackageName: com.hzs.member.marketNews.controller.api - */ @RestController @RequestMapping("/api/market-news") public class MarketNewsController extends BaseController { - @Autowired - private ITransactionCommonService iTransactionCommonService; - @Autowired - private ICuMemberShareService memberShareService; + @Autowired private ICuMemberService memberService; - @Autowired - private ICuMemberBonusPushService memberBonusPushService; - @Autowired - private ICuMemberBonusPushHisService cuMemberBonusPushHisService; @DubboReference IGradeServiceApi gradeServiceApi; @@ -75,7 +40,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("bidding-list") + @GetMapping("/bidding-list") public TableDataInfo biddingList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); R> gradeDate = gradeServiceApi.queryGradeList(pkCountry); @@ -114,7 +79,7 @@ public class MarketNewsController extends BaseController { * * @return */ - @GetMapping("reg-list") + @GetMapping("/reg-list") public TableDataInfo regList(MarketNewsParam marketNewsParam) { Integer pkCountry = SecurityUtils.getPkCountry(); marketNewsParam.setPkCountry(pkCountry); @@ -164,124 +129,4 @@ public class MarketNewsController extends BaseController { return getDataTable(list); } - /** - * 海粉列表 - */ - @GetMapping("sea_flour_list") - public TableDataInfo seaFlourList(SeaFlourParam seaFlourParam) { - seaFlourParam.setPkMember(SecurityUtils.getUserId()); - if (seaFlourParam.getStartCreationTime() != null) { - seaFlourParam.setStartCreationTime(DateUtil.beginOfDay(seaFlourParam.getStartCreationTime())); - } - if (seaFlourParam.getEndCreationTime() != null) { - seaFlourParam.setEndCreationTime(DateUtil.endOfDay(seaFlourParam.getEndCreationTime())); - } - startPage(); - List memberList = memberShareService.seaFlourList(seaFlourParam); - if (CollectionUtil.isNotEmpty(memberList)) { - for (SeaFlourVo seaFlourVo : memberList) { - seaFlourVo.setMemberCode(seaFlourVo.getMemberCode()); - seaFlourVo.setMemberName(seaFlourVo.getMemberName()); - } - } - return getDataTable(memberList); - } - - /** - * 轮次历史业绩 - */ - @GetMapping("/round-his") - public TableDataInfo seaFlourList() { - List cuMemberBonusPushHis = cuMemberBonusPushHisService.queryCuMemberBonusPushHis(SecurityUtils.getUserId()); - if (Objects.equals(CountryConstants.CHINA_COUNTRY, SecurityUtils.getPkCountry())) { - CurrencyDTO currencyDTO = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()).getData(); - cuMemberBonusPushHis.forEach(bonusPushHis -> - bonusPushHis.setCalAchieve(ComputeUtil.computeMultiply(bonusPushHis.getCalAchieve(), currencyDTO.getInExchangeRate()))); - } - return getDataTable(cuMemberBonusPushHis); - } - - /** - * 三单循环列表 - */ - @GetMapping("triple_cycle_list") - public TableDataInfo tripleCycleList(TripleCycleListParam tripleCycleListParam) { - R currency = currencyServiceApi.getCurrency(SecurityUtils.getPkCountry()); - // 汇率比例 - BigDecimal inExchangeRate = currency.getData().getInExchangeRate(); - R> gradeDto = gradeServiceApi.findAll(); - List gradeDate = gradeDto.getData(); - tripleCycleListParam.setPkMember(SecurityUtils.getUserId()); - startPage(); - if (tripleCycleListParam.getStartCreationTime() != null) { - tripleCycleListParam.setStartCreationTime(DateUtil.beginOfDay(tripleCycleListParam.getStartCreationTime())); - } - if (tripleCycleListParam.getEndCreationTime() != null) { - tripleCycleListParam.setEndCreationTime(DateUtil.endOfDay(tripleCycleListParam.getEndCreationTime())); - } - Map transactionMap = iTransactionCommonService.exportEnumTransaction(EOrderType.values()); - Map transactionMap1 = iTransactionCommonService.exportEnumTransactionByDB(EnumsPrefixConstants.KEY_GRADE); - //查询所有汇率 - R> currencyDTOList = currencyServiceApi.findAll(); - Map currencyMap = currencyDTOList.getData().stream().collect(Collectors.toMap(CurrencyDTO::getPkCountry, Function.identity())); - // 禅道bug 8461 会员端,招商列表下的【三单循环】历史轮次需要显示已退单的会员数据 需要展示已删除的会员信息 - List list = memberBonusPushService.tripleCycleList(tripleCycleListParam); - for (CuMemberBonusPushExt cuMemberBonusPush : list) { - - cuMemberBonusPush.setMemberCode(cuMemberBonusPush.getMemberCode()); - cuMemberBonusPush.setMemberName(cuMemberBonusPush.getMemberName()); - - for (GradeDTO gradeDTO : gradeDate) { - // 注册等级 - if (cuMemberBonusPush.getPkRegisterGrade() != null) { - if (cuMemberBonusPush.getPkRegisterGrade().equals(gradeDTO.getPkId())) { - cuMemberBonusPush.setPkRegisterGradeStr(transactionMap1.get(gradeDTO.getPkTransaction())); - } - } - } - if (cuMemberBonusPush.getOrderType() != null) { - cuMemberBonusPush.setOrderTypeStr(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + cuMemberBonusPush.getOrderType())); - } - if (cuMemberBonusPush.getOrderAchieve() == null) { - cuMemberBonusPush.setOrderAchieve(BigDecimal.ZERO); - } - cuMemberBonusPush.setOrderAchieve(cuMemberBonusPush.getOrderAchieve().multiply(inExchangeRate)); - cuMemberBonusPush.setCreationTime(cuMemberBonusPush.getMemberPayTime()); - - // 跨国报单 汇率转换 - Long pkCreator = cuMemberBonusPush.getPkCreator(); - CuMember member = memberService.getMember(pkCreator); - if (!member.getPkSettleCountry().equals(cuMemberBonusPush.getPkCountry())) { - // 会员结算国是中国 并且会员结算国和订单下单国家不一致 - CurrencyDTO thisCurrency = currencyMap.get(member.getPkSettleCountry()); - CurrencyDTO settleCurrency = currencyMap.get(cuMemberBonusPush.getPkCountry()); - cuMemberBonusPush.setOrderAmount(cuMemberBonusPush.getOrderAmount().divide(settleCurrency.getInExchangeRate(), 2, BigDecimal.ROUND_HALF_UP).multiply(thisCurrency.getInExchangeRate())); - } - - } - return getDataTable(list); - } - - /** - * 三单循环获取下一轮次 - */ - @GetMapping("next-round") - public AjaxResult nextRound() { - // Integer pkCountry = SecurityUtils.getPkCountry(); - Long pkMember = SecurityUtils.getUserId(); - CuMemberBonusPush memberBonusPush = memberBonusPushService.nextRound(pkMember); - if (memberBonusPush == null || memberBonusPush.getRound() == null || memberBonusPush.getSecond() == null) { - memberBonusPush.setSecond(1); - memberBonusPush.setRound(1); - } - if (memberBonusPush.getSecond() == 3) { - // 三单循环第三轮 - memberBonusPush.setSecond(1); - memberBonusPush.setRound(memberBonusPush.getRound() + 1); - } else { - memberBonusPush.setSecond(memberBonusPush.getSecond() + 1); - } - return AjaxResult.success(memberBonusPush); - } - } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java index 4ba65ec0..92f4acd4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/MarketNewsParam.java @@ -5,13 +5,6 @@ import lombok.Data; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 11:43 - * @Classname: MarketNewsParam - * @PackageName: com.hzs.member.marketNews.param - */ @Data public class MarketNewsParam { /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java deleted file mode 100644 index 865034cd..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/SeaFlourParam.java +++ /dev/null @@ -1,67 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:36 - * @Classname: seaFlourParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-06 17:36 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourParam { - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - - /** - * 会员信息 - */ - private String memberInfo; -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java deleted file mode 100644 index 69cbbbeb..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/param/TripleCycleListParam.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.member.marketnews.param;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/7 14:43 - * @Classname: TripleCycleListParam - * @PackageName: com.hzs.member.marketnews.param - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.param - *@Author: yh - *@CreateTime: 2023-06-07 14:43 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class TripleCycleListParam { - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - - private String memberName; - - /** - * 开始时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date startCreationTime; - /** - * 结束时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd") - private Date endCreationTime; - - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 注册等级 - */ - private Integer pkRegisterGrade; - - /** - * 查询会员信息 - */ - private String memberInfo; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java deleted file mode 100644 index 5cff138f..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/SeaFlourVo.java +++ /dev/null @@ -1,61 +0,0 @@ -package com.hzs.member.marketnews.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/6/6 17:38 - * @Classname: SeaFlourVo - * @PackageName: com.hzs.member.marketnews.vo - */ - -import com.fasterxml.jackson.annotation.JsonFormat; -import lombok.Data; - -import java.util.Date; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.member.marketnews.vo - *@Author: yh - *@CreateTime: 2023-06-06 17:38 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SeaFlourVo { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员名称 - */ - private String memberName; - - /** - * 会员手机 - */ - private String phone; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 所属体系 - */ - private Long pkVertex; - - /** - * 服务编号 - */ - private String serviceCode; - - /** - * 会员昵称 - */ - private String nickName; - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java index 44eb9d7d..14de2184 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/marketnews/vo/UserInvestmentVo.java @@ -8,13 +8,6 @@ import lombok.Data; import java.math.BigDecimal; import java.util.Date; -/** - * @Description: - * @Author: yuhui - * @Time: 2023/1/27 10:44 - * @Classname: UserInvestmentVo - * @PackageName: com.hzs.member.marketNews.vo - */ @Data public class UserInvestmentVo { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java index 1a3bbae4..86f2b363 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/share/controller/api/ApiShareController.java @@ -174,4 +174,30 @@ public class ApiShareController extends BaseController { } + + + /** + * 获取188分享码(H5) + * + * @return + */ + @GetMapping("/fans-code-h5") + public AjaxResult fansCodeH5() { + Long userId = SecurityUtils.getUserId(); + // 188注册分享人就是自己 + R resultR = iShareServiceApi.queryShareCode(ShareServiceDTO.builder() + .eShareType(EShareType.FANS) + .pkBusiness(userId) + .pkCountry(SecurityUtils.getPkCountry()) + .userId(userId) + .build()); + if (resultR.isSuccess()) { + Map resultMap = new HashMap<>(); + resultMap.put("dataUrl", resultR.getData()); + // 前端无法根据URL生成海报,此处需要转一下base64 + resultMap.put("dataStr", Base64Util.toUrlBase64(resultR.getData())); + return AjaxResult.success(resultMap); + } + return AjaxResult.error(); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java index 0d933b14..96c5c615 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/controller/manager/CuBonusStatisController.java @@ -445,7 +445,6 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisAchieve.setPkBdVertexList(chartVO.getPkBdVertexList()); List orderTypeList = new ArrayList<>(); orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); cuBonusStatisAchieve.setOrderTypeList(orderTypeList); orderAchieve = iCuBonusStatisService.queryOrderAchieveSum(cuBonusStatisAchieve).getOrderAchieve(); if (orderAchieve == null) { @@ -558,7 +557,6 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisAchieve.setPkBdVertexList(chartVO.getPkBdVertexList()); List orderTypeList = new ArrayList<>(); orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); cuBonusStatisAchieve.setOrderTypeList(orderTypeList); orderAchieve = iCuBonusStatisService.queryOrderAchieveSum(cuBonusStatisAchieve).getOrderAchieve(); if (orderAchieve == null) { @@ -765,7 +763,6 @@ public class CuBonusStatisController extends BaseController { cuBonusStatisAchieve.setPkBdVertexList(cuBonusStatisVO.getPkBdVertexList()); List orderTypeList = new ArrayList<>(); orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); cuBonusStatisAchieve.setOrderTypeList(orderTypeList); orderAchieve = iCuBonusStatisService.queryOrderAchieveSum(cuBonusStatisAchieve).getOrderAchieve(); if (orderAchieve == null) { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java index f92fd106..54d2abbc 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/CuBonusStatisServiceImpl.java @@ -110,20 +110,11 @@ public class CuBonusStatisServiceImpl extends ServiceImpl> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); + return AjaxResult.success(cuMemberRetailTree); + } + /** + * 查询子节点 + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) + @GetMapping("/childList") + public AjaxResult Framework(Integer stage,Integer stageStatus) { + if (stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + List childCodeList = iCumemberRetailDetailService.getChildListByUserId(userId,stage,stageStatus,settleTableName); + return AjaxResult.success(childCodeList); + } + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/three-framework-list") + public AjaxResult threeFrameworkList(Integer stage, Integer stageStatus) { + if (stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error(); + } + startPage(); + // 查询当前会员所有子点位信息 + CuMember member = iCuMemberService.getMember(userId); + List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,member.getMemberCode(),stage,stageStatus); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + } + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/pointDetail") + public AjaxResult pointDetail(Integer stage,Integer point,Long pointMember) { + if (stage == null || point == null || pointMember == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + Long userId = SecurityUtils.getUserId(); + if (userId == null) { + log.error("用户登录信息错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + // 获取当前时间 -1 天 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + // 查询相关日结表 + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("数据查询错误,请联系客服处理"); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(userId, pointMember, stage, point, settleTableName); + if (cuMemberPointDetailVO == null) { + return null; + } + return AjaxResult.success(cuMemberPointDetailVO); + } + // @Autowired // private ITransactionCommonService iTransactionCommonService; // @Autowired diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberDetailDTO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberDetailDTO.java new file mode 100644 index 00000000..5ea5d4f0 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberDetailDTO.java @@ -0,0 +1,30 @@ +package com.hzs.member.structure.controller.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberDetailDTO { + /** + * 会员编号 + */ + private String memberCode; + /** + * 会员姓名 + */ + private String memberName; + /** + * 荣誉奖衔 + */ + private String awardsName; + /** + * 隶属体系 + */ + private String vertexName; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberPointDTO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberPointDTO.java new file mode 100644 index 00000000..5f8b3322 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/dto/CuMemberPointDTO.java @@ -0,0 +1,22 @@ +package com.hzs.member.structure.controller.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class CuMemberPointDTO { + + + /** + * 点位创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java index bc5fd02f..92505327 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/manage/MemberStructureController.java @@ -3,19 +3,27 @@ package com.hzs.member.structure.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.lang.tree.Tree; import com.alibaba.fastjson2.JSONArray; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.AccessPermissions; +import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.*; +import com.hzs.common.core.constant.msg.CommonMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.EOperationBusiness; +import com.hzs.common.core.enums.EOperationMethod; +import com.hzs.common.core.enums.EOperationModule; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.core.web.page.TableDataInfo; +import com.hzs.common.domain.member.achieve.CuMemberRetailDetail; import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod; import com.hzs.common.domain.member.achieve.ext.CuMemberRetailSExt; import com.hzs.common.domain.member.base.CuMember; @@ -24,20 +32,28 @@ import com.hzs.common.util.TransactionUtils; import com.hzs.member.achieve.service.ICuMemberSettlePeriodService; import com.hzs.member.achieve.service.ICuMemberTreeService; import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICumemberRetailDetailService; +import com.hzs.member.structure.controller.vo.ChildCodeVO; +import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO; import com.hzs.member.structure.controller.vo.CuMemberSettlePeriodVo; +import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.IUserServiceApi; import com.hzs.system.sys.dto.UserAuthorityDTO; +import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; /** * 架构管理 */ +@Slf4j @RestController @RequestMapping("/manage/member-structure") public class MemberStructureController extends BaseController { @@ -49,6 +65,8 @@ public class MemberStructureController extends BaseController { @Autowired private ICuMemberService iCuMemberService; + @Autowired + private ICumemberRetailDetailService iCumemberRetailDetailService; @DubboReference IUserServiceApi iUserServiceApi; @DubboReference @@ -97,8 +115,9 @@ public class MemberStructureController extends BaseController { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); } else { - // 没有传入期数,按当前时间取期数 - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + // 没有传入期数,按当前时间-1取期数 + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); if (csPeriod != null) { period = csPeriod.getPkId(); settleDate = csPeriod.getSettleDate(); @@ -108,7 +127,9 @@ public class MemberStructureController extends BaseController { if (settleDate != null && DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, settleDate).equals(DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, new Date()))) { // 查询当天 (秒结) // 会员秒结表 - String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_S + period; + String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd"))); + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId(); // 校验秒结表是否存在 Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); if (tableNumber != null && tableNumber == 1) { @@ -122,7 +143,7 @@ public class MemberStructureController extends BaseController { // 秒结表不存在,取昨天的结算表 DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); + csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); if (csPeriod != null) { period = csPeriod.getPkId(); } @@ -161,13 +182,7 @@ public class MemberStructureController extends BaseController { return AjaxResult.success(iCuMemberService.systemListTree(memberRetailExtList, cuMemberSettleExt, settleTableName)); } } else { - DateTime dateTime = DateUtil.offsetDay(DateUtils.currentDate(), -1); - time = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, dateTime); - CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(time); - if (csPeriod != null) { - period = csPeriod.getPkId(); - } - // 查询 历史 + // 不是当天,查询传入日结信息 String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + period; Integer tableNumber = iCuMemberTreeService.queryExistOracleTable(settleTableName); @@ -193,6 +208,126 @@ public class MemberStructureController extends BaseController { } } + + /** + * 三阶段架构 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param childNode + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_TREE, business = EOperationBusiness.MEMBER_RETAIL_TREE, method = EOperationMethod.SELECT) + @GetMapping("/three-framework") + public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,String childNode,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null || childNode == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberRetailDetail cuMemberRetailDetail = iCumemberRetailDetailService.getCuMemberRetailDetail(memberCode,stage,stageStatus,childNode,settleTableName); + log.info("日结表会员信息{}",cuMemberRetailDetail); + if (cuMemberRetailDetail == null) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); + } + // 拼接树形结构 + List> cuMemberRetailTree = iCumemberRetailDetailService.convertToNodeList(cuMemberRetailDetail); + return AjaxResult.success(cuMemberRetailTree); + } + /** + * 三阶段列表数据 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/three-framework-list") + public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode, Integer stage, Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error(); + } + startPage(); + // 查询当前会员所有子点位信息 + List cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus); + return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS)); + } + + @Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/pointDetail") + public AjaxResult pointDetail(Long pkMember,Long pointMember,Integer stage,Integer point,Long memberSettlePeriodId) { + if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null || pointMember == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前表名不存在{}",settleTableName); + return AjaxResult.error("当前日结信息表不存在",settleTableName); + } + CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,pointMember,stage,point,settleTableName); + if (cuMemberPointDetailVO == null) { + return null; + } + return AjaxResult.success(cuMemberPointDetailVO); + } + + /** + * 查询子节点 + * @param memberSettlePeriodId + * @param memberCode + * @param stage + * @param stageStatus + * @return + */ + @Log(module = EOperationModule.MEMBER_RETAIL_CHILDNODE, business = EOperationBusiness.MEMBER_RETAIL_CHILDNODE, method = EOperationMethod.SELECT) + @GetMapping("/childList") + public AjaxResult Framework(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) { + if (memberSettlePeriodId == null || memberCode == null || stage == null) { + log.error("参数错误"); + return AjaxResult.error(CommonMsgConstants.MISSING_PARAM); + } + CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId); + log.info("日结信息{}",csPeriod); + String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId(); + log.info("日结表名称{}",settleTableName); + // 校验当前日结表是否存在 + Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName); + if (isFind == null || isFind != 1) { + log.error("当前会员日结信息不存在{}",settleTableName); + return AjaxResult.error("当前会员日结信息不存在",settleTableName); + } + List childCodeList = iCumemberRetailDetailService.getChildList(memberCode,stage,stageStatus,settleTableName); + return AjaxResult.success(childCodeList); + } /** * 查询最近一月所有期数 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java new file mode 100644 index 00000000..4bc9f369 --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/ChildCodeVO.java @@ -0,0 +1,13 @@ +package com.hzs.member.structure.controller.vo; + +import lombok.Data; + +@Data + +public class ChildCodeVO { + /** + * 子会员节点 + */ + Integer childNode; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java new file mode 100644 index 00000000..433f8c8e --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberPointDetailVO.java @@ -0,0 +1,39 @@ +package com.hzs.member.structure.controller.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +@Builder +public class CuMemberPointDetailVO { + /** + * 会员编号 + */ + private String memberCode; + /** + * 会员姓名 + */ + private String memberName; + /** + * 荣誉奖衔 + */ + private String awardsName; + /** + * 隶属体系 + */ + private String vertexName; + /** + * 点位创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java new file mode 100644 index 00000000..fa0d217b --- /dev/null +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/structure/controller/vo/CuMemberThreeFrameworkVO.java @@ -0,0 +1,253 @@ +package com.hzs.member.structure.controller.vo; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@JsonInclude(JsonInclude.Include.ALWAYS) +public class CuMemberThreeFrameworkVO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 会员ID + */ + private Long pkMember; + + /** + * 会员子节点 + */ + private Integer childNode; + + /** + * 推荐人 + */ + private Long pkParent; + + /** + * 三个阶段(1、2、3) + */ + private Integer stage; + /** + * 三阶段实际值 + */ + private String stageLabel; + + /** + * 阶段状态(0=已完成,1=未完成) + */ + private Integer stageStatus; + /** + * 阶段完成实际值 + */ + private String stageStatusLabel; + + /** + * 阶段完成时间 + */ + private Date stageDate; + + + /** + * 点位1-1会员ID + */ + private Long pointMember11; + /** + * 点位1-1会员子节点 + */ + private Integer point11; + + /** + * 点位1-2会员ID + */ + private Long pointMember12; + /** + * 点位1-2会员子节点 + */ + private Integer point12; + + /** + * 点位2-1会员ID + */ + private Long pointMember21; + /** + * 点位2-1会员子节点 + */ + private Integer point21; + + /** + * 点位2-2会员ID + */ + private Long pointMember22; + /** + * 点位2-2会员子节点 + */ + private Integer point22; + + /** + * 点位2-3会员ID + */ + private Long pointMember23; + /** + * 点位2-3会员子节点 + */ + private Integer point23; + + /** + * 点位2-4会员ID + */ + private Long pointMember24; + /** + * 点位2-4会员子节点 + */ + private Integer point24; + + /** + * 点位3-1会员ID + */ + private Long pointMember31; + /** + * 点位3-1会员子节点 + */ + private Integer point31; + + /** + * 点位3-2会员ID + */ + private Long pointMember32; + /** + * 点位3-2会员子节点 + */ + private Integer point32; + + /** + * 点位3-3会员ID + */ + private Long pointMember33; + /** + * 点位3-3会员子节点 + */ + private Integer point33; + + /** + * 点位3-4会员ID + */ + private Long pointMember34; + /** + * 点位3-4会员子节点 + */ + private Integer point34; + + /** + * 点位3-5会员ID + */ + private Long pointMember35; + /** + * 点位3-5会员子节点 + */ + private Integer point35; + + /** + * 点位3-6会员ID + */ + private Long pointMember36; + /** + * 点位3-6会员子节点 + */ + private Integer point36; + + /** + * 点位3-7会员ID + */ + private Long pointMember37; + /** + * 点位3-7会员子节点 + */ + private Integer point37; + + /** + * 点位3-8会员ID + */ + private Long pointMember38; + /** + * 点位3-8会员子节点 + */ + private Integer point38; + + /** + * 点位类型(0=普通,1=赠送点位) + */ + private Integer pointType; + /** + * 点位类型实际值 + */ + private String pointTypeLabel; + + /** + * 赠点数量(三阶段走完赠送几个点位) + */ + private Integer pointGift; + + /** + * 创建时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; + + /** + * 第一层会员ID + */ + private Long pointMemberFirst; + /** + * 第一层会员子节点 + */ + private Integer pointFirst; + + /** + * 第二层会员ID + */ + private Long pointMemberSecond; + /** + * 第二层会员子节点 + */ + private Integer pointSecond; + + /** + * 第三层会员ID + */ + private Long pointMemberThird; + /** + * 第三层会员子节点 + */ + private Integer pointThird; + + /** + * 三阶段1层奖金次数 + */ + private Integer thirdBonus1; + + /** + * 三阶段2层奖金次数 + */ + private Integer thirdBonus2; + + /** + * 三阶段3层奖金次数 + */ + private Integer thirdBonus3; + + /** + * 更新标记(不为null则需要入库) + */ + private Integer updateBool; + +} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/controller/manage/CuMemberSwingNetController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/controller/manage/CuMemberSwingNetController.java index 00c245f3..c5125ae4 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/controller/manage/CuMemberSwingNetController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/controller/manage/CuMemberSwingNetController.java @@ -14,7 +14,6 @@ import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.member.swing.CuMemberSwingNet; import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetLogExt; import com.hzs.common.security.utils.SecurityUtils; @@ -113,25 +112,6 @@ public class CuMemberSwingNetController extends BaseController { return AjaxResult.success(BeanUtil.copyProperties(cuMember, CuMemberRetVO.class)); } - /** - * 根据会员编号查询伞上所有人 - * - * @param param - * @return - */ - @PostMapping("/query-member-parent") - public AjaxResult queryMemberParent(@RequestBody CuMemberSwingNetParam param) { - if (StringUtils.isEmpty(param.getMemberCode())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS)); - } - CuMember cuMember = cuMemberService.getMember(param.getMemberCode()); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_NOT_EXITS)); - } - List cuMemberExtList = cuMemberService.queryPlaceSponsorOnUmbrella(cuMember.getPkId(), null, null); - return AjaxResult.success(cuMemberExtList); - } - /** * 删除甩网数据 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java index 24ee9d32..58aa87c5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/swing/param/CuMemberSwingNetParam.java @@ -7,12 +7,7 @@ import java.util.Date; import java.util.List; /** - * @description: 甩网配置 - * @author: sui q - * @time: 2023/8/30 11:12 - * @classname: CuMemberSwingNetVO - * @package_name: com.hzs.member.swing.param - * version 1.0.0 + * 甩网配置 */ @Data public class CuMemberSwingNetParam implements Serializable { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java index 055fbc25..b12b401b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/login/controller/RetailMemberTokenController.java @@ -1,13 +1,22 @@ package com.hzs.retail.login.controller; +import cn.hutool.core.codec.Base64Decoder; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.MagicNumberConstants; +import com.hzs.common.core.constant.SysConstants; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMemberShare; +import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.security.auth.AuthMemberUtil; import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.dto.LoginMember; +import com.hzs.member.base.service.ICuMemberService; +import com.hzs.member.base.service.ICuMemberShareService; +import com.hzs.member.login.param.AutoLoginParam; +import com.hzs.member.login.service.IMemberLoginService; import com.hzs.retail.login.param.RetailAutoLoginParam; import com.hzs.retail.login.param.RetailLoginParam; import com.hzs.retail.login.service.IRetailMemberLoginService; @@ -28,6 +37,13 @@ import javax.validation.Valid; @RestController public class RetailMemberTokenController { + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberShareService iCuMemberShareService; + @Autowired + private IMemberLoginService iMemberLoginService; + @Autowired private MemberTokenService memberTokenService; @Autowired @@ -50,14 +66,16 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + + /** - * 新零售会员自动登录 + * 新零售会员自动登录-分享注册后自动登录 * * @param param 自助登录参数 * @return */ - @PostMapping("/auto-login") - public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { + @PostMapping("/registered-auto-login") + public AjaxResult registeredAutoLogin(@Valid @RequestBody RetailAutoLoginParam param) { String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); if (!param.getUuid().equals(tmpUuid)) { // 没有自动登录标记 或者 标记不对,则不能自动登录 @@ -70,6 +88,60 @@ public class RetailMemberTokenController { return AjaxResult.success(memberTokenService.createToken(loginMember)); } + /** + * 新零售会员自动登录 + * + * @param param 自助登录参数 + * @return + */ + @PostMapping("/auto-login") +// public AjaxResult autoLogin(@Valid @RequestBody RetailAutoLoginParam param) { +// String tmpUuid = redisService.getCacheObject(CacheConstants.AUTO_LOGIN + param.getUsername()); +// if (!param.getUuid().equals(tmpUuid)) { +// // 没有自动登录标记 或者 标记不对,则不能自动登录 +// return AjaxResult.error("当前会员已不能快递登录"); +// } +// +// // 用户登录 +// LoginMember loginMember = iRetailMemberLoginService.login(param.getUsername(), param.getPassword()); +// // 获取登录token +// return AjaxResult.success(memberTokenService.createToken(loginMember)); +// } + public AjaxResult autoLogin(@RequestBody AutoLoginParam param) { + if (StringUtils.isEmpty(param.getPkParent())) { + return AjaxResult.error("缺少注册信息!"); + } + + // 上级编码(推荐人) + Long pkParent = Long.parseLong(new String(Base64Decoder.decode(param.getPkParent()))); + // 查询上级信息 + CuMemberExt parentCuMember = iCuMemberService.getMemberById(pkParent); + if (null == parentCuMember) { + return AjaxResult.error("二维码已经失效!"); + } + + // 生成的会员编号 + String memberCode = iCuMemberService.createRetailMemberCode(SysConstants.RETAIL_PREFIX); +// iCuMemberService.createUserNameByPremix(parentCuMember.getPkSettleCountry(), MagicNumberConstants.DIGIT); + + CuMemberShare cuMemberShare = new CuMemberShare(); + cuMemberShare.setMemberCode(memberCode); + cuMemberShare.setPkParent(pkParent); + cuMemberShare.setLoginPassword(SysConstants.LOGIN_PASSWORD); + cuMemberShare.setLoginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)); + cuMemberShare.setPayPassword(SysConstants.PAY_PASSWORD); + cuMemberShare.setPayPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)); + cuMemberShare.setPkCreator(pkParent); + cuMemberShare.setPkCountry(parentCuMember.getPkSettleCountry()); + if (iCuMemberShareService.save(cuMemberShare)) { + // 会员登录 + LoginMember loginMember = iMemberLoginService.shareLogin(memberCode, SysConstants.LOGIN_PASSWORD); + + // 获取登录token + return AjaxResult.success(memberTokenService.createToken(loginMember)); + } + return AjaxResult.error(); + } /** * 会员登出 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java index f5bcd896..dc5b0b8c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/ApiRetailHomePageController.java @@ -1,6 +1,5 @@ package com.hzs.retail.member.controller.api; - import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -18,19 +17,12 @@ import java.util.List; /** * 会员首页 - * - * @Description: - * @Author: ljc - * @Time: 2023/5/4 21:06 - * @Classname: ApiHomePageController - * @Package_name: com.hzs.member.base.controller.api */ @Slf4j @RequestMapping("/api/retail-member") @RestController public class ApiRetailHomePageController extends BaseController { - @Autowired private ICuMemberRetailAchieveService retailAchieveService; @@ -45,20 +37,16 @@ public class ApiRetailHomePageController extends BaseController { Long pkMember = SecurityUtils.getUserId(); Integer pkCountry = SecurityUtils.getPkCountry(); Integer systemType = SecurityUtils.getSystemType(); - if(ObjectUtil.isEmpty(systemType)){ + if (ObjectUtil.isEmpty(systemType)) { systemType = 2; } CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(pkMember, pkCountry, systemType); CuMemberRetailAchieveVO vo = CuMemberRetailAchieveVO.builder() - .totalBox(result.getTotalBoxNum()) - .bigAreaBox(result.getBigRangeTotalBoxNum()) - .smallAreaBox(result.getSmallRangeTotalBoxNum()) .totalSumPv(result.getTotalPv()) .bigArealPv(result.getBigRangeTotalPv()) .smallAreaPv(result.getSmallRangeTotalPv()) .build(); return AjaxResult.success(vo); -// return AjaxResult.success(retailAchieveService.selectMemberSmallBox(pkMember, pkCountry, systemType)); } /** @@ -134,52 +122,6 @@ public class ApiRetailHomePageController extends BaseController { return AjaxResult.success(retailAchieveService.selectMemberBigSmallAchieveDetail(pkMember, pkCountry, systemType)); } - - /** - * 查询会员大小区盒数(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-small-box") - public AjaxResult selectMemberBigSmallBox(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigSmallBox(param)); - } - - - /** - * 查询大区盒数列表(市场动态) - * - * @return AjaxResult - */ - @GetMapping("/big-box-list") - public AjaxResult selectMemberBigBoxList(Long pkBigMember) { - CuMemberRetailAchieveVO param = CuMemberRetailAchieveVO.builder() - .pkMember(SecurityUtils.getUserId()).pkCountry(SecurityUtils.getPkCountry()).systemType(SecurityUtils.getSystemType()) - .pkBigMember(pkBigMember).build(); - return AjaxResult.success(retailAchieveService.selectMemberBigBoxList(param)); - } - - /** - * 查询会员小区盒数列表(市场动态) - * - * @return AjaxResult - */ - @PostMapping("/small-box-list") - public TableDataInfo selectMemberSmallBoxList(@RequestBody CuMemberRetailAchieveVO cuMemberRetailAchieveVO) { - Long pkMember = SecurityUtils.getUserId(); - cuMemberRetailAchieveVO.setPkMember(pkMember); - Integer systemType = SecurityUtils.getSystemType(); - cuMemberRetailAchieveVO.setSystemType(systemType); - cuMemberRetailAchieveVO.setPkCountry(SecurityUtils.getPkCountry()); - cuMemberRetailAchieveVO.setPkMemberList(retailAchieveService.selectDirectPushByPkMember(pkMember, systemType)); - startPage(); - List retailAchieveVOList = retailAchieveService.selectMemberSmallBoxList(cuMemberRetailAchieveVO); - return getDataTable(retailAchieveVOList); - } - /** * 市场动态 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java index 34c86e7c..0e52c823 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/api/RetailMemberController.java @@ -2,51 +2,20 @@ package com.hzs.retail.member.controller.api; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.lang.tree.Tree; -import cn.hutool.core.lang.tree.TreeNodeConfig; -import cn.hutool.core.lang.tree.TreeUtil; -import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONObject; -import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.hzs.common.core.annotation.RepeatSubmitSimple; -import com.hzs.common.core.constant.RetailConstants; -import com.hzs.common.core.constant.SysConstants; -import com.hzs.common.core.constant.msg.AreaConstants; -import com.hzs.common.core.enums.EGrade; -import com.hzs.common.core.enums.ENoticeWebsiteType; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.utils.PageUtils; import com.hzs.common.core.utils.sign.Base64Util; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.member.ext.CuMemberExt; -import com.hzs.common.domain.retail.member.CuMemberRetailRegion; -import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; -import com.hzs.common.domain.system.base.BdArea; -import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.service.ICuMemberService; -import com.hzs.retail.member.param.RetailMemberRegionParam; -import com.hzs.retail.member.service.ICuMemberRetailAchieveService; -import com.hzs.retail.member.service.ICuMemberRetailRegionService; import com.hzs.retail.member.service.IMemberRetailService; import com.hzs.retail.member.vo.*; -import com.hzs.system.base.IAreaServiceApi; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.web.bind.annotation.*; -import javax.validation.Valid; -import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; @@ -62,17 +31,6 @@ public class RetailMemberController extends BaseController { private ICuMemberService iCuMemberService; @Autowired private IMemberRetailService iMemberRetailService; - @Autowired - private ICuMemberRetailRegionService iCuMemberRetailRegionService; - @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired - private ICuMemberRetailAchieveService retailAchieveService; - - @DubboReference - IAreaServiceApi iAreaServiceApi; - @DubboReference - private IGradeServiceApi gradeServiceApi; /** * 获取登录会员信息 @@ -87,6 +45,7 @@ public class RetailMemberController extends BaseController { } return AjaxResult.success(retailMemberInfoVO); } + @GetMapping("/get-shared-image") public AjaxResult getSharedImage() { JSONObject result = new JSONObject(); @@ -96,293 +55,6 @@ public class RetailMemberController extends BaseController { return AjaxResult.success(result); } - /** - * 获取会员收益区域 - * - * @return - */ - @GetMapping("/get-region") - public AjaxResult getRegion() { - Long userId = SecurityUtils.getUserId(); - Integer systemType = SecurityUtils.getSystemType(); - Integer pkCountry = SecurityUtils.getPkCountry(); - - CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); - int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean notFirst = countNum > 0; - - log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); - if (null != cuMemberRetailRegionExt) { - // 已自选区域或者已后台指定 - if (null != cuMemberRetailRegionExt.getPkId()) { - // 达到条件,也选择区域,需要进行显示 - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .province(cuMemberRetailRegionExt.getProvince()) - .provinceVal(cuMemberRetailRegionExt.getProvinceVal()) - .city(cuMemberRetailRegionExt.getCity()) - .cityVal(cuMemberRetailRegionExt.getCityVal()) - .county(cuMemberRetailRegionExt.getCounty()) - .countyVal(cuMemberRetailRegionExt.getCountyVal()) - .build()); - } - // 未自选或未后台指定 验证是否激活 未激活不允许选 - // getIsRegion - 后台业务特殊标记,非后台办理过的为1, 后台办理过的为0,当为0时, 不设定任何条件,直接可选收益区域 - if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { - // 2024.12.30 添加需求,指定会员可以进行区域选择 - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - }else{ - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - }else{ - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - } -// if(ObjectUtil.isNotEmpty(retailAchieve.getArealPv()) -// && result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 -// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 -// ){ -// -// return AjaxResult.success(RetailMemberRegionVO.builder() -// .regionStatus(EYesNo.YES.getIntValue()) -// .build()); -// } - } - } - // 达到条件,但是没有选择区域,需要弹窗选择区域 - // 验证伞下业绩+自己是否累计30W - - /* - 2025年6月11日 取消其他验证 - // 2025.01.11 调整需求,当前会员必须有效(至少下过一单) - if (iCuMemberRetailRegionService.getOrderCount(userId, systemType, BoxProductUtil.getBoxProductListBySystemType(systemType)) == 0) { - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.NO.getIntValue()) - .build()); - } - - // 2025.02.21 需求,2025.03.21 按正式规则执行(V5实单非注水盒数达标 或 月大区30万+小区10万,可选择区域) - R checkResult = iMemberSettleBonusApi.queryValidateBoxOrAchieve(userId); - if (checkResult.isSuccess()) { - if (checkResult.getData().getValidateFlag()) { - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.YES.getIntValue()) - .build()); - } - } - */ - } - // 没达到条件,不需要显示区域 - return AjaxResult.success(RetailMemberRegionVO.builder() - .regionStatus(EYesNo.NO.getIntValue()) - .build()); - } - - /** - * 设置会员收益区域 - * - * @param param 设置参数 - * @return - */ - @RepeatSubmitSimple - @PostMapping("/set-region") - public AjaxResult setRegion(@Valid @RequestBody RetailMemberRegionParam param) { - Long userId = SecurityUtils.getUserId(); - Integer systemType = SecurityUtils.getSystemType(); - Integer pkCountry = SecurityUtils.getPkCountry(); - - boolean canSet = false; - - CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType); - log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt)); - - if (null != cuMemberRetailRegionExt) { - if (EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsRegion()) { - canSet = true; - } - if(EYesNo.YES.getIntValue() == cuMemberRetailRegionExt.getIsActivate()){ - CuMemberRetailDataStatisticsResultVO result = retailAchieveService.getRetailDataStatisticsDetail(userId, pkCountry, systemType); - BigDecimal totalBoxNum = result.getTotalBoxNum(); - BigDecimal smallBoxNum = result.getSmallRangeTotalBoxNum(); - CuMemberExt memberExt = iCuMemberService.getMemberById(userId); - if(memberExt.getPkVertex().equals(RetailConstants.VERTEX_PK_ID)){ -// BigDecimal bigBoxNum = result.getBigRangeTotalBoxNum(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(RetailConstants.VERTEX_V5_TOTAL_BOX) >= 0 - && smallBoxNum.compareTo(RetailConstants.VERTEX_V5_SMALL_BOX) >=0 - ){ - canSet = true; - } - }else{ - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(CuMemberRetailRegion::getPkMember, userId); - int countNum = iCuMemberRetailRegionService.count(queryWrapper); - boolean notFirst = countNum > 0; - GradeDTO grade = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - if(ObjectUtil.isNotEmpty(totalBoxNum) - && totalBoxNum.compareTo(grade.getBoxTotal()) >= 0 - && smallBoxNum.compareTo(grade.getBoxSmallTotal()) >=0 - ){ - if(notFirst){ - LocalDate today = LocalDate.now(); - DateTimeFormatter formatter = DateTimeFormatter.ISO_LOCAL_DATE; - CurrentMonthVO currentMonthVO = retailAchieveService.getCurrentMonthPV(today.format(formatter), userId, pkCountry, systemType); - if(ObjectUtil.isNotEmpty(currentMonthVO) - && currentMonthVO.getTotalCurrentMonthPV().compareTo(SysConstants.TOTAL_AREA_PV) >= 0 - && currentMonthVO.getSmallCurrentMonthPV().compareTo(SysConstants.SMALL_AREA_PV) >=0 - ){ - canSet = true; - } - }else{ - canSet = true; - } - } -// if(result.getTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.TOTAL_AREA_PV) >= 0 -// && result.getSmallRangeTotalPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) >=0 -// ){ -// canSet = true; -// } - } - } - } - if(!canSet){ - return AjaxResult.error("还未达到选择收益区域条件"); - } - - if (param.getCounty().equals(0) || param.getCity().equals(0)) { - // 区为0 或 市为0,没有选择区或者没有选择市 - // 香港、澳门只有省,台湾有省、市 - BdArea province = iAreaServiceApi.getArea(param.getProvince()).getData(); - if (null == province) { - return AjaxResult.error("选择区域省不存在,请重新选择"); - } - if (param.getCounty().equals(0) - && !AreaConstants.XIANG_GANG.equals(province.getCode()) - && !AreaConstants.AO_MEN.equals(province.getCode()) - && !AreaConstants.TAI_WAN.equals(province.getCode())) { - // 区为0,不是香港、港门、台湾,则需要提示 - return AjaxResult.error("请选择区"); - } - if (param.getCity().equals(0) - && !AreaConstants.XIANG_GANG.equals(province.getCode()) - && !AreaConstants.AO_MEN.equals(province.getCode())) { - // 市为0,不是香港、港门,则需要提示 - return AjaxResult.error("请选择市"); - } - } - - // 校验市是否存在 - if (!param.getCity().equals(0)) { - BdArea city = iAreaServiceApi.getArea(param.getCity()).getData(); - if (null == city) { - return AjaxResult.error("选择区域市不存在,请重新选择"); - } - } - // 校验区是否存在 - if (!param.getCounty().equals(0)) { - BdArea county = iAreaServiceApi.getArea(param.getCounty()).getData(); - if (null == county) { - return AjaxResult.error("选择区域区不存在,请重新选择"); - } - } - - // 校验区域是否被占用 -// CuMemberRetailRegion cuMemberRetailRegion = iCuMemberRetailRegionService.getOne(Wrappers.lambdaQuery() -// .eq(CuMemberRetailRegion::getProvince, param.getProvince()) -// .eq(CuMemberRetailRegion::getCity, param.getCity()) -// .eq(CuMemberRetailRegion::getCounty, param.getCounty()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .eq(CuMemberRetailRegion::getSystemType, systemType) -// ); -// if (null != cuMemberRetailRegion) { -// if (userId.equals(cuMemberRetailRegion.getPkMember())) { -// // 当前收益区域就是当前会员,不需要处理 -// return AjaxResult.success(); -// } else { -// return AjaxResult.error("当前区域已经被占用"); -// } -// } - int cuMemberRetailRegion = iCuMemberRetailRegionService.validateBindCount(param, EYesNo.YES.getIntValue(), SecurityUtils.getSystemType(), userId); - if (cuMemberRetailRegion > 0) { - return AjaxResult.error("当前区域已经被占用"); - } - param.setPkId(cuMemberRetailRegionExt.getPkId()); - param.setPkMember(userId); - param.setPkCountry(pkCountry); - param.setSource(ENoticeWebsiteType.MEMBER.getValue()); - - param.setSystemType(systemType); - - String str = iCuMemberRetailRegionService.setRegion(param); - if (null == str) { - return AjaxResult.success(); - } - return AjaxResult.error(str); - } - - /** - * 收益区域 - * - * @return - */ - @GetMapping("/region-tree") - public AjaxResult regionTree() { - PageUtils.clearPage(); - List areaList = iCuMemberRetailRegionService.listChooseRegion(SecurityUtils.getSystemType()); - if (CollectionUtil.isEmpty(areaList)) { - return AjaxResult.success(); - } - TreeNodeConfig treeNodeConfig = new TreeNodeConfig(); - treeNodeConfig.setDeep(3); - - //0表示最顶层的id是0 - List> build = TreeUtil.build(areaList, "0", treeNodeConfig, - (treeNode, tree) -> { - tree.setId(treeNode.getPkId().toString()); - tree.setParentId(treeNode.getParent().toString()); - tree.setName(treeNode.getName()); - }); - return AjaxResult.success(build); - } - /** * 会员推荐列表 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/manage/CuMemberRetailRegionController.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/manage/CuMemberRetailRegionController.java index 44eacf7b..ac6f48e1 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/manage/CuMemberRetailRegionController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/controller/manage/CuMemberRetailRegionController.java @@ -2,7 +2,6 @@ package com.hzs.retail.member.controller.manage; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.enums.*; @@ -26,11 +25,7 @@ import java.util.Date; import java.util.List; /** - * @description: 新零售收益区域配置 - * @author: zhang jing - * @date: 2024/12/25 12:03 - * @param: - * @return: + * 新零售收益区域配置 **/ @RestController @RequestMapping("/manage/cu-member-retail-region") @@ -39,13 +34,8 @@ public class CuMemberRetailRegionController extends BaseController { @Autowired private ICuMemberRetailRegionService cuMemberRetailRegionService; - /** - * @description: 会员收益区域配置 - * @author: zhang jing - * @date: 2024/12/25 15:02 - * @param: [mrrExt] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 会员收益区域配置 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -64,11 +54,7 @@ public class CuMemberRetailRegionController extends BaseController { } /** - * @description: 导出会员收益区域配置 - * @author: zhang jing - * @date: 2024/12/25 14:59 - * @param: [response, mrrExt] - * @return: void + * 导出会员收益区域配置 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.EXPORT) @PostMapping("/export") @@ -87,11 +73,7 @@ public class CuMemberRetailRegionController extends BaseController { } /** - * @description: 未绑定收益区域 - * @author: zhang jing - * @date: 2025/1/9 13:54 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 未绑定收益区域 **/ @GetMapping("/regionAreaList") public TableDataInfo regionAreaList() { @@ -101,11 +83,7 @@ public class CuMemberRetailRegionController extends BaseController { } /** - * @description: 导出未配置收益区域 - * @author: zhang jing - * @date: 2025/1/15 11:05 - * @param: [response, mrrExt] - * @return: void + * 导出未配置收益区域 **/ @Log(module = EOperationModule.NOT_USED_REGION_AREA, business = EOperationBusiness.NOT_USED_REGION_AREA, method = EOperationMethod.EXPORT) @PostMapping("/export-region-area") @@ -116,11 +94,7 @@ public class CuMemberRetailRegionController extends BaseController { } /** - * @description:新增会员收益区域 - * @author: zhang jing - * @date: 2024/12/25 16:18 - * @param: [mrrExt] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增会员收益区域 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.INSERT) @PostMapping("/save") @@ -138,10 +112,6 @@ public class CuMemberRetailRegionController extends BaseController { Integer pkCountry = SecurityUtils.getPkCountry(); Integer systemType = SecurityUtils.getSystemType(); - CuMemberRetailRegionExt cuMemberRetailRegionExt = cuMemberRetailRegionService.getRegionByMember(mrrExt.getPkMember(), EGrade.S_VIP.getValue(), systemType); - if (null == cuMemberRetailRegionExt) { - return AjaxResult.error("还未达到选择收益区域条件"); - } CuMemberRetailRegionExt checkMrrExt = new CuMemberRetailRegionExt(); checkMrrExt.setPkMember(mrrExt.getPkMember()); checkMrrExt.setEffective(EDealerYesNo.YES.getValue()); @@ -176,11 +146,7 @@ public class CuMemberRetailRegionController extends BaseController { /** - * @description: 修改会员收益区域 - * @author: zhang jing - * @date: 2024/12/25 16:18 - * @param: [mrrExt] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改会员收益区域 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -216,11 +182,7 @@ public class CuMemberRetailRegionController extends BaseController { /** - * @description: 查询会员收益区域 - * @author: zhang jing - * @date: 2024/12/25 16:18 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询会员收益区域 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") @@ -231,11 +193,7 @@ public class CuMemberRetailRegionController extends BaseController { /** - * @description: 删除会员收益区域 - * @author: zhang jing - * @date: 2024/12/25 16:18 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除会员收益区域 **/ @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java index 9b8436ad..00746509 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRangeMapper.java @@ -8,7 +8,6 @@ import com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO; import com.hzs.retail.member.vo.MarketDynamicsDetailVO; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.List; /** @@ -23,14 +22,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectDirectPushByPkMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); - /** - * 查询大区用户信息 - * - * @param cuMemberAchieveVO - * @return - */ - CuMemberRetailAchieveVO selectBigAreaByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询表名是否存在 * @@ -56,32 +47,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper selectMemberParentByPkMember(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** - * 查询会员没有注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxNoWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员注水的大区盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberBoxWaterInjection(CuMemberRetailAchieveVO cuMemberAchieveVO); - - - /** - * 查询会员最大盒数 - * - * @param cuMemberAchieveVO 入参 - * @return CuMemberRetailAchieveVO - */ - BigDecimal selectMemberTotalBox(CuMemberRetailAchieveVO cuMemberAchieveVO); - /** * 查询会员业绩 * @@ -130,14 +95,6 @@ public interface CuMemberRetailRangeMapper extends BaseMapper getMarketDynamicsDetail(@Param("param") MarketDynamicsQueryDateParam param); - /** - * 查询当天自己新增盒数 - * - * @param param 入参 - * @return Integer - */ - BigDecimal selectSelfNewBox(CuMemberRetailAchieveVO param); - - /** - * 查询会员大小区盒数(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigSmallBox(CuMemberRetailAchieveVO param); - - - /** - * 查询大区盒数列表(市场动态) - * - * @param param 入参 - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param); - - /** - * 查询会员小区盒数列表(市场动态) - * - * @param param 入参 - * @return List - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - List selectSubMemberIdByRootMember(@Param("pkMember") Long pkMember, @Param("systemType") Integer systemType); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java index 011c58ac..847ee353 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/mapper/CuMemberRetailRegionMapper.java @@ -3,7 +3,6 @@ package com.hzs.retail.member.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; -import com.hzs.common.domain.system.base.BdArea; import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.vo.UnboundAreaVO; import org.apache.ibatis.annotations.Param; @@ -27,14 +26,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper listChooseRegion(@Param("systemType") Integer systemType, @Param("userId") Long userId); - /** * 插入收益区域 * @@ -54,13 +45,6 @@ public interface CuMemberRetailRegionMapper extends BaseMapper memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 重新判断收益区域数据 - * - * @return - */ - List listCheckRegionMember(); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java index 85e209b3..4eea64c3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/MarketDynamicsQueryDateParam.java @@ -39,7 +39,7 @@ public class MarketDynamicsQueryDateParam implements Serializable { private Integer pageNum = 1; private Integer pageSize = 10; /** - * 查询类型 1-盒数, 2-业绩 + * 查询类型 2-业绩 */ private Integer queryType; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/RetailMemberRegionParam.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/RetailMemberRegionParam.java index a4b04788..d57d47ed 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/RetailMemberRegionParam.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/param/RetailMemberRegionParam.java @@ -8,11 +8,7 @@ import java.io.Serializable; import java.util.Date; /** - * @Description: 新零售会员收益区域入参 - * @Author: jiang chao - * @Time: 2024/12/10 15:45 - * @Classname: RetailMemberRegionParam - * @PackageName: com.hzs.retail.member.param + * 新零售会员收益区域入参 */ @Data public class RetailMemberRegionParam implements Serializable { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java deleted file mode 100644 index 8e78ffa0..00000000 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/provider/MemberRetailProvider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.retail.member.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.retail.member.IMemberRetailApi; -import com.hzs.retail.member.service.ICuMemberRetailRegionService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * 新零售会员dubbo服务 - */ -@Slf4j -@DubboService -public class MemberRetailProvider implements IMemberRetailApi { - - @Autowired - private ICuMemberRetailRegionService iCuMemberRetailRegionService; - - @Override - public R checkRegion() { - try { - iCuMemberRetailRegionService.checkRegion(); - return R.ok(); - } catch (Exception e) { - log.error("定时任务处理收益区域异常", e); - return R.fail(e.getMessage()); - } - } - - @Override - public R cancelRegion(List pkIdList) { - try { - iCuMemberRetailRegionService.cancelRegion(pkIdList); - return R.ok(); - } catch (Exception e) { - log.error("区域失效操作异常,pkIdList:{}", pkIdList, e); - return R.fail(e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java index 464ed89e..2545fd66 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailAchieveService.java @@ -7,18 +7,9 @@ import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; import java.util.List; -import java.util.Map; public interface ICuMemberRetailAchieveService extends IService { - /** - * 查询会员盒数 - * - * @param pkMember 会员ID - * @return CuMemberRetailAchieveVO - */ - CuMemberRetailAchieveVO selectMemberSmallBox(Long pkMember, Integer pkCountry, Integer systemType); - /** * 查询会员大小区业绩 * @@ -27,14 +18,6 @@ public interface ICuMemberRetailAchieveService extends IService - */ - List selectMemberSmallBoxList(CuMemberRetailAchieveVO param); - /** * 获取会员结算明细 * @param pkMember diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java index 20c49716..34e3201d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/ICuMemberRetailRegionService.java @@ -3,7 +3,6 @@ package com.hzs.retail.member.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.retail.member.CuMemberRetailRegion; import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt; -import com.hzs.common.domain.system.base.BdArea; import com.hzs.retail.member.param.RetailMemberRegionParam; import com.hzs.retail.member.vo.UnboundAreaVO; @@ -32,14 +31,6 @@ public interface ICuMemberRetailRegionService extends IService listChooseRegion(Integer systemType); - /** * 未绑定收益区域 **/ @@ -50,18 +41,6 @@ public interface ICuMemberRetailRegionService extends IService memberretailRegList(CuMemberRetailRegionExt mrrExt); - /** - * 定时处理收益区域 - */ - void checkRegion(); - - /** - * 取消收益区域 - * - * @param pkIdList 收益区域ID - */ - void cancelRegion(List pkIdList); - /** * 会员购买订单数量 * diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java index 549489da..aa2b0ad3 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/CuMemberRetailAchieveServiceImpl.java @@ -5,7 +5,6 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.TableNameConstants; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.member.achieve.CuMemberRetailRange; @@ -21,10 +20,7 @@ import com.hzs.retail.member.service.ICuMemberRetailAchieveService; import com.hzs.retail.member.utils.DataStatisticsUtil; import com.hzs.retail.member.utils.PageResult; import com.hzs.retail.member.vo.*; -import com.hzs.system.config.IGradeServiceApi; -import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -51,64 +47,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable) - .memberRetailSTable(getTableSName()).memberCode(cuMember.getMemberCode()) - .pkMember(pkMember).pkMemberList(pkMemberList).build(); - - //查询会员是否激活 - // Integer enableStatus = baseMapper.selectMemberActiveState(memberAchieveVO); - Integer enableStatus = cuMember.getIsActivate(); - if (null != enableStatus && enableStatus.equals(EYesNo.YES.getIntValue())) { - //查询总盒数 - BigDecimal totalBox = baseMapper.selectMemberTotalBox(memberAchieveVO); - if (null != totalBox) { - BigDecimal maxBox = BigDecimal.ZERO; - //查询是否配置注水 - Integer total = baseMapper.selectWaterInjection(cuMember.getMemberCode()); - if (null != total && total > 0) { - //查询注水最大盒数 - maxBox = baseMapper.selectMemberBoxWaterInjection(memberAchieveVO); - } else { - //查询无注水最大盒数 - maxBox = baseMapper.selectMemberBoxNoWaterInjection(memberAchieveVO); - } -// memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox - maxBox).build(); - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(totalBox).smallAreaBox(totalBox.subtract(maxBox)).build(); - //总盒数大于2800的时候显示2800 - GradeDTO lastGrate = gradeServiceApi.getGradeByGradeValue(EGrade.S_VIP.getValue(), pkCountry).getData(); - //配置中的总盒数 - BigDecimal totalBoxConfig = lastGrate.getBoxTotal(); -// BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox() > totalBoxConfig ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - BigDecimal totalBoxMax = memberRetailAchieveVO.getTotalBox().compareTo(totalBoxConfig) > 0 ? totalBoxConfig : memberRetailAchieveVO.getTotalBox(); - memberRetailAchieveVO.setTotalBox(totalBoxMax); - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - } else { - memberRetailAchieveVO = CuMemberRetailAchieveVO.builder().totalBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - return memberRetailAchieveVO; - } - - @Override public CuMemberRetailAchieveVO selectMemberAchieve(Long pkMember, Integer pkCountry, Integer systemType) { //查询会员昨日业绩 @@ -143,18 +81,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl memberAchieveList, BigDecimal rate) { //查询最大业绩 - if(ObjectUtil.isEmpty(memberAchieveList)){ + if (ObjectUtil.isEmpty(memberAchieveList)) { return null; } for (CuMemberRetailAchieveVO cuMemberRetailAchieveVO : memberAchieveList) { - if(ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())){ + if (ObjectUtil.isEmpty(cuMemberRetailAchieveVO.getArealPv())) { cuMemberRetailAchieveVO.setArealPv(BigDecimal.ZERO); } } CuMemberRetailAchieveVO maxAchieveVO = memberAchieveList.stream().max(Comparator.comparing(CuMemberRetailAchieveVO::getArealPv)).get(); //查询小区业绩 BigDecimal smallAreaPv = memberAchieveList.stream().filter(achieveVO -> !achieveVO.getPkMember().equals(maxAchieveVO.getPkMember())).map(vo -> null == vo.getArealPv() ? BigDecimal.ZERO : vo.getArealPv()).reduce(BigDecimal.ZERO, BigDecimal::add); -// return CuMemberRetailAchieveVO.builder().smallAreaPv(getBigDecimal(smallAreaPv, rate)).pkBigMember(maxAchieveVO.getPkMember()).bigArealPv(getBigDecimal(maxAchieveVO.getArealPv(), rate)).build(); return CuMemberRetailAchieveVO.builder() .smallAreaPv(smallAreaPv) .pkBigMember(maxAchieveVO.getPkMember()) @@ -287,18 +210,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList, String memberRangeTable) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRangeTable).pkMemberList(pkMemberList).build(); - return baseMapper.selectBigAreaByPkMember(memberAchieveVO); - } - - /** * 查询会员直推业绩 * @@ -317,62 +228,49 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl selectTableNameIsExist(List tableNames) { - return baseMapper.selectTableNameIsExist(tableNames); - } - - /** * 转化万单位、汇率换算 * @@ -448,64 +329,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - // 2025年6月11日 取伞下 + 自己的ID -// List pkMemberList = baseMapper.selectSubMemberIdByRootMember(pkMember, systemType); - //根据国家查汇率 - BigDecimal rate = iCuMemberBaseService.getCurrency(pkCountry).getInExchangeRate(); - //查询自己业绩 - List memberSelfAchieveList = new ArrayList<>(); - - //会员业绩 - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder().memberRetailTable(memberRetailTable).pkMember(pkMember).systemType(systemType).build(); - CuMemberRetailAchieveVO orderAchieveVO = baseMapper.selectMemberOrderSumAchieveByPkMember(memberAchieveVO); - if (null != orderAchieveVO && orderAchieveVO.getArealPv().compareTo(BigDecimal.ZERO) > 0) { - orderAchieveVO.setPkMember(pkMember); - memberSelfAchieveList.add(orderAchieveVO); - } - //查询伞下业绩 - if (CollUtil.isNotEmpty(pkMemberList)) { - List memberPushAchieveList = getMemberPushSumAchieve(pkMemberList, memberRetailTable, memberSecondTable, systemType); - if (CollUtil.isNotEmpty(memberPushAchieveList)) { - memberSelfAchieveList.addAll(memberPushAchieveList); - } - } - if (CollUtil.isEmpty(memberSelfAchieveList)) { - return CuMemberRetailAchieveVO.builder().smallAreaPv(BigDecimal.ZERO).bigArealPv(BigDecimal.ZERO).build(); - } - return getMemberBigAndSmallAchieve(memberSelfAchieveList, rate); - } - - - /** - * 查询会员直推业绩(累计) - * - * @param pkMemberList 直推会员ID - * @return CuMemberAchieveVO - */ - private List getMemberPushSumAchieve(List pkMemberList, String memberRangeTable,String memberSecondTable, Integer systemType) { - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() - .memberRetailTable(memberRangeTable) - .memberRetailSTable(memberSecondTable) - .pkMemberList(pkMemberList).systemType(systemType).build(); - return baseMapper.selectMemberSumAchieve(memberAchieveVO); - } - - /** * 查询不前时间是否是本月第一天 * @@ -514,122 +337,10 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember) { - //查询参数 - getParam(param); - //查询自己的业绩 - BigDecimal selfBox = baseMapper.selectSelfNewBox(param); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigSmallBox(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); -// BigDecimal selfNewBox = null == selfBox ? 0 : selfBox; - BigDecimal selfNewBox = BigDecimal.ZERO; - if(ObjectUtil.isNotEmpty(selfBox)){ - selfNewBox = selfBox; - } - //判断大小市场增加自己新增的盒数 - if (!pkMember.equals(pkBigMember)) { -// cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setSmallAreaBox(cuMemberRetailAchieveVO.getSmallAreaBox().add(selfNewBox)); - } else { -// cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox() + selfNewBox); - cuMemberRetailAchieveVO.setBigAreaBox(cuMemberRetailAchieveVO.getBigAreaBox().add(selfNewBox)); - } - } - return cuMemberRetailAchieveVO; - } - return CuMemberRetailAchieveVO.builder().bigAreaBox(BigDecimal.ZERO).smallAreaBox(BigDecimal.ZERO).build(); - } - - - /** - * 获取会员金额、业绩、盒数表 - * - * @return String - */ - private String getAchieveAndBoxTableName(String date) { - CuMemberSettlePeriod cuMemberSettlePeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(date); - if(ObjectUtil.isNotEmpty(cuMemberSettlePeriod)){ - int period = cuMemberSettlePeriod.getPkId(); - return TableNameConstants.CU_MEMBER_AMOUNT_BOX + period; - } - return ""; - } - - @Override - public CuMemberRetailAchieveVO selectMemberBigBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - if (null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - param.setPkMemberList(Collections.singletonList(pkBigMember)); - CuMemberRetailAchieveVO cuMemberRetailAchieveVO = baseMapper.selectMemberBigBoxList(param); - if (null != cuMemberRetailAchieveVO) { - cuMemberRetailAchieveVO.setPkBigMember(pkBigMember); - } - return cuMemberRetailAchieveVO; - } - return null; - } - - - private CuMemberRetailAchieveVO getParam(CuMemberRetailAchieveVO param) { - //上月最后一天的表名 - String upLastMonth = DateUtils.beforeMonthLastDateStr(new Date()); - param.setRetailUpMonthTable(getAchieveAndBoxTableName(upLastMonth)); - //昨天的表名 - String yesterdayTableName = LocalDate.now().minus(1, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setMemberRetailTable(getAchieveAndBoxTableName(yesterdayTableName)); - //前天的表名 - String beforeYesterdayTableName = LocalDate.now().minus(2, ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); - param.setBeforeYesterdayTableName(getAchieveAndBoxTableName(beforeYesterdayTableName)); - //是否是当月第一天 - int isFirst = isFirstDayOfMonth() ? EYesNo.YES.getIntValue() : EYesNo.NO.getIntValue(); - param.setIsFirst(isFirst); - //当天表名 - param.setMemberRetailSTable(getTableSName()); - return param; - } - - @Override - public List selectMemberSmallBoxList(CuMemberRetailAchieveVO param) { - Long pkBigMember = param.getPkBigMember(); - List pkMemberList = param.getPkMemberList(); - if (CollUtil.isNotEmpty(pkMemberList) && null != pkBigMember && isActivate(param.getPkMember())) { - //查询参数 - getParam(param); - //上上月表名 - param.setSecondMonthLastDayTable(getSecondMontLastDayTableSName()); - pkMemberList.remove(pkBigMember); - param.setPkMemberList(pkMemberList); - //删除大区后,如果为空,则不查询 - if (CollUtil.isNotEmpty(pkMemberList)) { - return baseMapper.selectMemberSmallBoxList(param); - } - } - return new ArrayList<>(); - } - @Override public CuMemberRetailDataStatisticsResultVO getRetailDataStatisticsDetail(Long pkMember, Integer pkCountry, Integer systemType) { Long userId = SecurityUtils.getUserId(); @@ -650,49 +361,6 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - pkMemberList.add(userId); - CuMemberRetailAchieveVO memberAchieveVO = CuMemberRetailAchieveVO.builder() - .memberRetailTable(memberRetailTable) - .memberRetailSTable(memberSecondTable) - .pkMemberList(pkMemberList).systemType(systemType).build(); - List statisticsDetailVOList = baseMapper.getRetailDataStatisticsDetail(memberAchieveVO); - CuMember cuMember = iCuMemberService.queryMember(userId); - BigAndSmallRangeVO bigAndSmallRangeVO = DataStatisticsUtil.getBigAndSmallRangeVO(statisticsDetailVOList, cuMember); - MarketDynamicsQueryDateParam param = new MarketDynamicsQueryDateParam(); - DataStatisticsUtil.setQueryDateParam(param); - param.setCurrentDayTableName(memberSecondTable); - param.setCurrentMonthTableName(memberRetailTable); - param.setLastMonthTableName(getDayTableName(param.getLastMonthDate())); - List detailVOList = baseMapper.getMarketDynamicsDetail(param); - BigDecimal totalMouthPV = detailVOList.stream() - .map(MarketDynamicsDetailVO::getCurrentMonthPv) - .filter(Objects::nonNull) - .reduce(BigDecimal.ZERO, BigDecimal::add); - BigDecimal bigMouthPV = BigDecimal.ZERO; - MarketDynamicsDetailVO bigRange = detailVOList.stream().filter(vo -> { - assert bigAndSmallRangeVO != null; - return vo.getPkId().equals(bigAndSmallRangeVO.getBigRangeId()); - }).findFirst().orElse(null); - if(ObjectUtil.isNotEmpty(bigRange)){ - bigMouthPV = bigRange.getCurrentMonthPv(); - } - BigDecimal smallMountPV = totalMouthPV.subtract(bigMouthPV); - return CurrentMonthVO.builder().smallCurrentMonthPV(smallMountPV).totalCurrentMonthPV(totalMouthPV).build(); - } @Override public PageResult getMarketDynamics(MarketDynamicsQueryDateParam param) { @@ -705,8 +373,8 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl pkMemberList = baseMapper.selectDirectPushByPkMember(pkMember, systemType); - if(CollUtil.isEmpty(pkMemberList)){ - return new PageResult(0, new ArrayList<>()); + if (CollUtil.isEmpty(pkMemberList)) { + return new PageResult<>(0, new ArrayList<>()); } param.setPkIdList(pkMemberList); List detailVOList = baseMapper.getMarketDynamicsDetail(param); @@ -716,43 +384,11 @@ public class CuMemberRetailAchieveServiceImpl extends ServiceImpl implements ICuMemberRetailRegionService { - @Autowired - private ICuMemberRetailAchieveService iCuMemberRetailAchieveService; - @Autowired private RedisService redisService; @@ -84,11 +77,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl listChooseRegion(Integer systemType) { - return baseMapper.listChooseRegion(systemType, SecurityUtils.getUserId()); - } - @Override public List unboundAreaList(Integer pkCountry, Integer systemType) { return baseMapper.unboundAreaList(pkCountry, systemType); @@ -99,91 +87,6 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl memberList = baseMapper.listCheckRegionMember(); - - if (CollectionUtil.isNotEmpty(memberList)) { - memberList.parallelStream().forEach(tmpMember -> { - if (ENoticeWebsiteType.ADMIN.getValue() == tmpMember.getSource()) { - log.info("定时任务区域有效, 会员 {} 后台配置,不取消收益区域", tmpMember.getPkId()); - return; - } - - // 当前时间 - Date nowDate = new Date(); - - if (tmpMember.getGradeValue() < EGrade.S_VIP.getValue()) { - // 会员等级不足V5,需要关掉收益区域 - log.info("定时任务区域有效, 会员 {} 等级 {} 不足取消收益区域", tmpMember.getPkId(), tmpMember.getGradeValue()); - this.update(Wrappers.lambdaUpdate() - .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) - .set(CuMemberRetailRegion::getModifiedTime, nowDate) - ); - } else { -// // 获取小市场业绩 -// CuMemberRetailAchieveVO retailAchieve = iCuMemberRetailAchieveService.selectMemberSumAchieve(tmpMember.getPkId(), CountryConstants.CHINA_COUNTRY, tmpMember.getSystemType()); -// if (retailAchieve.getSmallAreaPv().compareTo(BigDecimal.ZERO) <= 0) { -// // 正常有区域业绩肯定达标,由2万突然变0基本不可能,此处暂时不处理 -// log.info("定时任务区域有效, 会员 {} 小市场业绩归0,暂时不取消收益区域", tmpMember.getPkId()); -// return; -// } -// // 2025.02.07 确认需求,如果是历史已经升上去的,还是走老逻辑只校验小市场 -// String checkDate = "2025-02-10 00:00:00"; -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// checkDate = "2025-02-07 00:00:00"; -// } -// if (tmpMember.getCreationTime().compareTo(DateUtils.parseDateOne(checkDate, DateUtils.YYYY_MM_DD_HH_MM_SS)) > 0) { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// || retailAchieve.getBigArealPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0 -// ) { -// // 大市场、小市场业绩小于2万,需要取消收益区域 -// log.info("2.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } else { -// if (retailAchieve.getSmallAreaPv().multiply(new BigDecimal("10000")).compareTo(SysConstants.SMALL_AREA_PV) < 0) { -// // 小市场业绩小于2万,需要取消收益区域 -// log.info("1.定时任务区域有效, 会员 {} 小市场业绩 {} 取消收益区域", tmpMember.getPkId(), retailAchieve.getSmallAreaPv()); -// if (EEnv.TEST.getValue().equals(HzsConfig.getEnv())) { -// this.update(Wrappers.lambdaUpdate() -// .eq(CuMemberRetailRegion::getPkMember, tmpMember.getPkId()) -// .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) -// .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) -// .set(CuMemberRetailRegion::getPkModified, tmpMember.getPkId()) -// .set(CuMemberRetailRegion::getModifiedTime, nowDate) -// ); -// } -// } -// } - } - }); - } - } - - @Override - public void cancelRegion(List pkIdList) { - this.update(Wrappers.lambdaUpdate() - .in(CuMemberRetailRegion::getPkId, pkIdList) - .eq(CuMemberRetailRegion::getEffective, EYesNo.YES.getIntValue()) - .set(CuMemberRetailRegion::getEffective, EYesNo.NO.getIntValue()) - .set(CuMemberRetailRegion::getPkModified, MagicNumberConstants.PK_ADMIN) - .set(CuMemberRetailRegion::getModifiedTime, new Date()) - ); - } - @Override public int getOrderCount(Long pkMember, Integer systemType, List waresCodeList) { return baseMapper.getOrderCount(pkMember, systemType, waresCodeList); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java index 383dbbb4..bd5860cd 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/service/impl/MemberRetailServiceImpl.java @@ -3,7 +3,6 @@ package com.hzs.retail.member.service.impl; import cn.hutool.core.util.DesensitizedUtil; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.SysConstants; -import com.hzs.common.core.enums.EGrade; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.member.base.service.ICuMemberService; @@ -41,17 +40,8 @@ public class MemberRetailServiceImpl implements IMemberRetailService { .pkMaxAwards(cuMember.getPkMaxAwards()) .build()).getData(); - // 会员标记(0=正常会员,1=V0会员,2=V5会员) - // 正常会员: 指V1以上,可以查看所有功能 - // V0会员: 指V0级别,只有会员专区 - // V5会员: 指V5级别,只有V5显示市场动态等 + // 会员标记(0=正常会员) int memberSign = 0; - if (EGrade.START_UP.getValue() == memberDataDTO.getGradeValue()) { - memberSign = 1; - } - if (EGrade.S_VIP.getValue() == memberDataDTO.getGradeValue()) { - memberSign = 2; - } // 账号控制 Integer control = null; diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java index 2c9d0ad1..b30be686 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/utils/DataStatisticsUtil.java @@ -16,141 +16,86 @@ import java.time.LocalDate; import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; -import java.util.ArrayList; import java.util.Comparator; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; /** * 用户统计数据工具 - * 主要用户统计用户的业绩/盒数/明细等 + * 主要用户统计用户的业绩/明细等 * 主要处理的类为 + * * @link com.hzs.retail.member.vo.CuMemberRetailDataStatisticsDetailVO */ public class DataStatisticsUtil { - private static final Long SELF_VIRTUAL_ID = -1000L; - private static final Long BIG_RANGE_VIRTUAL_ID = -2000L; - private static final Long SMALL_RANGE_VIRTUAL_ID = -3000L; - private static final String SELF_VIRTUAL_NAME = "个人消费虚拟分支"; - private static final String BIG_RANGE_VIRTUAL_NAME = "注水大区虚拟分支"; - private static final String SMALL_RANGE_VIRTUAL_NAME = "注水小区虚拟分支"; - public static CuMemberRetailDataStatisticsResultVO getCalcMap(List detailVOList, CuMember cuMember){ + private static final Long SELF_VIRTUAL_ID = -1000L; + private static final String SELF_VIRTUAL_NAME = "个人消费虚拟分支"; + + public static CuMemberRetailDataStatisticsResultVO getCalcMap(List detailVOList, CuMember cuMember) { Long pkId = cuMember.getPkId(); // 非激活直接返0 // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(BigDecimal.ZERO) .totalPv(BigDecimal.ZERO) - .bigRangeTotalBoxNum(BigDecimal.ZERO) .bigRangeTotalPv(BigDecimal.ZERO) - .smallRangeTotalBoxNum(BigDecimal.ZERO) .smallRangeTotalPv(BigDecimal.ZERO) .build(); } calcDetailVOTotalField(detailVOList, pkId); - addVirtualBranch(detailVOList, pkId); +// addVirtualBranch(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO total = getDetailVOByPKID(detailVOList, pkId); - if(EYesNo.NO.getIntValue() == cuMember.getIsActivate()){ + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { // 昨日非激活 排除昨日日结表数据 excludeDailySettlementData(detailVOList); } - else{ - // 排除注水数据 - excludeWaterInjectionData(detailVOList, pkId); - } - CuMemberRetailDataStatisticsDetailVO bigRangeBox = getBigRangeBoxDetailVO(detailVOList, pkId); CuMemberRetailDataStatisticsDetailVO bigRangePv = getBigRangePVDetailVO(detailVOList, pkId); -// BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum() - bigRangeBox.getTotalBoxNum(); - BigDecimal smallRangeTotalBoxNum = total.getTotalBoxNum().subtract(bigRangeBox.getTotalBoxNum()); - if(smallRangeTotalBoxNum.compareTo(BigDecimal.ZERO) < 0){ - smallRangeTotalBoxNum = BigDecimal.ZERO; - } BigDecimal smallRangeTotalPv = total.getTotalPv().subtract(bigRangePv.getTotalPv()); - if(smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0){ + if (smallRangeTotalPv.compareTo(BigDecimal.ZERO) < 0) { smallRangeTotalPv = BigDecimal.ZERO; } return CuMemberRetailDataStatisticsResultVO.builder() - .totalBoxNum(total.getTotalBoxNum()) .totalPv(formatPV(total.getTotalPv())) - .bigRangeTotalBoxNum(bigRangeBox.getTotalBoxNum()) .bigRangeTotalPv(formatPV(bigRangePv.getTotalPv())) - .smallRangeTotalBoxNum(smallRangeTotalBoxNum) .smallRangeTotalPv(formatPV(smallRangeTotalPv)) .build(); } + /** * 计算集合内数据总数 + * * @param detailVOList */ - public static void calcDetailVOTotalField(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getTeamBoxNum()) - .add(detailVO.getSNewBoxNum()) - .add(detailVO.getSTeamNewBoxNum()) - .add(detailVO.getBigBoxNum()) - .add(detailVO.getSmallBoxNum()) - ); -// detailVO.setTotalBoxNum( -// detailVO.getConsumeBoxNum() // 个人累计消费盒数(日结) -//// + detailVO.getNewBoxNum() // 个人新增盒数(日结) -// + detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -//// + detailVO.getTeamNewBoxNum() // 团队新增盒数(日结) -// + detailVO.getSNewBoxNum() // 个人新增消费盒数(秒结) -// + detailVO.getSTeamNewBoxNum() // 团队新增盒数(秒结) -// + detailVO.getBigBoxNum() // 个人注水大区盒数(日结) -// + detailVO.getSmallBoxNum() // 个人注水小区盒数(日结) + public static void calcDetailVOTotalField(List detailVOList, Long pkId) { + detailVOList.forEach(detailVO -> { +// detailVO.setTotalPv( +// detailVO.getConsumePv() +// .add(detailVO.getTeamConsumePv()) +// .add(detailVO.getSNewConsumePv()) +// .add(detailVO.getSTeamNewPv()) // ); detailVO.setTotalPv( - detailVO.getConsumePv() -// .add(detailVO.getNewConsumePv()) - .add(detailVO.getTeamConsumePv()) -// .add(detailVO.getTeamNewPv()) - .add(detailVO.getSNewConsumePv()) - .add(detailVO.getSTeamNewPv()) + detailVO.getTeamConsumePv() + .add(detailVO.getSNewConsumePv()) + .add(detailVO.getSTeamNewPv()) ); }); } /** * 排除昨日日结数据 + * * @param detailVOList */ - public static void excludeDailySettlementData(List detailVOList){ - detailVOList.stream().forEach(detailVO -> { - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getTeamBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getTeamBoxNum() // 团队累计消费盒数(日结) -// ); + public static void excludeDailySettlementData(List detailVOList) { + detailVOList.forEach(detailVO -> { detailVO.setTotalPv( detailVO.getTotalPv().subtract(detailVO.getTeamConsumePv()) ); }); } - /** - * 排除昨日日结注水数据 - * 自己的注水不排除 - * @param detailVOList - */ - public static void excludeWaterInjectionData(List detailVOList, Long pkId){ - detailVOList.stream().forEach(detailVO -> { - if(!detailVO.getPkId().equals(pkId)){ - detailVO.setTotalBoxNum(detailVO.getTotalBoxNum().subtract(detailVO.getBigBoxNum()).subtract(detailVO.getSmallBoxNum())); -// detailVO.setTotalBoxNum( -// detailVO.getTotalBoxNum() -// - detailVO.getBigBoxNum() // 注水大区 -// - detailVO.getSmallBoxNum() // 注水小区 -// ); - } - }); - } - /** * 增加虚拟分支 主要为 * 1.自己的消费总数 @@ -158,103 +103,50 @@ public class DataStatisticsUtil { * * @param detailVOList */ - public static void addVirtualBranch(List detailVOList, Long pkId){ + public static void addVirtualBranch(List detailVOList, Long pkId) { CuMemberRetailDataStatisticsDetailVO detailVO = getDetailVOByPKID(detailVOList, pkId); - if(ObjectUtil.isNotEmpty(detailVO)){ + if (ObjectUtil.isNotEmpty(detailVO)) { CuMemberRetailDataStatisticsDetailVO selfVirtualDetailVO = getCuMemberRetailDataStatisticsDetailVO(detailVO); detailVOList.add(selfVirtualDetailVO); -// if(detailVO.getBigBoxNum() > 0 || detailVO.getSmallBoxNum() > 0){ - if(detailVO.getBigBoxNum().compareTo(BigDecimal.ZERO) >= 0 || detailVO.getSmallBoxNum().compareTo(BigDecimal.ZERO) >= 0){ - CuMemberRetailDataStatisticsDetailVO bigRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(BIG_RANGE_VIRTUAL_ID) - .memberCode(BIG_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getBigBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - CuMemberRetailDataStatisticsDetailVO smallRangeVirtualDetailVO = CuMemberRetailDataStatisticsDetailVO.builder() - .pkId(SMALL_RANGE_VIRTUAL_ID) - .memberCode(SMALL_RANGE_VIRTUAL_NAME) - .totalBoxNum(detailVO.getSmallBoxNum()) - .totalPv(BigDecimal.ZERO) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) - .build(); - detailVOList.add(bigRangeVirtualDetailVO); - detailVOList.add(smallRangeVirtualDetailVO); - } } - } private static CuMemberRetailDataStatisticsDetailVO getCuMemberRetailDataStatisticsDetailVO(CuMemberRetailDataStatisticsDetailVO detailVO) { return CuMemberRetailDataStatisticsDetailVO.builder() .pkId(SELF_VIRTUAL_ID) .memberCode(SELF_VIRTUAL_NAME) - .totalBoxNum( - detailVO.getConsumeBoxNum() - .add(detailVO.getSNewBoxNum()) - ) -// .totalBoxNum( -// detailVO.getConsumeBoxNum() -//// + detailVO.getNewBoxNum() -// + detailVO.getSNewBoxNum() -// ) .totalPv( detailVO.getConsumePv() .add(detailVO.getSNewConsumePv()) ) - .bigBoxNum(BigDecimal.ZERO) - .smallBoxNum(BigDecimal.ZERO) .build(); } - /** - * 移除总数Top1 - * @param detailVOList - */ - public static List getSmallRangeList(List detailVOList){ - List result = new ArrayList<>(); - BigDecimal maxTotalBoxNum = getMaxTotalBoxNum(detailVOList); - if (maxTotalBoxNum == null) { - return new ArrayList<>(detailVOList); - } - boolean removed = false; - for (CuMemberRetailDataStatisticsDetailVO vo : detailVOList) { - if (!removed && Objects.equals(vo.getTotalBoxNum(), maxTotalBoxNum)) { - removed = true; - } else { - result.add(vo); - } - } - return result; - } - /** * 根据ID获取对应数据 + * * @param detailVOList * @return */ - public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId){ + public static CuMemberRetailDataStatisticsDetailVO getDetailVOByPKID(List detailVOList, Long pkId) { return detailVOList.stream().filter(o -> o.getPkId().equals(pkId)).findFirst().orElse(null); } /** * 组装市场动态列表数据 + * * @param detailVOList */ - public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param){ - if(StrUtil.isNotEmpty(param.getKeyWords())){ + public static PageResult getMarketDynamicsAssemblyData(List detailVOList, MarketDynamicsQueryDateParam param) { + if (StrUtil.isNotEmpty(param.getKeyWords())) { detailVOList = detailVOList.stream().filter(o -> o.getMemberCode().contains(param.getKeyWords()) || o.getMemberName().contains(param.getKeyWords())).collect(Collectors.toList()); } - MarketDynamicsDetailVO bigRange = null; - if(param.getQueryType().equals(1)){ + MarketDynamicsDetailVO bigRange; + if (param.getQueryType().equals(1)) { bigRange = detailVOList.stream() -// .max(Comparator.comparingInt(MarketDynamicsDetailVO::getTotalBoxNum)) .max(Comparator.comparing(MarketDynamicsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) .orElse(null); - }else{ + } else { bigRange = detailVOList.stream() .max(Comparator.comparing(MarketDynamicsDetailVO::getTodayPv)) .orElse(null); @@ -266,35 +158,22 @@ public class DataStatisticsUtil { return result; } - private static BigDecimal getMaxTotalBoxNum(List detailVOList) { + private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId) { return detailVOList.stream() - .map(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum) - .filter(Objects::nonNull) -// .max(Integer::compare) - .max(BigDecimal::compareTo) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangeBoxDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) -// .max(Comparator.comparingInt(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum)) - .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalBoxNum, BigDecimal::compareTo)) - .orElse(null); - } - private static CuMemberRetailDataStatisticsDetailVO getBigRangePVDetailVO(List detailVOList, Long pkId){ - return detailVOList.stream() - .filter(vo -> vo.getTotalBoxNum() != null && !vo.getPkId().equals(pkId)) +// .filter(vo -> !vo.getPkId().equals(pkId)) .max(Comparator.comparing(CuMemberRetailDataStatisticsDetailVO::getTotalPv)) .orElse(null); } - public static BigDecimal formatPV(BigDecimal pv){ + + public static BigDecimal formatPV(BigDecimal pv) { return pv.divide( new BigDecimal("10000"), 4, RoundingMode.FLOOR ); } - public static void setQueryDateParam(MarketDynamicsQueryDateParam param){ + + public static void setQueryDateParam(MarketDynamicsQueryDateParam param) { LocalDate.now(ZoneId.of("Asia/Shanghai")); LocalDate currentDate = LocalDate.now(); LocalDate yesterdayDate = currentDate.minusDays(1); @@ -303,12 +182,28 @@ public class DataStatisticsUtil { param.setNowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setYesterdayDate(yesterdayDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); param.setLastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("当前日期: " + currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// System.out.println("上一个月最后一天: " + lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))); -// return MarketDynamicsQueryDateParam.builder() -// .nowDate(currentDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .lastMonthDate(lastDayOfPreviousMonth.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))) -// .build(); + } + + public static BigAndSmallRangeVO getBigAndSmallRangeVO(List detailVOList, CuMember cuMember) { + Long pkId = cuMember.getPkId(); + BigAndSmallRangeVO bigAndSmallRangeVO = new BigAndSmallRangeVO(); + // 非激活直接返0 + // 激活判断上一天的ENABLE_STATUS 0为正常 1为当天激活 不计算日结数据 + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { + return null; + } + calcDetailVOTotalField(detailVOList, pkId); + addVirtualBranch(detailVOList, pkId); + if (EYesNo.NO.getIntValue() == cuMember.getIsActivate()) { + // 昨日非激活 排除昨日日结表数据 + excludeDailySettlementData(detailVOList); + } + CuMemberRetailDataStatisticsDetailVO big = getBigRangePVDetailVO(detailVOList, pkId); + bigAndSmallRangeVO.setBigRangeId(big.getPkId()); + List smallIdList = detailVOList.stream() + .map(CuMemberRetailDataStatisticsDetailVO::getPkId).filter(id -> !id.equals(big.getPkId())).collect(Collectors.toList()); + bigAndSmallRangeVO.setSmallRangeId(smallIdList); + return bigAndSmallRangeVO; } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java index 593613bd..b7cbf855 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailAchieveVO.java @@ -59,25 +59,6 @@ public class CuMemberRetailAchieveVO implements Serializable { */ private Integer status; - /** - * 总盒数 - */ - @BigDecimalFormat - private BigDecimal totalBox; - - /** - * 小市场盒数 - */ - @BigDecimalFormat - private BigDecimal smallAreaBox; - - - /** - * 大市场盒数 - */ - @BigDecimalFormat - private BigDecimal bigAreaBox; - /** * 小区业绩 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java index 3e52e0d5..b3559969 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsDetailVO.java @@ -51,31 +51,6 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal teamNewPv; - /** - * 日结表-个人累计消费盒数 - */ - private BigDecimal consumeBoxNum; - /** - * 日结表-个人当日新消费盒数 - */ - private BigDecimal newBoxNum; - /** - * 日结表-个人伞下累计消费盒数 - */ - private BigDecimal teamBoxNum; - /** - * 日结表-个人伞下新消费盒数 - */ - private BigDecimal teamNewBoxNum; - - /** - * 秒结表-个人新消费盒数 - */ - private BigDecimal sNewBoxNum; - /** - * 秒结表-团队新消费盒数 - */ - private BigDecimal sTeamNewBoxNum; /** * 秒结表-个人新消费pv */ @@ -85,25 +60,10 @@ public class CuMemberRetailDataStatisticsDetailVO implements Serializable { */ private BigDecimal sTeamNewPv; - private BigDecimal sTeamBoxNum; - /** * 个人总业绩 */ private BigDecimal totalPv; - /** - * 个人总盒数 - */ - private BigDecimal totalBoxNum; - - /** - * 注水大区 - */ - private BigDecimal bigBoxNum; - /** - * 注水小区 - */ - private BigDecimal smallBoxNum; @Override public CuMemberRetailDataStatisticsDetailVO clone() { diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java index df6c1a61..639e7d08 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/CuMemberRetailDataStatisticsResultVO.java @@ -9,7 +9,6 @@ import lombok.NoArgsConstructor; import java.io.Serializable; import java.math.BigDecimal; - /** * 会员数据统计 */ @@ -30,19 +29,6 @@ public class CuMemberRetailDataStatisticsResultVO implements Serializable { */ private String memberCode; - /** - * 总盒数 - */ - private BigDecimal totalBoxNum; - /** - * 大区盒数 - */ - private BigDecimal bigRangeTotalBoxNum; - /** - * 小区盒数 - */ - private BigDecimal smallRangeTotalBoxNum; - /** * 总业绩 */ diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RecommendListVO.java b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RecommendListVO.java index 739ea684..43ea0f9a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RecommendListVO.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/retail/member/vo/RecommendListVO.java @@ -2,12 +2,14 @@ package com.hzs.retail.member.vo; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonIgnore; +import com.hzs.common.core.annotation.BigDecimalFormat; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.math.BigDecimal; import java.util.Date; /** @@ -54,5 +56,15 @@ public class RecommendListVO implements Serializable { * 手机号 */ private String phone; + /** + * 注册业绩 + */ + @BigDecimalFormat + private BigDecimal consumeAchieve; + + /** + * 团队人数 + */ + private Integer teamCount; } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml index 5c02d7bc..ddc72bef 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml @@ -233,21 +233,11 @@ and account2 + #{account2} >= 0 + + and account4 + #{account4} >= 0 +
- - - select a.pk_member, @@ -1064,25 +1007,6 @@ - - - - - - MERGE INTO cu_member_account m - USING - ( - - select #{item.pkMember} pk_member, - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - - - #{item.account4} account4, - #{item.withdrawAccount4} withdrawAccount4, - - - #{item.account4} account4, - #{item.consumeAccount4} consumeAccount4, - #{item.withdrawAccount4} withdrawAccount4, - - FROM DUAL - - ) t - ON ( t.pk_member=m.pk_member and m.pk_member in - - #{item.pkMember} - ) - WHEN MATCHED THEN - UPDATE SET - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - - m.account4 = NVL(t.account4, 0) + m.account4, - m.consume_account4 = NVL(t.consumeAccount4, 0) + m.consume_account4, - m.withdraw_account4 = NVL(t.withdrawAccount4, 0) + m.withdraw_account4, - - m.MODIFIED_TIME = sysdate,m.pk_modified = #{pkModified} - - - - select mb.pk_id pkId, + select mb.pk_id pkId, mb.card_number cardNumber, mb.default_card defaultCard, b.pk_transaction pkBank, b.background_img backgroundImg, - b.bank_name bankName, + b.bank_name bankName, b.logo - from cu_member_bank mb - left join bd_bank b - on mb.pk_bank = b.pk_id - and b.del_flag = 0 - and b.enable_state = 0 - where mb.del_flag = 0 - and mb.pk_country = #{pkCountry} - and mb.pk_member = #{pkMember} - order by mb.default_card desc + from cu_member_bank mb + left join bd_bank b + on mb.pk_bank = b.pk_id + and b.del_flag = 0 + and b.enable_state = 0 + where mb.del_flag = 0 + and mb.pk_country = #{pkCountry} + and mb.pk_member = #{pkMember} + order by mb.default_card desc diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml index 1e17c534..f95b1c39 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberTradeMapper.xml @@ -31,15 +31,15 @@ m.member_name as memberName, v.VERTEX_NAME as vertexName, c.TEAM_NAME as teamName - from cu_member_trade t - left join cu_member m - on t.pk_member = m.pk_id - left join cu_member_team c - ON c.pk_id = m.pk_team_code - and c.del_flag = 0 - left join bd_vertex v - on v.pk_id = m.PK_VERTEX - and v.del_flag = 0 + from cu_member_trade t + left join cu_member m + on t.pk_member = m.pk_id + left join cu_member_team c + ON c.pk_id = m.pk_team_code + and c.del_flag = 0 + left join bd_vertex v + on v.pk_id = m.PK_VERTEX + and v.del_flag = 0 @@ -112,24 +112,14 @@ order by t.creation_time Desc,t.PK_ID Desc - - - @@ -160,20 +150,20 @@ - select distinct t.trade_type - from cu_member_trade t + select distinct t.trade_type + from cu_member_trade t where t.del_flag = 0 - and t.pk_country =#{pkCountry} - and t.pk_member= #{pkMember} + and t.pk_country = #{pkCountry} + and t.pk_member = #{pkMember} order by t.trade_type @@ -232,69 +222,16 @@ #{item}
- - merge into cu_member_trade a - using ( - select m.pk_id, m.pk_member, m.trade_code, m.pk_account, m.trade_type,m.trade_classify, m.pk_rate, m.trade_amount, - (case when ba.field_value=4 then ca.account4 + m.trade_amount when ba.field_value=5 then ca.account5 + m.trade_amount - when ba.field_value=8 then ca.account8 + m.trade_amount when ba.field_value=9 then ca.account9 + m.trade_amount - else ca.account10 + m.trade_amount end) trade_balance, - (case when ba.field_value=4 then ca.account4 when ba.field_value=5 then ca.account5 when ba.field_value=8 then ca.account8 - when ba.field_value=9 then ca.account9 else ca.account10 end) trade_before_balance, - m.source_code, m.trade_statue, m.remarks, m.pk_country, m.creation_time, m.pk_creator from( - - select #{item.pkId} pk_id,#{item.tradeCode} trade_code, #{item.tradeClassify} trade_classify, - #{item.pkMember} pk_member,#{item.pkAccount} pk_account,#{item.pkRate} pk_rate,#{item.tradeAmount} trade_amount, - #{item.sourceCode} source_code,#{item.tradeStatue} trade_statue,#{item.remarks} remarks, - #{item.tradeType} trade_type,#{item.pkCountry} pk_country,#{item.pkCreator} pk_creator, - #{item.creationTime} creation_time from dual - ) m - inner join cu_member_account ca - on m.pk_member = ca.pk_member - inner join bd_account ba - on ba.pk_id = m.pk_account - ) b - on (a.pk_id = b.pk_id) - when not matched then - insert (pk_id, pk_member, trade_code, pk_account, trade_type, - trade_classify, pk_rate, trade_amount, trade_balance,trade_before_balance, - source_code, trade_statue, remarks, pk_country, creation_time, pk_creator) - values(b.pk_id,b.pk_member,b.trade_code,b.pk_account,b.trade_type, - b.trade_classify,b.pk_rate,b.trade_amount,b.trade_balance,b.trade_before_balance, - b.source_code,b.trade_statue,b.remarks,b.pk_country,b.creation_time,b.pk_creator) - - - select * - from cu_member_trade cmt - where cmt.pk_id in - (select max(pk_id) - from cu_member_trade cmt - where cmt.del_flag = 0 - and cmt.pk_member = #{pkMember} - and cmt.source_code = #{sourceCode} - - and cmt.trade_classify = #{tradeClassify} - - group by cmt.trade_classify, cmt.pk_account) + from cu_member_trade t + left join bd_account a + on t.pk_account = a.pk_id + and a.del_flag = 0 + where t.del_flag = 0 + and a.field_value = 4 + and t.source_code = #{sourceCode} - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml index 05a3d358..6f10800f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberWithdrawMapper.xml @@ -34,19 +34,6 @@ - - - DEL_FLAG - , - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, PK_MEMBER, WITHDRAW_CODE, PK_ACCOUNT, PK_BANK, PK_RATE, CASH_AMOUNT, SERVICE_CHARGE, INCOME_TAX, - ISSUED_AMOUNT,APPROVE_STATE, PAYMENT_TIME, PAYER, REMARKS, APPROVER, APPROVE_TIME, PK_ROLE, ROLE_NAME,STATUS,PAYER_REMARKS,APPROVE_REMARKS - - SELECT r.*, m.member_code memberCode, diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuActiveMemberCensusMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuActiveMemberCensusMapper.xml index ac91e0c4..80aa3903 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuActiveMemberCensusMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuActiveMemberCensusMapper.xml @@ -2,17 +2,6 @@ - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml index f6c673bf..36e6684e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/achieve/CuMemberRetailRangeMapper.xml @@ -10,14 +10,6 @@ AND m.pk_parent = #{pkMember} - - SELECT SUM(t1.arealPv) arealPv ,#{pkMember} pkMember @@ -52,63 +44,6 @@ - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - ) t1 - - - - - - - - - - - - - - - - - - - - - - - - - - - SELECT nvl(sum(box), 0) bigAreaBox, 0 smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box - FROM ${memberRetailTable} ab - where ab.pk_member = #{pkBigMember} - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box - FROM ${retailUpMonthTable} ab - where ab.pk_member = #{pkBigMember} - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box - from ${memberRetailSTable} rs - where rs.pk_member = #{pkBigMember}) t0 - - - - SELECT 0 bigAreaBox, nvl(sum(box), 0) smallAreaBox - FROM ( - - SELECT ab.team_sum_box + ab.sum_box box, ab.pk_member - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 box, ab.pk_member - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select NVL(rs.new_box_num + rs.team_new_box_num, 0) box, - rs.pk_member - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - ) t0 - - - - - - SELECT ab.team_sum_box + ab.sum_box yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT ab.team_sum_box * -1 + ab.sum_box * -1 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${beforeYesterdayTableName} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) realTimeBox, - 0 upMonthBox, - 0 monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box + ab.sum_box monthBox, - ab.pk_member pkMember - FROM ${memberRetailTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - ab.team_sum_box * -1 + ab.sum_box * -1 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - - select 0 yesterdayBox, - 0 realTimeBox, - 0 upMonthBox, - NVL(rs.new_box_num + rs.team_new_box_num, 0) monthBox, - rs.pk_member pkMember - from ${memberRetailSTable} rs - where rs.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box + ab.sum_box upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${retailUpMonthTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - union all - SELECT 0 yesterdayBox, - 0 realTimeBox, - ab.team_sum_box * -1 + ab.sum_box * -1 upMonthBox, - 0 monthBox, - ab.pk_member pkMember - FROM ${secondMonthLastDayTable} ab - where ab.pk_member in - - - - ) or mr.pk_member IN ( - , - - - #{item} - - - - - - - - + + - - - - select - cmrs.new_box_num, - cmrs.team_new_box_num, cmrs.new_consume_pv, cmrs.team_new_pv, @@ -333,13 +299,6 @@ - - select - cmrs.new_box_num, - cmrs.team_new_box_num, cmrs.new_consume_pv, cmrs.team_new_pv, diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml index 514ef1cf..322c218f 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/address/CuMemberGiftMapper.xml @@ -4,24 +4,24 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + - + - - - - - - - - - - - update CU_MEMBER set PK_PARENT = #{pkParent}, @@ -2043,17 +1953,6 @@ and cm.member_name = #{memberName} and cm.phone = #{phone} - - select cm.member_code, - cm.member_name, - cm.nick_name, - cm.creation_time, - cm.phone, - bg.grade_name settle_grade_val - from cu_member cm - left join bd_grade bg - on bg.pk_id = cm.pk_settle_grade - where cm.del_flag = 0 - and cm.category = 0 - and cm.pk_parent = #{pkMember} - order by cm.creation_time desc + WITH team_data AS ( + SELECT + connect_by_root pk_id AS root_pk_id, + COUNT(*) OVER (PARTITION BY connect_by_root pk_id) - 1 AS team_count + FROM + cu_member + WHERE + del_flag = 0 + AND category = 0 + START WITH + pk_parent = #{pkMember} + CONNECT BY + PRIOR pk_id = pk_parent + ) + SELECT DISTINCT + cm.member_code, + cm.member_name, + cm.nick_name, + cm.consume_achieve, + cm.creation_time, + cm.phone, + bg.grade_name AS settle_grade_val, + td.team_count + FROM + cu_member cm + LEFT JOIN + bd_grade bg ON bg.pk_id = cm.pk_settle_grade + LEFT JOIN + team_data td ON cm.pk_id = td.root_pk_id + WHERE + cm.del_flag = 0 + AND cm.category = 0 + AND cm.PK_PARENT = #{pkMember} + ORDER BY cm.creation_time desc @@ -2460,9 +2362,9 @@ and sa.del_flag = 0 and to_char(sa.pay_time, 'yyyy-mm-dd') = #{time} and sa.pk_country = #{pkCountry} - + and cm.pk_vertex in - + #{item} @@ -2470,4 +2372,32 @@ + + + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml new file mode 100644 index 00000000..07818ac7 --- /dev/null +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRetailMapper.xml @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PK_COUNTRY, + PK_MEMBER, PK_PARENT, MEMBER_CODE, MEMBER_NAME, CUSTOMER_TYPE, PHONE, PK_GRADE, PK_AWARDS, PK_SHARE_AWARDS, ENABLE_STATUS, ACCOUNT_STATUS, PAY_STATUS, PAY_TIME, CATEGORY, PURCHASE_STATUS, INCOME_STATUS, PK_TEAM_CODE, PK_CENTER_CODE, PK_VERTEX, PK_SETTLE_COUNTRY, IS_REAL_NAME, SYSTEM_TYPE, PK_RATE, NEW_CONSUME_PV, CONSUME_PV, MONTH_CONSUME_PV, NEW_CONSUME_AMOUNT, CONSUME_AMOUNT, MONTH_CONSUME_AMOUNT, TEAM_NEW_PV, TEAM_CONSUME_PV, TEAM_MONTH_PV, TEAM_NEW_AMOUNT, TEAM_CONSUME_AMOUNT, TEAM_MONTH_AMOUNT, RECOMMEND_NUM, TEAM_NUM, BIG_TEAM_PV, SMALL_TEAM_PV, REG_CONSUME_NEW_AMOUNT, REG_CONSUME_NEW_PV, REG_TEAM_NEW_AMOUNT, REG_TEAM_NEW_PV, REP_CONSUME_NEW_AMOUNT, REP_CONSUME_NEW_PV, REP_TEAM_NEW_AMOUNT, REP_TEAM_NEW_PV, POINT_COUNT, WAIT_POINT_COUNT, REP_PV_BALANCE, GIFT_ONE, GIFT_TWO + + + + + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberShareMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberShareMapper.xml index f6abf3b8..42f4e0af 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberShareMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberShareMapper.xml @@ -2,38 +2,5 @@ - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml index 883f8907..d179b3ca 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushHisMapper.xml @@ -2,19 +2,5 @@ - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml index 58bf949a..d703ffa5 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/bonus/CuMemberBonusPushMapper.xml @@ -2,127 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml deleted file mode 100644 index 9255488c..00000000 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessExemptMapper.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_ID, PK_ASSESS, PK_MEMBER, EXEMPT_TYPE, TRADE_TIME, CREATOR, MODIFIED - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml index 5798b973..81b68588 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAssessMapper.xml @@ -129,11 +129,8 @@ )
- create - unique index - ${tableName} - _ - PK_M + create unique index + ${tableName}_PK_M on ${tableName} ( diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAwardsMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAwardsMapper.xml index 2c356140..f6e88170 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAwardsMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberAwardsMapper.xml @@ -2,73 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - insert ALL - - into cu_member_awards(pk_member,period,up_type,old_level,new_level,purchase_status,pk_creator,pk_country) values - ( - #{item.pkMember},#{item.period},#{item.upType},#{item.oldLevel},#{item.newLevel},#{item.purchaseStatus},#{item.pkCreator}, - #{item.pkCountry} - ) - - SELECT 1 FROM dual - - - - update cu_member_awards set del_flag = 1, modified_time = sysdate, PK_MODIFIED = 1 - where period= #{period} and pk_member in - - #{item.pkMember} - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml index 8cf2aa8d..a7cc886e 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberLevelMapper.xml @@ -20,31 +20,6 @@ - - - - - - merge into CU_MEMBER_LEVEL cml @@ -126,36 +101,4 @@ ) - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml index 0a6edc51..96593642 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/detail/CuMemberServiceLogMapper.xml @@ -87,20 +87,6 @@ - - - - - - - - select * - from (select * - from CU_MEMBER_SERVICE_LOG - where EDIT_TYPE = 125 - and PK_MEMBER = #{pkMember} - and APPROVE_STATUS = 5 - order by CREATION_TIME desc) - where rownum = 1 - - - - - - - - diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml new file mode 100644 index 00000000..bd1db8e3 --- /dev/null +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailDetailMapper.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml index a5adb271..d222c9c7 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/retail/member/CuMemberRetailRegionMapper.xml @@ -35,31 +35,6 @@ and bg.grade_value >= #{gradeValue} - - - insert into cu_member_retail_region cmrr ( @@ -208,18 +183,6 @@ order by CRR.CREATION_TIME desc - - - - - - - - - SELECT min(t0.enable_status) enableStatus, - #{pkMember} pkMember - FROM (SELECT mr.enable_status - FROM ${dpb.memberRetailTable} mr - where mr.pk_member = #{pkMember} - - union all - SELECT mrs.enable_status - FROM ${dpb.memberRetailSTable} mrs - where mrs.pk_member = #{pkMember} - - ) t0 - - - - - - - SELECT SUM(t1.smallAreaBox) smallAreaBox - FROM ( - SELECT NVL(mr.team_box_num + mr.consume_box_num-mr.big_box_num-mr.small_box_num, 0) smallAreaBox - FROM ${memberRetailTable} mr - WHERE mr.category = 0 - AND mr.pk_member = #{pkMember} - - union all - select NVL(rs.new_box_num + rs.team_new_box_num ,0) smallAreaBox - from ${memberRetailSTable} rs - where rs.pk_member = #{pkMember} - - ) t1 - - - + select * from sa_order + where del_flag = 0 + and order_status = 1 + and pay_time between #{startDate} and #{endDate} + and order_type in + + #{item} + + + + diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java index 4746444b..c92099ba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/mapper/AcBaseConfigMapper.java @@ -10,9 +10,6 @@ import java.util.List; /** * 活动基本配置表 Mapper 接口 - * - * @author hzs - * @since 2023-04-20 */ public interface AcBaseConfigMapper extends BaseMapper { @@ -25,27 +22,8 @@ public interface AcBaseConfigMapper extends BaseMapper { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 */ List queryBaseConfigList(@Param("pkCountry") Integer pkCountry, @Param("pkMember") Long pkMember); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(@Param("actType") Integer actType, - @Param("pkCountry") Integer pkCountry, - @Param("systemType") Integer systemType, - @Param("startDate") String startDate, - @Param("endDate") String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java index 4aad5946..9769521e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/provider/ActivityServiceProvider.java @@ -7,18 +7,12 @@ import com.hzs.activity.draw.service.IAcDrawRewardNumService; import com.hzs.activity.dto.AcRecommendUpgradeDTO; import com.hzs.activity.recommend.dto.AcRecommendUpgrade; import com.hzs.activity.recommend.service.IAcRepurCouponsRuleConfigService; -import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.Date; -import java.util.List; - /** * 所有活动的生效,获得赠品入口 */ @@ -27,11 +21,9 @@ import java.util.List; public class ActivityServiceProvider implements IActivityServiceApi { @Autowired - private IAcDrawRewardNumService acDrawRewardNumService; + private IAcDrawRewardNumService iAcDrawRewardNumService; @Autowired - private IAcRepurCouponsRuleConfigService acRepurCouponsRuleConfigService; - @Autowired - private IAcRepurSharRuleConfigService acRepurSharRuleConfigService; + private IAcRepurCouponsRuleConfigService iAcRepurCouponsRuleConfigService; @Autowired private IActivityService iActivityService; @@ -47,31 +39,16 @@ public class ActivityServiceProvider implements IActivityServiceApi { @Override public R backGiveMemberDrawNum(SaOrderExt saOrderExt) { try { - return R.ok(acDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); + return R.ok(iAcDrawRewardNumService.backGiveMemberDrawNum(saOrderExt)); } catch (Exception e) { return R.fail(); } } - @Override - public R> queryAcRepurchaseCouponsRule(Date settleDate) { - List acRepurCouponsRuleConfigList = acRepurCouponsRuleConfigService.queryAcRepurchaseCouponsRule(settleDate); - if (acRepurCouponsRuleConfigList != null && acRepurCouponsRuleConfigList.size() > 0) { - return R.ok(acRepurCouponsRuleConfigList); - } else { - return R.fail(); - } - } - - @Override - public R> queryRepurSharRuleConfig(Date startDate, Date endDate) { - return R.ok(acRepurSharRuleConfigService.queryRepurSharRuleConfig(startDate, endDate)); - } - @Override public R invokeRecommendUpgrade(AcRecommendUpgradeDTO recommendUpgradeDTO) { try { - return R.ok(acRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); + return R.ok(iAcRepurCouponsRuleConfigService.invokeRecommendUpgrade(BeanUtil.copyProperties(recommendUpgradeDTO, AcRecommendUpgrade.class))); } catch (Exception e) { return R.fail(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java index 91b05330..a3132aeb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IAcBaseConfigService.java @@ -9,9 +9,6 @@ import java.util.List; /** * 活动基本配置表 服务类 - * - * @author hzs - * @since 2023-04-20 */ public interface IAcBaseConfigService extends IService { @@ -24,26 +21,17 @@ public interface IAcBaseConfigService extends IService { List selectBaseConfigByType(AcBaseConfigVO baseConfigVO); /** - * @description: 会员前端查询活动列表 - * @author: sui q - * @date: 2023/4/27 9:20 - * @param: null null + * 会员前端查询活动列表 **/ List queryBaseConfigList(Integer pkCountry, Long pkMember); /* - * @description: 查询订单详情 - * @author: sui q - * @date: 2023/6/21 10:41 - * @param: null null + * 查询订单详情 **/ AcBaseConfigExt queryBaseConfigDetail(Long pkId, Integer pkCountry); /** - * @description: 根据主键查询活动配置 - * @author: sui q - * @date: 2023/4/27 14:05 - * @param: null null + * 根据主键查询活动配置 **/ AcBaseConfig queryBaseConfigById(Long pkBaseId); @@ -56,16 +44,4 @@ public interface IAcBaseConfigService extends IService { */ Boolean deleteBaseConfigById(Long pkBaseId, Long pkModifyId); - /** - * 查询进行中活动 - * - * @param actType 活动类型 - * @param pkCountry 所属国家 - * @param systemType 系统类型 - * @param startDate 开始时间 - * @param endDate 结束时间 - * @return - */ - List listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java index 3ec57ec0..39f92032 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/AcBaseConfigServiceImpl.java @@ -17,9 +17,6 @@ import java.util.List; /** * 活动基本配置表 服务实现类 - * - * @author hzs - * @since 2023-04-20 */ @Service public class AcBaseConfigServiceImpl extends ServiceImpl implements IAcBaseConfigService { @@ -58,9 +55,4 @@ public class AcBaseConfigServiceImpl extends ServiceImpl listProgressList(Integer actType, Integer pkCountry, Integer systemType, String startDate, String endDate) { - return baseMapper.listProgressList(actType, pkCountry, systemType, startDate, endDate); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java index b5ceaf1b..b3d1e651 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/impl/ActivityServiceImpl.java @@ -656,11 +656,6 @@ public class ActivityServiceImpl implements IActivityService { } // 直推升级 acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 抽奖 - acDrawRewardNumService.giveMemberDrawNum(saOrderExt); - // 直推升级 - acRepurCouponsRuleConfigService.invokeRecommendUpgrade(AcRecommendUpgrade.builder().saOrderExt(saOrderExt).orderOperateStatus(EOrderOperateStatus.NORMAL).build()); } return true; } @@ -888,8 +883,7 @@ public class ActivityServiceImpl implements IActivityService { } // 2024.11.26 新消费赠送活动需求,注册、升级专区处理新需求 - if (ESpecialArea.REGISTER_AREA.getValue() == specialArea - || ESpecialArea.UPGRADE_AREA.getValue() == specialArea) { + if (ESpecialArea.REGISTER_AREA.getValue() == specialArea) { if (null != cuMember && StringUtils.isNotEmpty(cuMember.getMemberName()) && StringUtils.isNotEmpty(cuMember.getPhone())) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java index cf0abfa0..7a60b096 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/IAcDrawRewardNumService.java @@ -14,33 +14,21 @@ import java.util.List; /** * 会员可抽奖次数记录 服务类 - * - * @author hzs - * @since 2023-04-21 */ public interface IAcDrawRewardNumService extends IService { /* - * @description: 查询会员抽奖活动,查询会员的抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:11 - * @param: null null + * 查询会员抽奖活动,查询会员的抽奖次数 **/ AcDrawRewardNum queryAcDrawRewardNum(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 会员后台查询抽奖次数 - * @author: sui q - * @date: 2023/6/1 10:36 - * @param: null null + * 会员后台查询抽奖次数 **/ List queryDrawRewardExtNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 更新会员抽奖次数 - * @author: sui q - * @date: 2023/4/22 10:43 - * @param: null null + * 更新会员抽奖次数 **/ Boolean updateAcDrawRewardNum(AcDrawRewardNum acDrawRewardNum); @@ -48,49 +36,31 @@ public interface IAcDrawRewardNumService extends IService { * 查询会员账户状态,账户信息 * * @param cuMemberAccount 会员账户条件信息 - * @return: List - * @Author: sui q - * @Date: 2022/9/5 11:57 */ List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount); /* - * @description: 查询 - * @author: sui q - * @date: 2023/4/27 15:14 - * @param: null null + * 查询 **/ AcDrawRewardNumExt queryDrawRewardNumByCondition(AcDrawRewardNumParam acDrawRewardNumParam); /* - * @description: 支付抽奖次数 - * @author: sui q - * @date: 2023/4/27 15:34 - * @param: null null + * 支付抽奖次数 **/ void payDrawRewardNum(CuMemberAccountExt cuMemberAccountExt, Integer payNum, AcDrawRewardNumExt acDrawRewardNumExt); /* - * @description: 在线支付确认生成待支付订单 - * @author: sui q - * @date: 2023/4/27 17:54 - * @param: null null + * 在线支付确认生成待支付订单 **/ String confirmDrawRewardPayNum(AcDrawRewardNumParam acDrawRewardNumParam, AcDrawRewardNumExt acDrawRewardNum); /* - * @description: 赠送抽奖次数 - * @author: sui q - * @date: 2023/4/28 11:27 - * @param: null null + * 赠送抽奖次数 **/ Boolean giveMemberDrawNum(SaOrderExt saOrderExt); /* - * @description: 撤单时回退抽奖次数 - * @author: sui q - * @date: 2023/5/9 9:46 - * @param: null null + * 撤单时回退抽奖次数 **/ Boolean backGiveMemberDrawNum(SaOrderExt saOrderExt); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java index 661f5e3c..40f01d85 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/draw/service/impl/AcDrawRewardNumServiceImpl.java @@ -49,9 +49,6 @@ import java.util.concurrent.TimeUnit; /** * 会员可抽奖次数记录 服务实现类 - * - * @author hzs - * @since 2023-04-21 */ @Service public class AcDrawRewardNumServiceImpl extends ServiceImpl implements IAcDrawRewardNumService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java index 53b3ecbc..f8f74c0f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickLogMapper.java @@ -2,39 +2,10 @@ package com.hzs.activity.pick.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员提货赠送活动日志表 Mapper 接口 - * - * @author zhangjing - * @since 2025-01-15 */ public interface AcRetailPickLogMapper extends BaseMapper { - /** - * 批量插入提货日志 - * - * @param pkBaseId 活动ID - * @param startDate 开始时间 - * @param endDate 结束时间 - * @param pkWaresList 活动商品ID列表 - * @param waresQuantity 购买商品数量 - * @param giftQuantity 赠送商品数量 - * @param createDate 创建时间 - * @param systemType 系统类型 - * @return - */ - int insertPickLog(@Param("pkBaseId") Long pkBaseId, - @Param("startDate") Date startDate, - @Param("endDate") Date endDate, - @Param("pkWaresList") List pkWaresList, - @Param("waresQuantity") Integer waresQuantity, - @Param("giftQuantity") Integer giftQuantity, - @Param("createDate") Date createDate, - @Param("systemType") Integer systemType); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java index ed3ec509..6f317a96 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickMapper.java @@ -6,14 +6,10 @@ import com.hzs.common.domain.activity.pick.AcRetailPick; import com.hzs.common.domain.activity.pick.ext.AcRetailPickExt; import org.apache.ibatis.annotations.Param; -import java.util.Date; import java.util.List; /** * 新零售会员提货数量 Mapper 接口 - * - * @author hzs - * @since 2025-01-09 */ public interface AcRetailPickMapper extends BaseMapper { @@ -31,20 +27,10 @@ public interface AcRetailPickMapper extends BaseMapper { @Param("quantity") Integer quantity, @Param("pkModified") Long pkModified); - - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(@Param("pkBaseId") Long pkBaseId, @Param("nowDate") Date nowDate); - /** * 列表数据 * - * @param param 查询入参 + * @param param 查询入参 * @return */ List listData(@Param("param") AcRetailPickParam param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java index 5e375fe9..65fee8fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcRetailPickProductConfigMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; /** - *

* 提货赠送活动商品配置 Mapper 接口 - *

- * - * @author hzs - * @since 2025-01-13 */ public interface AcRetailPickProductConfigMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java deleted file mode 100644 index af4a2660..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcRetailPickLogServiceProvider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.activity.pick.provider; - -import com.hzs.activity.pick.IAcRetailPickLogServiceApi; -import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.common.core.domain.R; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - - -/** - * @description: 会员提货赠送活动日志dubbo服务 - * @author: zhang jing - * @date: 2025/1/15 17:01 - * @param: - * @return: - **/ -@Slf4j -@DubboService -public class AcRetailPickLogServiceProvider implements IAcRetailPickLogServiceApi { - - - @Autowired - private IAcRetailPickLogService iAcRetailPickLogService; - - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:12 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R deliveryLog() { - try { - iAcRetailPickLogService.deliveryLog(); - } catch (Exception e) { - log.error("添加会员提货赠送活动日志错误 error:", e); - return R.fail(); - } - return R.ok(); - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java index 53550e83..fa1f831b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickLogService.java @@ -1,25 +1,11 @@ package com.hzs.activity.pick.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.pick.AcRetailPickLog; /** - *

* 会员提货赠送活动日志表 服务类 - *

- * - * @author zhangjing - * @since 2025-01-15 */ public interface IAcRetailPickLogService extends IService { - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/1/15 17:14 - * @param: [] - * @return: void - **/ - void deliveryLog(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java index 3ac349f7..fdf52e0d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickProductConfigService.java @@ -7,36 +7,21 @@ import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; /** * 提货赠送活动商品配置 服务类 - * - * @author hzs - * @since 2025-01-13 */ public interface IAcRetailPickProductConfigService extends IService { /** - * @description:会员消费赠送发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [memberConsumeRuleVo] - * @return: java.lang.Boolean + * 会员消费赠送发起签呈 **/ Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo); /** - * @description: 会员提货赠送活动审批 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [businessResult] - * @return: java.lang.String + * 会员提货赠送活动审批 **/ String approvalAgree(ApprovalBusinessResultDTO businessResult); /** - * @description: 新增提货赠送规格 - * @author: zhang jing - * @date: 2025/1/14 11:53 - * @param: [mcrVo] - * @return: java.lang.Long + * 新增提货赠送规格 **/ Long saveGift(AcRetailPickProductConfigVO mcrVo); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java index 06bee372..bb7044ef 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcRetailPickService.java @@ -12,9 +12,6 @@ import java.util.List; /** * 新零售会员提货数量 服务类 - * - * @author hzs - * @since 2025-01-09 */ public interface IAcRetailPickService extends IService { @@ -37,15 +34,6 @@ public interface IAcRetailPickService extends IService { */ boolean cancelRetailPickOrder(Long pkOrder, Long userId); - /** - * 提货批量操作 - * - * @param pkBaseId 活动ID - * @param nowDate 当前时间 - * @return - */ - int handlePick(Long pkBaseId, Date nowDate); - /** * 列表数据 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java index f1a66e29..466388ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickLogServiceImpl.java @@ -1,103 +1,17 @@ package com.hzs.activity.pick.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.pick.mapper.AcRetailPickLogMapper; import com.hzs.activity.pick.service.IAcRetailPickLogService; -import com.hzs.activity.pick.service.IAcRetailPickProductConfigService; -import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.enums.EActType; -import com.hzs.common.core.enums.ESystemType; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.pick.AcRetailPickLog; -import com.hzs.common.domain.activity.pick.AcRetailPickProductConfig; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; -import java.util.List; -import java.util.stream.Collectors; /** * 会员提货赠送活动日志表 服务实现类 - * - * @author zhangjing - * @since 2025-01-15 */ @Service @Slf4j public class AcRetailPickLogServiceImpl extends ServiceImpl implements IAcRetailPickLogService { - @Autowired - private IAcBaseConfigService baseConfigService; - @Autowired - private IAcRetailPickProductConfigService iAcRetailPickProductConfigService; - @Autowired - private IAcRetailPickService iAcRetailPickService; - - /** - * @description: 处理会员提货赠送活动日志 - * @author: zhang jing - * @date: 2025/2/6 10:54 - * @param: [] - * @return: void - **/ - @Transactional(rollbackFor = Exception.class) - @Override - public void deliveryLog() { - Date now = new Date(); - // 获取上个月的第一天和最后一天 - Date lastMonthFirstDay = DateUtils.beforeMonthFirstDate(now); - Date lastMonthLastDay = DateUtils.beforeMonthLastDate(now); - - for (ESystemType eSystemType : ESystemType.getEnableList()) { - List configs = baseConfigService.listProgressList(EActType.PICK_GIFT.getValue(), CountryConstants.CHINA_COUNTRY, eSystemType.getValue(), - DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthFirstDay), DateUtils.parseDateToFormat(DateUtils.YYYY_MM_DD, lastMonthLastDay)); - if (CollectionUtil.isEmpty(configs)) { - log.info("没有进行中的提货赠送活动"); - return; - } - - for (AcBaseConfig config : configs) { - if (DateUtils.compareDate(lastMonthFirstDay, config.getActStartDate()) < 0) { - lastMonthFirstDay = config.getActStartDate(); - } - - if (DateUtils.compareDate(lastMonthLastDay, config.getActEndDate()) > 0) { - lastMonthLastDay = config.getActEndDate(); - } - if (DateUtils.compareDate(lastMonthFirstDay, lastMonthLastDay) > 0) { - log.info("不在活动时间范围内"); - return; - } - //查询赠送活动规则 - LambdaQueryWrapper productConfigWrapper = new LambdaQueryWrapper<>(); - productConfigWrapper.eq(AcRetailPickProductConfig::getPkBaseId, config.getPkId()); - List productConfigs = iAcRetailPickProductConfigService.list(productConfigWrapper); - - if (CollectionUtil.isNotEmpty(productConfigs)) { - List pkWaresList = productConfigs.stream().map(AcRetailPickProductConfig::getPkWares).collect(Collectors.toList()); - handleQualifiedOrders(productConfigs.get(0), lastMonthFirstDay, lastMonthLastDay, pkWaresList, eSystemType.getValue()); - } - } - } - } - - - //查询符合提货赠送活动的会员订单 - private void handleQualifiedOrders(AcRetailPickProductConfig productConfig, Date startDate, Date endDate, List pkWaresList, Integer systemType) { - Date nowDate = new Date(); - // 插入提货赠送日志 - baseMapper.insertPickLog(productConfig.getPkBaseId(), DateUtils.getStartTime(startDate), DateUtils.getEndTime(endDate), pkWaresList, productConfig.getWaresQuantity(), productConfig.getGiftQuantity(), nowDate, systemType); - // 批量更新提货数据 - iAcRetailPickService.handlePick(productConfig.getPkBaseId(), nowDate); - } - - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java index f5d4c4d1..2eab5152 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcRetailPickProductConfigServiceImpl.java @@ -35,29 +35,20 @@ import java.util.List; /** * 提货赠送活动商品配置 服务实现类 - * - * @author hzs - * @since 2025-01-13 */ @Service public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickProductConfigService { @Autowired private IActivityService iActivityService; - @DubboReference - IApprovalServiceApi approvalServiceApi; @Autowired private IAcApprovalLogService acApprovalLogService; @Autowired private IAcBaseConfigService baseConfigService; - /** - * @description: 会员提货赠送活动发起签呈 - * @author: zhang jing - * @date: 2024/11/29 9:42 - * @param: [rppcVo] - * @return: java.lang.Boolean - **/ + @DubboReference + IApprovalServiceApi approvalServiceApi; + @Override public Boolean onLinePetition(AcRetailPickProductConfigVO rppcVo) { EApprovalBusiness approvalBusiness = null; @@ -78,13 +69,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl mcrList = mcrVo.getRppcList(); for (AcRetailPickProductConfigExt mcr : mcrList) { @@ -240,13 +190,6 @@ public class AcRetailPickProductConfigServiceImpl extends ServiceImpl implements IAcRetailPickService { @@ -79,11 +75,6 @@ public class AcRetailPickServiceImpl extends ServiceImpl listData(AcRetailPickParam param) { return baseMapper.listData(param); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java index a8f4c18b..fdb74a95 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurCouponsRuleConfigMapper.java @@ -1,27 +1,11 @@ package com.hzs.activity.recommend.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; -import java.util.Date; -import java.util.List; - /** - *

* 直推-复购券规则配置 Mapper 接口 - *

- * - * @author hzs - * @since 2023-04-22 */ public interface AcRepurCouponsRuleConfigMapper extends BaseMapper { - /* - * @description: 查询目前所有启用的复购券规则 - * @author: sui q - * @date: 2023/4/28 15:47 - * @param: null null - **/ - List queryAcRepurchaseCouponsRule(Date settleDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java index 9f0dbec0..29a7d05b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRepurSharRuleConfigMapper.java @@ -2,37 +2,10 @@ package com.hzs.activity.recommend.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 Mapper 接口 - * - * @author hzs - * @since 2023-05-04 */ public interface AcRepurSharRuleConfigMapper extends BaseMapper { - /** - * 根据条件删除规则配置 - * - * @param orderTypeList 订单类型 - * @param activityId 活动ID - * @param pkModifyId 修改人ID - * @return - */ - Integer deleteSharRuleConfigByActivityId(@Param("orderTypeList") List orderTypeList, - @Param("activityId") Long activityId, @Param("pkModifyId") Long pkModifyId); - - /* - * @description: 查询复购券均分收益 - * @author: sui q - * @date: 2023/5/5 16:29 - * @param: null null - **/ - List queryRepurSharRuleConfig(@Param("startDate") Date startDate, @Param("endDate") Date endDate); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java index 2358073c..b4f68589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurCouponsRuleConfigService.java @@ -7,14 +7,8 @@ import com.hzs.activity.recommend.vo.AcRecommendVO; import com.hzs.common.domain.activity.recommend.AcRepurCouponsRuleConfig; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; -import java.util.Date; -import java.util.List; - /** * 直推-复购券规则配置 服务类 - * - * @author hzs - * @since 2023-04-22 */ public interface IAcRepurCouponsRuleConfigService extends IService { @@ -69,14 +63,6 @@ public interface IAcRepurCouponsRuleConfigService extends IService queryAcRepurchaseCouponsRule(Date settleDate); - /** * 根据活动配置主键删除复购券规则配置 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java index 02657215..f43748c4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/IAcRepurSharRuleConfigService.java @@ -2,16 +2,9 @@ package com.hzs.activity.recommend.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; - -import java.util.Date; -import java.util.List; /** * 复购均分配置 服务类 - * - * @author hzs - * @since 2023-05-04 */ public interface IAcRepurSharRuleConfigService extends IService { @@ -33,12 +26,5 @@ public interface IAcRepurSharRuleConfigService extends IService queryRepurSharRuleConfig(Date startDate, Date endDate); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java index 0452af1c..9d844b08 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java @@ -57,9 +57,6 @@ import java.util.stream.Collectors; /** * 直推配置 服务实现类 - * - * @author hzs - * @since 2023-04-22 */ @Slf4j @Service @@ -102,21 +99,7 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl atcModuleList = recommendParam.getActivityParam().getAtcModuleList(); EApprovalBusiness approvalBusiness = EApprovalBusiness.DIRECT_PUSH_GIFT; -/* for (Integer atcModule : atcModuleList) { - switch (EActModule.getByValue(atcModule)) { - case REPURCHASE_COUPON: - approvalBusiness = EApprovalBusiness.REPURCHASE_COUPON; - break; - case DIRECT_PUSH_UPGRADE: - approvalBusiness = EApprovalBusiness.DIRECT_PUSH_UPGRADE; - break; - default: - approvalBusiness = EApprovalBusiness.REPURCHASE_SHAR; - break; - } - }*/ //根据产品ID查询产品名称 List recommendUpgradeList = recommendParam.getRecommendUpgradeList(); if (CollUtil.isNotEmpty(recommendUpgradeList)) { @@ -624,11 +607,6 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl queryAcRepurchaseCouponsRule(Date settleDate) { - return baseMapper.queryAcRepurchaseCouponsRule(settleDate); - } - /** * 处理业务(正常报单) * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java index b57380a3..f3ea53fb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurSharRuleConfigServiceImpl.java @@ -7,17 +7,12 @@ import com.hzs.activity.recommend.mapper.AcRepurSharRuleConfigMapper; import com.hzs.activity.recommend.service.IAcRepurSharRuleConfigService; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.domain.activity.recommend.AcRepurSharRuleConfig; -import com.hzs.common.domain.activity.recommend.ext.AcRepurSharRuleConfigExt; import org.springframework.stereotype.Service; import java.util.Date; -import java.util.List; /** * 复购均分配置 服务实现类 - * - * @author hzs - * @since 2023-05-04 */ @Service public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl implements IAcRepurSharRuleConfigService { @@ -39,8 +34,4 @@ public class AcRepurSharRuleConfigServiceImpl extends ServiceImpl queryRepurSharRuleConfig(Date startDate, Date endDate) { - return baseMapper.queryRepurSharRuleConfig(startDate, endDate); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java index 92e50b18..0476a5de 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/api/ApiRetailOrderController.java @@ -2,21 +2,30 @@ package com.hzs.retail.sale.controller.api; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.constant.RetailConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EGrade; +import com.hzs.common.core.enums.EOrderPrefix; import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.exception.ServiceException; import com.hzs.common.core.service.RedisService; +import com.hzs.common.core.utils.CommonUtil; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; +import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; import com.hzs.common.domain.sale.ext.SaOrderExt; +import com.hzs.common.domain.sale.wares.BdWares; +import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; +import com.hzs.common.security.service.MemberTokenService; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.retail.sale.controller.service.IRetailOrderService; @@ -24,11 +33,15 @@ import com.hzs.retail.sale.param.*; import com.hzs.retail.sale.vo.*; import com.hzs.sale.order.param.*; import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.order.service.ISaOrderShareTmpService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import com.hzs.sale.shopping.vo.ShoppingCartVO; +import com.hzs.sale.wares.service.IBdWaresService; +import com.hzs.sale.wares.service.IBdWaresSpecsSkuService; import com.hzs.system.base.IAreaServiceApi; +import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; @@ -41,6 +54,7 @@ import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 新零售订单控制器 @@ -59,12 +73,23 @@ public class ApiRetailOrderController { @Autowired private RedisService redisService; + @Autowired + private IBdWaresService iBdWaresService; + @Autowired + private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; + @Autowired + private ISaOrderShareTmpService iSaOrderShareTmpService; + @DubboReference IMemberServiceApi iMemberServiceApi; @DubboReference IGradeServiceApi iGradeServiceApi; @DubboReference IAreaServiceApi iAreaServiceApi; + @DubboReference + IAwardsServiceApi iAwardsServiceApi; + @Autowired + private MemberTokenService memberTokenService; /** * 校验会员等级 @@ -82,23 +107,11 @@ public class ApiRetailOrderController { if (ESpecialArea.RETAIL_REGISTER.getValue() == levelParam.getSpecialArea()) { // 注册订单 levelParam.setUpgradeMember(iMemberServiceApi.getMember(SecurityUtils.getUserId()).getData()); - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == levelParam.getSpecialArea()) { - // 升级校验 - if (StringUtils.isEmpty(levelParam.getUpgradeMemberCode())) { - return AjaxResult.error("升级编号不能为空"); - } - - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, levelParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - levelParam.setUpgradeMember(updateGradeMember); } try { // 购物车中获取商品信息,获取等级 - BdGrade bdGrade = iSaOrderService.calculateGrade(levelParam.getSpecialArea(), convertShoppingCarToSku(SecurityUtils.getUserId(), levelParam.getShopList()), - null, levelParam.getUpgradeMember(), SecurityUtils.getSystemType(), EYesNo.NO.getIntValue()); + BdGrade bdGrade = iSaOrderService.calculateGrade(); if (null != bdGrade) { orderLevelVO.setIsEnough(true); orderLevelVO.setPkGradeVal(bdGrade.getGradeName()); @@ -111,13 +124,6 @@ public class ApiRetailOrderController { } catch (Exception e) { log.error("会员等级判断异常", e); orderLevelVO.setMsg("会员等级判断异常"); -// if (EYesNo.YES.getIntValue() == levelParam.getFirstCheck()) { -// // 2024.12.25 -- 添加需求,首次校验不需要进行提示错误(9050) -// orderLevelVO.setIsEnough(true); -// return AjaxResult.success(orderLevelVO); -// } else { -// throw e; -// } } return AjaxResult.success(orderLevelVO); } @@ -170,9 +176,8 @@ public class ApiRetailOrderController { // 当前会员ID postageParam.setPkCreator(SecurityUtils.getUserId()); - if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == postageParam.getSpecialArea()) { - // 注册、升级包邮 + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { + // 注册包邮 return AjaxResult.success(RetailOrderPostageVO.builder() .postage(BigDecimal.ZERO) .build()); @@ -201,6 +206,82 @@ public class ApiRetailOrderController { } } + /** + * 查询邮费 + * + * @param postageParam 邮费入参 + * @return + */ + @PostMapping("/query-reg-order-postage") + public AjaxResult queryRegOrderPostage(@RequestBody RetailOrderPostageParam postageParam) { + // 当前会员ID + postageParam.setPkCreator(SecurityUtils.getUserId()); + + if (ESpecialArea.RETAIL_REGISTER.getValue() == postageParam.getSpecialArea()) { + // 注册包邮 + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(BigDecimal.ZERO) + .build()); + } else { + CuMember buyMember; + if (StringUtils.isNotEmpty(postageParam.getBuyMemberCode())) { + // 购买人不为空,则需要查询重新赋一下 + buyMember = iMemberServiceApi.getRetailMember(null, postageParam.getBuyMemberCode()).getData(); + if (null == buyMember) { + return AjaxResult.error("会员编号不存在"); + } + } else { + buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); + } + + // 查询邮费 + RetailOrderParam orderParam = BeanUtil.copyProperties(postageParam, RetailOrderParam.class); + // 购物车中获取商品信息 + BigDecimal orderAmount = BigDecimal.ZERO; + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : postageParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + if(ObjectUtil.isEmpty(buyMember)){ + buyMember = new CuMember(); + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); +// Map awardsMap = iAwardsServiceApi.getAwards().getData(); + buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); + buyMember.setPkSettleCountry(1); + buyMember.setPkAwards(1); + } + orderParam.setOrderItemsParams(orderItemsParams); + iRetailOrderService.createSaOrderItems(orderParam, null, buyMember, null, null); + + return AjaxResult.success(RetailOrderPostageVO.builder() + .postage(orderParam.getPostage()) + .build()); + } + } + /** * 确认注册订单 * @@ -212,6 +293,12 @@ public class ApiRetailOrderController { @PostMapping("/confirm-reg-order") public AjaxResult confirmRegisterOrder(@Valid @RequestBody RetailOrderRegisterParam registerParam, @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } // 设置数据来源 registerParam.setSource(source); // 会员ID @@ -224,7 +311,7 @@ public class ApiRetailOrderController { // 获取等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -241,6 +328,13 @@ public class ApiRetailOrderController { // 确认订单 String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + return confirmOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode()); } @@ -268,7 +362,7 @@ public class ApiRetailOrderController { // 等级列表 List gradeList = iGradeServiceApi.getRetailGradeList().getData(); // 校验注册权限等 - String checkStr = this.checkRegistrationPermission(registerParam, gradeList); + String checkStr = this.checkRegistrationPermission(registerParam); if (null != checkStr) { return AjaxResult.error(checkStr); } @@ -324,113 +418,13 @@ public class ApiRetailOrderController { } /** - * 确认升级订单 - * - * @param upgradeParam 订单入参 - * @param source 数据来源 - * @return - */ - @RepeatSubmit - @PostMapping("/confirm-upg-order") - public AjaxResult confirmUpgradeOrder(@Valid @RequestBody RetailOrderUpgradeParam upgradeParam, - @RequestHeader("Source") Integer source) { - // 设置数据来源 - upgradeParam.setSource(source); - // 会员ID - upgradeParam.setPkCreator(SecurityUtils.getUserId()); - // 新零售注册专区 - upgradeParam.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); - // 系统类型 - upgradeParam.setSystemType(SecurityUtils.getSystemType()); - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, upgradeParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - upgradeParam.setUpgradeMember(updateGradeMember); - - // 购物车中获取商品信息 - upgradeParam.setOrderItemsParams(convertShoppingCarToSku(upgradeParam.getPkCreator(), upgradeParam.getShopList())); - - // 确认订单 - String str = iRetailOrderService.confirmUpgOrder(upgradeParam); - return confirmOrderReturn(str, upgradeParam.getPkCreator(), upgradeParam.getShopList(), upgradeParam.getOrderCode()); - } - - /** - * 支付升级订单 - * - * @param payParam 支付订单入参 - * @return - */ - @RepeatSubmit - @PostMapping("/pay-upg-order") - public AjaxResult payUpgradeOrder(@Valid @RequestBody RetailOrderPayParam payParam) { - // 当前会员ID - Long pkMember = SecurityUtils.getUserId(); - - // 获取缓存参数 - RetailOrderUpgradeParam upgradeParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + pkMember + payParam.getOrderCode()); - if (null == upgradeParam) { - return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); - } - - // 升级会员 - CuMember updateGradeMember = iMemberServiceApi.getRetailMember(null, upgradeParam.getUpgradeMemberCode()).getData(); - if (null == updateGradeMember) { - throw new ServiceException("升级编号不存在,请重试"); - } - String otherCheckStr = this.otherOrderCheck(updateGradeMember, payParam.getSpecialArea()); - if (null != otherCheckStr) { - return AjaxResult.error(otherCheckStr); - } - - // 支付入参 - upgradeParam.setIsPay(EYesNo.YES.getIntValue()); - - // 封装订单信息 - SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(upgradeParam, null, updateGradeMember); - - // 校验会员账户状态等 - R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); - if (!accountResult.isSuccess()) { - return AjaxResult.error(accountResult.getMsg()); - } - CuMemberAccountExt memberAccountExt = accountResult.getData(); - - // 校验余额是否足够 - iSaOrderService.queryRetailOrderSpendDetails(memberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - if (memberAccountExt.getIsPayment()) { - // 进行支付 - saOrderExt.setSpecialArea(upgradeParam.getSpecialArea()); - String payStr = iRetailOrderService.payUpgOrder(saOrderExt, updateGradeMember, memberAccountExt); - if (null != payStr) { - return AjaxResult.error(payStr); - } - } else { - if (StringUtils.isEmpty(memberAccountExt.getErrorMsg())) { - return AjaxResult.error("余额不足,请及时充值"); - } else { - return AjaxResult.error(memberAccountExt.getErrorMsg()); - } - } - - return AjaxResult.success("支付成功"); - } - - /** - * 确认订单(注册、升级之外的订单) + * 确认订单(注册之外的订单) * * @param orderParam 订单入参 * @param source 数据来源 * @return */ - @RepeatSubmit +// @RepeatSubmit @PostMapping("/confirm-other-order") public AjaxResult confirmOtherOrder(@Valid @RequestBody RetailOrderOtherParam orderParam, @RequestHeader("Source") Integer source) { @@ -454,11 +448,16 @@ public class ApiRetailOrderController { // 确认订单 String str = iRetailOrderService.confirmOtherOrder(orderParam); + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + orderParam.getPkCreator() + orderParam.getOrderCode()); + if (ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + orderParam.getPkCreator() + orderParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } return confirmOrderReturn(str, orderParam.getPkCreator(), orderParam.getShopList(), orderParam.getOrderCode()); } /** - * 支付订单(注册、升级之外的订单) + * 支付订单(注册之外的订单) * * @param payParam 支付订单入参 * @return @@ -474,6 +473,7 @@ public class ApiRetailOrderController { if (null == otherParam) { return AjaxResult.error("订单长时间没有支付,已经失效,请重新下单"); } + otherParam.setSpecialArea(payParam.getSpecialArea()); // 购买会员 CuMember buyMember = iMemberServiceApi.getRetailMember(null, otherParam.getBuyMemberCode()).getData(); @@ -484,7 +484,7 @@ public class ApiRetailOrderController { // 封装订单信息 SaOrderExt saOrderExt = iRetailOrderService.createSaOrder(otherParam, null, buyMember); - + saOrderExt.setOrderType(payParam.getSpecialArea()); // 校验会员账户状态等 R accountResult = iRetailOrderService.validMemberAccount(pkMember, payParam.getPayPwd()); if (!accountResult.isSuccess()) { @@ -529,8 +529,7 @@ public class ApiRetailOrderController { CuMember parentMember = null; // 获取等级值 GradeDTO gradeDTO = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == queryOrderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == queryOrderParam.getSpecialArea()) { parentMember = iMemberServiceApi.getRetailMember(saOrderExt.getPkReference(), null).getData(); gradeDTO = iGradeServiceApi.getGrade(saOrderExt.getPkGrade()).getData(); } @@ -647,38 +646,21 @@ public class ApiRetailOrderController { * 校验注册权限 * * @param orderParam 订单入参 - * @param gradeList 等级列表 * @return */ - private String checkRegistrationPermission(RetailOrderRegisterParam orderParam, List gradeList) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 校验会员等级是否大于V0,不然不能进行注册会员 + private String checkRegistrationPermission(RetailOrderRegisterParam orderParam) { CuMember creatorMember = iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData(); if (null == creatorMember) { return "当前会员不存在"; } - // 校验推荐人等级是否为V0,如果是V0不能进行注册 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(creatorMember.getPkSettleGrade())).findFirst().get(); - if (EGrade.START_UP.getValue() == memberGrade.getGradeValue()) { - return "当前会员不能注册新会员"; - } orderParam.setCreatorMember(creatorMember); orderParam.setPkParent(orderParam.getPkCreator()); if (!creatorMember.getMemberCode().equals(orderParam.getParentCode())) { - CuMember parentMember = iMemberServiceApi.getRetailMember(null, orderParam.getParentCode()).getData(); if (null == parentMember) { return "推荐编号不存在"; } -// // 校验推荐人是否大于V0,不然不能当推荐人 -// BdGrade parentGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(parentMember.getPkSettleGrade())).findFirst().get(); -// if (EGrade.START_UP.getValue() == parentGrade.getGradeValue()) { -// return orderParam.getParentCode() + " 不能做为推荐人"; -// } // 校验推荐人是否在当前会员伞下 CuMember topMember = iMemberServiceApi.getRetailTopMember(parentMember.getPkId(), null, orderParam.getPkCreator(), null).getData(); @@ -687,7 +669,6 @@ public class ApiRetailOrderController { } orderParam.setPkParent(parentMember.getPkId()); } - return null; } @@ -726,15 +707,137 @@ public class ApiRetailOrderController { if (null == buyMember) { return "购买会员编号不存在,请重试"; } - if (ESpecialArea.RETAIL_UPGRADE.getValue() != specialArea - && ESpecialArea.RETAIL_REPURCHASE.getValue() != specialArea) { - // 判断购买会员是否是V0,V0不允许下升级、复购以外订单 - GradeDTO gradeDTO = iGradeServiceApi.getGrade(buyMember.getPkSettleGrade()).getData(); - if (gradeDTO.getGradeValue() == EGrade.START_UP.getValue()) { - return "当前购买会员编号不允许下单"; - } - } + // TODO 必须在精品专区购买过商品才能在五折专区处理 return null; } + + /** + * 确认注册订单 + * + * @param registerParam 订单入参 + * @param source 数据来源 + * @return + */ + @RepeatSubmit + @PostMapping("/fans-confirm-order") + public AjaxResult fansConfirmOrder(@RequestBody RetailOrderRegisterParam registerParam, + @RequestHeader("Source") Integer source) { + if(RetailConstants.LIMIT_TO_REG_PHONE_NUMBER){ + Integer phoneCount = iMemberServiceApi.getMemberPhoneCount(registerParam.getPhone()).getData(); + if(phoneCount > 0){ + return AjaxResult.error("已注册相同的手机号码,不允许重复注册!"); + } + } + // 设置数据来源 + registerParam.setSource(source); + // 会员ID + registerParam.setPkCreator(SecurityUtils.getUserId()); + // 新零售注册专区 +// registerParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + registerParam.setSpecialArea(registerParam.getSpecialArea()); + // 系统类型 + registerParam.setSystemType(SecurityUtils.getSystemType()); + + // 获取等级列表 + List gradeList = iGradeServiceApi.getRetailGradeList().getData(); + // 校验注册权限等 +// String checkStr = this.checkRegistrationPermission(registerParam, gradeList); +// if (null != checkStr) { +// return AjaxResult.error(checkStr); +// } + + // 手机号可以重复,不需要进行是否重复校验 -- 已经跳过,此处可以不需要当前判断 +// // 校验注册关系(是否跨团队) -- 2024.12.24 修改为校验手机号必须唯一 +// String relationStr = iMemberServiceApi.checkRegisterRelation(registerParam.getPhone(), registerParam.getParentCode()).getData(); +// if (relationStr != null) { +// return AjaxResult.error(relationStr); +// } + + // 购物车中获取商品信息 +// registerParam.setOrderItemsParams(convertShoppingCarToSku(registerParam.getPkCreator(), registerParam.getShopList())); + + // 遍历商品,封装订单明细 + // 订单金额 + BigDecimal orderAmount = BigDecimal.ZERO; + + // 生成订单编号 + String orderCode = CommonUtil.createSerialNumber(EOrderPrefix.ORDER_CODE); + List orderItemsParams = new ArrayList<>(); + for (FansConfirmOrderWaresParam waresParam : registerParam.getWaresList()) { + // 遍历sku + // 产品价格等map + Map skuMap = iBdWaresSpecsSkuService.queryWaresSpecsSkuList(waresParam.getSkuList().stream().map(FansConfirmOrderSkuParam::getPkWaresSku).collect(Collectors.toList())); + + // 查询商品 + BdWares bdWares = iBdWaresService.getWares(waresParam.getPkWares()); + + // 缓存数据 + List itemsParamList = new ArrayList<>(waresParam.getSkuList().size()); + // 遍历产品信息 + for (FansConfirmOrderSkuParam skuParam : waresParam.getSkuList()) { + BdWaresSpecsSkuExt specsSku = skuMap.get(skuParam.getPkWaresSku()); + orderAmount = orderAmount.add(specsSku.getPrice().multiply(new BigDecimal(skuParam.getQuantity() * waresParam.getQuantity()))); + + itemsParamList.add(WaresItemsParam.builder() + .pkWaresSpecsSku(skuParam.getPkWaresSku().intValue()) + .quantity(skuParam.getQuantity()) + .build()); + } + orderItemsParams.add(OrderItemsParam.builder() + .waresCode(bdWares.getWaresCode()) + .quantity(waresParam.getQuantity()) + .waresItemsParamList(itemsParamList) + .build()); + } + registerParam.setOrderItemsParams(orderItemsParams); +// if (ESpecialArea.RETAIL_REPURCHASE.getValue() == registerParam.getSpecialArea()) { +// CuMember buyMember = iMemberServiceApi.getRetailMember(SecurityUtils.getUserId(), null).getData(); +// if(ObjectUtil.isEmpty(buyMember)){ +// buyMember = new CuMember(); +// buyMember.setPkSettleGrade(gradeList.get(0).getPkId()); +// buyMember.setPkSettleCountry(1); +// buyMember.setPkAwards(1); +// } +// iRetailOrderService.createSaOrderItems(registerParam, null, buyMember, null, null); +// } + CuMemberShare memberShare = memberTokenService.getLoginMember().getCuMemberShare(); + registerParam.setCuMemberShare(memberShare); +// registerParam.setPkCreator(memberShare.getPkParent()); + // 确认订单 + String str = iRetailOrderService.confirmRegOrder(registerParam, gradeList); + // redis 拿金额 + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + if (ESpecialArea.RETAIL_REGISTER.getValue() == registerParam.getSpecialArea() && saOrder.getOrderAmount().compareTo(RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT) > 0) { + redisService.deleteObject(CacheConstants.RETAIL_TEMP_ORDER + registerParam.getPkCreator() + registerParam.getOrderCode()); + return AjaxResult.error("订单金额超过" + RetailConstants.SPECIAL_AREA_41_MAX_ORDER_AMOUNT + "上限"); + } + + return confirmSharedOrderReturn(str, registerParam.getPkCreator(), registerParam.getShopList(), registerParam.getOrderCode(), saOrder.getOrderAmount().add(saOrder.getPostage())); + } + + /** + * 确认订单返回 + * + * @param str 提示信息(null 为成功) + * @param pkCreator 订单创建人 + * @param shopList 购物车ID + * @param orderCode 订单编号 + * @return + */ + private AjaxResult confirmSharedOrderReturn(String str, Long pkCreator, List shopList, String orderCode, BigDecimal orderAmount) { + if (null == str) { + // 删除购物车商品数据 + if (CollectionUtil.isNotEmpty(shopList)) { + shoppingCartService.batchDelShopping(pkCreator, ShoppingCartVO.builder() + .deleteList(shopList) + .build()); + } + return AjaxResult.success(RetailOrderVO.builder() + .orderCode(orderCode) + .orderAmount(orderAmount) + .build()); + } + return AjaxResult.error(str); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java index 8e60d99a..b0aa7b22 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderPostageService.java @@ -8,11 +8,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:21 - * @Classname: IRetailOrderPostageService - * @PackageName: com.hzs.retail.sale.controller.service + * 新零售订单邮费处理服务 */ public interface IRetailOrderPostageService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java index bc915ada..b7c2f958 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/IRetailOrderService.java @@ -10,7 +10,6 @@ import com.hzs.common.domain.system.config.BdGrade; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.system.base.dto.CurrencyDTO; import java.util.List; @@ -29,14 +28,6 @@ public interface IRetailOrderService { */ String confirmRegOrder(RetailOrderRegisterParam registerParam, List gradeList); - /** - * 确认升级订单 - * - * @param upgradeParam 升级订单入参 - * @return - */ - String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam); - /** * 确认其它订单 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java index 5da50448..623a68fd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderPostageServiceImpl.java @@ -32,11 +32,7 @@ import java.util.List; import java.util.Map; /** - * @Description: 新零售订单邮费处理服务 - * @Author: jiang chao - * @Time: 2024/12/15 10:22 - * @Classname: RetailOrderPostageServiceImpl - * @PackageName: com.hzs.retail.sale.controller.service.impl + * 新零售订单邮费处理服务 */ @Slf4j @Service @@ -64,8 +60,7 @@ public class RetailOrderPostageServiceImpl implements IRetailOrderPostageService @Override public String calculatePostage(BigDecimal freePostage, Map> postageMap, RetailOrderParam orderParam) { // 处理邮费 - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 会员专区(注册、升级)免邮费 orderParam.setPostage(BigDecimal.ZERO); } else { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java index 56c36fa5..632f0631 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/controller/service/impl/RetailOrderServiceImpl.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.controller.service.impl; import cn.hutool.core.codec.Base64Encoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Validator; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONUtil; @@ -17,10 +18,11 @@ import com.hzs.common.core.utils.*; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; +import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.domain.sale.wares.BdWaresRange; @@ -35,7 +37,6 @@ import com.hzs.retail.sale.controller.service.IRetailOrderService; import com.hzs.retail.sale.param.RetailOrderOtherParam; import com.hzs.retail.sale.param.RetailOrderParam; import com.hzs.retail.sale.param.RetailOrderRegisterParam; -import com.hzs.retail.sale.param.RetailOrderUpgradeParam; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresNumberParam; import com.hzs.sale.order.service.*; @@ -44,11 +45,11 @@ import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.wares.service.IBdWaresDetailService; import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.sale.wares.service.IBdWaresRangeService; -import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; +import com.hzs.third.sms.ISmsServiceApi; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.amqp.rabbit.core.RabbitTemplate; @@ -76,10 +77,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderItemsService iSaOrderItemsService; @Autowired - private ISaOrderWaresService iSaOrderWaresService; - @Autowired - private IBdWaresService iBdWaresService; - @Autowired private IBdWaresExtendService iBdWaresExtendService; @Autowired private IBdWaresDetailService iBdWaresDetailService; @@ -90,8 +87,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Autowired private ISaOrderTempService iSaOrderTempService; @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; - @Autowired private IBdProductService iBdProductService; @Autowired private ISaOrderSyncService iSaOrderSyncService; @@ -111,6 +106,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { IMemberServiceApi iMemberServiceApi; @DubboReference IMemberAccountServiceApi iMemberAccountServiceApi; + @DubboReference + ISmsServiceApi iSmsServiceApi; @Override @@ -119,6 +116,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { CuMember newMember = new CuMember(); newMember.setMemberName(registerParam.getMemberName()); newMember.setPhone(registerParam.getPhone()); + newMember.setPkSettleGrade(gradeList.get(0).getPkId()); + newMember.setPkSettleCountry(1); + newMember.setPkAwards(1); // 封装订单信息 SaOrderExt saOrderExt = this.createSaOrder(registerParam, gradeList, newMember); @@ -135,25 +135,6 @@ public class RetailOrderServiceImpl implements IRetailOrderService { return null; } - @Override - public String confirmUpgOrder(RetailOrderUpgradeParam upgradeParam) { - // 升级会员 - CuMember upgradeMember = upgradeParam.getUpgradeMember(); - // 封装订单信息 - SaOrderExt saOrderExt = this.createSaOrder(upgradeParam, null, upgradeMember); - - // 订单缓存(60分钟有效,防止在线支付回调慢) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_ORDER + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), saOrderExt, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - upgradeParam.setPkGrade(upgradeMember.getPkSettleGrade()); - // 缓存订单参数(30分钟有效) - redisService.setCacheObject(CacheConstants.RETAIL_TEMP_UPG_PARAM + upgradeParam.getPkCreator() + upgradeParam.getOrderCode(), upgradeParam, CacheConstants.RETAIL_ORDER_EXPIRE_TIME * 2, TimeUnit.MINUTES); - - // 保存订单时间信息 - this.saveOrderTemp(upgradeParam.getPkCreator(), upgradeParam.getOrderCode(), JSONUtil.toJsonStr(saOrderExt), JSONUtil.toJsonStr(upgradeParam)); - - return null; - } - @Override public String confirmOtherOrder(RetailOrderOtherParam orderParam) { // 购买会员 @@ -221,11 +202,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPkGradeOld(cuMember.getPkSettleGrade()); } - if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()) { + if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea()) { // 注册、升级订单,计算会员等级 - BdGrade newGrade = iSaOrderService.calculateGrade(orderParam.getSpecialArea(), orderParam.getOrderItemsParams(), gradeList, - cuMember, orderParam.getSystemType(), orderParam.getIsPay()); + BdGrade newGrade = iSaOrderService.calculateGrade(); if (null == newGrade) { throw new ServiceException("会员不满足升级条件"); } @@ -233,18 +212,25 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 会员信息 if (null != cuMember) { cuMember.setPkSettleGrade(newGrade.getPkId()); - if (null == cuMember.getPkAwards()) { - // 新会员没有奖衔,则进行赋值 - cuMember.setPkAwards(newGrade.getPkAwards()); - } else { - // 老会员奖衔如果为无,也进行赋值 - BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); - if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() - && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { - cuMember.setPkAwards(newGrade.getPkAwards()); - } - } + cuMember.setPkAwards(newGrade.getPkAwards()); +// if (null == cuMember.getPkAwards()) { +// // 新会员没有奖衔,则进行赋值 +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } else { +// // 老会员奖衔如果为无,也进行赋值 +// BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); +// if (EAwards.MEMBER.getValue() == bdAwards.getAwardsValue() +// && EAwards.MEMBER.getValue() != newGrade.getPkAwards()) { +// cuMember.setPkAwards(newGrade.getPkAwards()); +// } +// } } + }else if(ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()){ +// saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().add(orderParam.getPostage())); + saOrderExt.setPostage(orderParam.getPostage()); + }else if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + saOrderExt.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); } return saOrderExt; @@ -253,15 +239,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Override public List createSaOrderItems(RetailOrderParam orderParam, List gradeList, CuMember cuMember, SaOrderExt saOrderExt, CurrencyDTO currency) { - // 需要查询盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(null); - + boolean isCopy41List = false; + if(ESpecialArea.RETAIL_UPGRADE.getValue() == orderParam.getSpecialArea()){ + orderParam.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + isCopy41List = true; + } // 订单明细信息 List orderItemsList = new ArrayList<>(); -// // 需要计算等级,以及商品价格 -// if (CollectionUtil.isEmpty(gradeList)) { -// gradeList = iGradeServiceApi.getRetailGradeList().getData(); -// } if (null == currency) { currency = iCurrencyServiceApi.getCurrency(orderParam.getPkCountry()).getData(); } @@ -273,46 +257,14 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 邮费模板map(key:邮费模板ID,value:邮费订单明细) Map> postageMap = new HashMap<>(ComputeUtil.mapInitCapacity(waresDetailExtList.size())); -// // 升级盒数基数 -// int baseBoxNum = 0; - -// // 当前会员等级 -// BdGrade memberGrade = null; -// if (null != cuMember.getPkSettleGrade()) { -// // 获取当前会员等级(注册专区,目前没有会员等级) -// memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(cuMember.getPkSettleGrade())).findFirst().get(); -// } -// // 2025.02.24 升级专区取消,复购专区指定盒数商品走升级逻辑 -// if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea()) { -// // 获取升级盒数基数 -// baseBoxNum = iSaOrderService.handleBaseBoxNum(cuMember, memberGrade, gradeList, boxProductList, orderParam.getSystemType()); -// } - // 当前盒数 BigDecimal boxNum = BigDecimal.ZERO; - // 2025.08.02 雨汐团队,普通复购、重消品不累计盒数 - List tmpBoxWaresList = new ArrayList<>(); - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { - if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { - tmpBoxWaresList = iBdWaresService.listWaresCodeByVertex(RetailConstants.VERTEX_PK_ID); - } - } - - -// // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 -// this.checkWaresLimit(cuMember.getPkId(), orderParam.getSpecialArea(), waresDetailExtList, boxProductList); // 设置已经累计盒数的商品列表 List tmpBoxWares = new ArrayList<>(); // 遍历生成订单明细数据 for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { -// // 价格KEY(商品编号 + 价格) -// String waresGroupKey = null; -// // 商品数量 -// int waresQuantity = 1; - // 订单明细 SaOrderItems orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt); orderItems.setWaresBoxNum(null != waresDetailExt.getBoxNum() ? waresDetailExt.getBoxNum() : BigDecimal.ZERO); @@ -325,110 +277,7 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 不包邮,处理邮费模板map saOrderHandle.setPostageTmpMap(orderParam.getTranType(), postageMap, waresDetailExt, orderItems); } - - if (boxWaresList.contains(waresDetailExt.getWaresCode())) { - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() - || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) { - if (RetailConstants.VERTEX_PK_ID.equals(cuMember.getPkVertex())) { - // 雨汐团队,复购、重消盒数品 - if (tmpBoxWaresList.contains(waresDetailExt.getWaresCode())) { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } - } else { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } - } else { - // 商品是盒数商品,需要累计数量 - if (!tmpBoxWares.contains(waresDetailExt.getWaresCode())) { - boxNum = boxNum.add(waresDetailExt.getBoxNum().multiply(new BigDecimal(orderItems.getWaresQuantity()))); - tmpBoxWares.add(waresDetailExt.getWaresCode()); - } - } - - } } - -// if (ESpecialArea.RETAIL_REGISTER.getValue() == orderParam.getSpecialArea() -// && boxProductList.contains(waresDetailExt.getWaresCode()) -// && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) { -// // 会员专区(注册) 并且 指定的商品不为赠品,需要根据盒数重新计算价格 -// // 指定盒数商品,价格需要按等级和购买数量重新计算 -// for (int i = 0; i < waresDetailExt.getWaresQuantity(); i++) { -// // 存在商品,盒数累加1 -// boxNum += 1; -// // 按盒数计算当前商品实际支付金额 -// BigDecimal price = this.getWaresPrice(baseBoxNum + boxNum, gradeList); -// -// if (null == waresGroupKey || !waresGroupKey.equals(waresDetailExt.getWaresCode() + "-" + price)) { -// // 第一盒 或者 商品 + 价格有变化,累计商品数量 -// waresGroupKey = waresDetailExt.getWaresCode() + "-" + price; -// waresQuantity = 1; -// -// orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt); -// orderItems.setPrice(price); -// } else { -// waresQuantity += 1; -// } -// orderItems.setWaresQuantity(waresQuantity); -// orderItems.setQuantity(waresDetailExt.getQuantity() * waresQuantity); -// } -// } else { -// // 非会员专区 -// if (ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() -// && memberGrade.getGradeValue() < EGrade.MAKER.getValue() -// && boxProductList.contains(waresDetailExt.getWaresCode()) -// && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) { -// // 复购专区,如果会员等级小于V3,并且为盒数商品,需要计算等级和价格 -// // 2025.02.24 升级专区取消,复购专区指定盒数商品可以升级,需要根据盒数商品重新计算价格 -// for (int i = 0; i < waresDetailExt.getWaresQuantity(); i++) { -// // 存在商品,盒数累加1 -// boxNum += 1; -// -// // 产品价格 -// BigDecimal price = this.getWaresPrice(baseBoxNum + boxNum, gradeList); -// -// if (null == waresGroupKey || !waresGroupKey.equals(waresDetailExt.getWaresCode() + "-" + price)) { -// // 第一盒 或者 商品 + 价格有变化,累计商品数量 -// waresGroupKey = waresDetailExt.getWaresCode() + "-" + price; -// waresQuantity = 1; -// -// orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt); -// orderItems.setPrice(price); -// } else { -// waresQuantity += 1; -// } -// orderItems.setWaresQuantity(waresQuantity); -// orderItems.setQuantity(waresDetailExt.getQuantity() * waresQuantity); -// } -// } else { -// if ((ESpecialArea.RETAIL_REPURCHASE.getValue() == orderParam.getSpecialArea() -// || ESpecialArea.RETAIL_RESCISSION.getValue() == orderParam.getSpecialArea()) -// && boxProductList.contains(waresDetailExt.getWaresCode()) -// && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) { -// // 重消也累计盒数 -// boxNum += waresDetailExt.getWaresQuantity(); -// } -// orderItems = saOrderHandle.getSaOrderItems(cuMember, saOrderExt, currency, orderItemsList, waresDetailExt); -// } -// -// // 不包邮 并且 不是赠品,需要累积包邮邮费 -// if (EYesNo.NO.getIntValue() == waresDetailExt.getIsGift()) { -// // 包邮金额 -// freePostage = freePostage.add(orderItems.getPrice().multiply(new BigDecimal(orderItems.getQuantity()))); -// if (EYesNo.NO.getIntValue() == waresDetailExt.getIsFreeMail()) { -// // 不包邮,处理邮费模板map -// saOrderHandle.setPostageTmpMap(orderParam.getTranType(), postageMap, waresDetailExt, orderItems); -// } -// } -// } } // 计算订单邮费 @@ -441,6 +290,9 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setPostage(orderParam.getPostage()); // 订单指定商品盒数 saOrderExt.setBoxNum(boxNum); + if(isCopy41List){ + saOrderExt.setOrderType(ESpecialArea.RETAIL_UPGRADE.getValue()); + } } return orderItemsList; } @@ -622,8 +474,15 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setCreationTime(new Date()); cuMember.setPkCreator(orderParam.getPkCreator()); + boolean isShared = false; if (null == orderParam.getCreatorMember()) { - orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + if(ObjectUtil.isNotEmpty(orderParam.getCuMemberShare())){ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getCuMemberShare().getPkParent(), null).getData()); + cuMember.setPkParent(orderParam.getCuMemberShare().getPkParent()); + isShared = true; + }else{ + orderParam.setCreatorMember(iMemberServiceApi.getRetailMember(orderParam.getPkCreator(), null).getData()); + } } cuMember.setPkVertex(orderParam.getCreatorMember().getPkVertex()); cuMember.setPkTeamCode(orderParam.getCreatorMember().getPkTeamCode()); @@ -631,7 +490,12 @@ public class RetailOrderServiceImpl implements IRetailOrderService { cuMember.setSystemType(orderParam.getCreatorMember().getSystemType()); // 获取会员编号、会员主键 - cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + if(isShared){ + cuMember.setPkId(orderParam.getCuMemberShare().getPkId()); + cuMember.setMemberCode(orderParam.getCuMemberShare().getMemberCode()); + }else{ + cuMember = iMemberServiceApi.createRetailMemberIdAndCode(cuMember).getData(); + } return cuMember; } @@ -661,6 +525,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { throw new RuntimeException("会员注册失败"); } + + // 发送会员注册成功短信 + iSmsServiceApi.sendMemberRegister(newMember.getPhone(), EAliSmsTemplate.MEMBER_REGISTER, + newMember.getMemberCode(), newMember.getLoginPassword(), newMember.getPayPassword()); this.pushOrderMq(saOrderExt); return null; } @@ -691,6 +559,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { @Transactional(rollbackFor = Exception.class) @Override public String payOtherOrder(SaOrderExt saOrderExt, CuMember buyMember, CuMemberAccountExt memberAccountExt) { + + if(ESpecialArea.DISCOUNT_AREA.getValue() == saOrderExt.getOrderType()){ + // 验证是否买过41/42 + if(!iSaOrderService.showDiscountArea()){ + throw new RuntimeException("不满足购买五折专区的条件!"); + } + } // 保存订单以及明细 this.saveOrder(saOrderExt); @@ -721,15 +596,14 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType() ) { // 计算奖金,通过mq分发消息,异步处理 saOrderExt.setCancelBool(Boolean.FALSE); - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); + log.info("{} 秒结消息,order.second.exchange:{}", SysConstants.RETAIL_PREFIX, saOrderExt.getOrderCode()); rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { - log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); + log.error("{} pushOrderMq 推送MQ失败. order: {}", SysConstants.RETAIL_PREFIX, saOrderExt, e); } } @@ -755,10 +629,13 @@ public class RetailOrderServiceImpl implements IRetailOrderService { // 在线支付的订单支付方式为钱包 saOrderExt.setPayType(EOrderPayType.ONLINE.getValue()); - if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType()) { + RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); + boolean isShared = ObjectUtil.isNotEmpty(registerParam) && ObjectUtil.isNotEmpty(registerParam.getCuMemberShare()); + if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() + || (isShared && EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) + ) { // 注册订单 // 获取缓存参数 - RetailOrderRegisterParam registerParam = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_REG_PARAM + pkMember + orderCode); if (null == registerParam) { // if (null != saOrderTemp) { // registerParam = JSONUtil.toBean(saOrderTemp.getTempParam(), RetailOrderRegisterParam.class); @@ -768,11 +645,14 @@ public class RetailOrderServiceImpl implements IRetailOrderService { } // 封装会员信息 CuMember newMember = this.packageCuMember(registerParam); - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, registerParam.getPkGrade(), newMember.getPkVertex()); - newMember.setPkSettleGrade(tmpGrade.getPkId()); - newMember.setPkAwards(tmpGrade.getPkAwards()); - + newMember.setPkSettleGrade(registerParam.getPkGrade()); + newMember.setPkAwards(registerParam.getPkAwards()); saOrderExt.setPkMember(newMember.getPkId()); + if(ObjectUtil.isNotEmpty(registerParam.getCuMemberShare())){ + saOrderExt.setPkReference(registerParam.getCuMemberShare().getPkParent()); +// saOrderExt.setOrderType(EOrderType.RETAIL_REGISTER.getValue()); + saOrderExt.setOrderType(registerParam.getSpecialArea()); + } resultStr = this.payRegOrder(saOrderExt, newMember, null); } else { @@ -782,15 +662,8 @@ public class RetailOrderServiceImpl implements IRetailOrderService { if (null == cuMember) { return "会员信息不存在"; } - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单 - BdGrade tmpGrade = iSaOrderService.handleGradeEnd(null, saOrderExt.getPkGrade(), cuMember.getPkVertex()); - cuMember.setPkSettleGrade(tmpGrade.getPkId()); - resultStr = this.payUpgOrder(saOrderExt, cuMember, null); - } else { - // 其它订单 - resultStr = this.payOtherOrder(saOrderExt, cuMember, null); - } + // 其它订单 + resultStr = this.payOtherOrder(saOrderExt, cuMember, null); } if (null == resultStr) { iSaOrderTempService.remove(Wrappers.lambdaQuery() @@ -811,23 +684,10 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); iSaOrderService.save(saOrderExt); - // 订单商品拆分数据 - List orderWaresList = new ArrayList<>(); - // 订单商品拆分map(key:商品主键,value:商品数量) - Map orderWaresMap = new HashMap<>(); - // 订单商品价格拆分map(key:商品主键,value:商品价格) - Map orderWaresPriceMap = new HashMap<>(); // 商品销量数据 List waresNumberList = new ArrayList<>(); // 商品销量map(key:商品主键,value:商品数量) Map waresNumberMap = new HashMap<>(); - // 商品限购列表 - List waresLimitList = new ArrayList<>(); - // 商品限购map(key:商品主键,value:商品数量) - Map waresLimitMap = new HashMap<>(); - - // 盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { saOrderItems.setPkOrder(saOrderExt.getPkId()); @@ -835,43 +695,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { saOrderItems.setPkCreator(saOrderExt.getPkCreator()); saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - // 指定商品拆分 并且 非赠品 - if (boxProductList.contains(saOrderItems.getWareCode()) - && EYesNo.NO.getIntValue() == saOrderItems.getIsGift()) { - // 盒数 = 商品上传盒数 * 商品数量 - BigDecimal boxNum = saOrderItems.getWaresBoxNum().multiply(new BigDecimal(saOrderItems.getWaresQuantity())); - orderWaresMap.put(saOrderItems.getPkWares(), boxNum); - - // 价格 = 产品上传价格 * 产品数量,不存在直接放入,存在则进行累加 - BigDecimal waresPrice = saOrderItems.getPrice().multiply(new BigDecimal(saOrderItems.getQuantity())); - if (orderWaresPriceMap.containsKey(saOrderItems.getPkWares())) { - BigDecimal tmpWaresPrice = orderWaresPriceMap.get(saOrderItems.getPkWares()); - orderWaresPriceMap.put(saOrderItems.getPkWares(), tmpWaresPrice.add(waresPrice)); - } else { - orderWaresPriceMap.put(saOrderItems.getPkWares(), waresPrice); - } - - waresLimitMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); - } // 商品销量累计 waresNumberMap.merge(saOrderItems.getPkWares(), saOrderItems.getWaresQuantity(), Integer::sum); } iSaOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - if (orderWaresMap.size() > 0) { - // 处理订单商品拆分数据 - for (Integer key : orderWaresMap.keySet()) { - SaOrderWares saOrderWares = SaOrderWares.builder() - .pkOrder(saOrderExt.getPkId()) - .pkWares(key) - .waresPrice(orderWaresPriceMap.get(key)) - .waresQuantity(orderWaresMap.get(key)) - .build(); - saOrderWares.setPkCreator(saOrderExt.getPkCreator()); - saOrderWares.setCreationTime(saOrderExt.getCreationTime()); - orderWaresList.add(saOrderWares); - } - } if (waresNumberMap.size() > 0) { // 处理订单商品销量、会员商品限购 for (Integer key : waresNumberMap.keySet()) { @@ -881,38 +709,11 @@ public class RetailOrderServiceImpl implements IRetailOrderService { .build()); } } - if (ESpecialArea.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() - || ESpecialArea.RETAIL_RESCISSION.getValue() == saOrderExt.getOrderType()) { - if (waresLimitMap.size() > 0) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - for (Integer key : waresLimitMap.keySet()) { - SaOrderWaresLimit saOrderWaresLimit = SaOrderWaresLimit.builder() - .pkMember(saOrderExt.getPkMember()) - .orderType(saOrderExt.getOrderType()) - .pkWares(key) - .waresQuantity(waresLimitMap.get(key)) - .limitDate(limitDate) - .build(); - saOrderWaresLimit.setPkCreator(saOrderExt.getPkCreator()); - saOrderWaresLimit.setCreationTime(saOrderExt.getCreationTime()); - saOrderWaresLimit.setPkCountry(saOrderExt.getPkCountry()); - waresLimitList.add(saOrderWaresLimit); - } - } - } - if (orderWaresList.size() > 0) { - // 订单商品拆分表 - iSaOrderWaresService.saveBatch(orderWaresList); - } if (waresNumberList.size() > 0) { // 更新商品销量表 iBdWaresExtendService.updateWaresSalesAccrual(waresNumberList); } - if (waresLimitList.size() > 0) { - // 更新会员商品限购 - iSaOrderWaresLimitService.saveBatchLimit(waresLimitList); - } } @Transactional(rollbackFor = Exception.class) @@ -959,102 +760,18 @@ public class RetailOrderServiceImpl implements IRetailOrderService { */ private Boolean handleMemberActivate(CuMember cuMember, SaOrderExt saOrder) { if ((null == cuMember.getIsActivate() || EYesNo.YES.getIntValue() != cuMember.getIsActivate()) - && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) + && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) ) { // 会员激活状态为空 或 未激活,并且是 注册、升级 订单,判断会员是否激活 - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 存在指定盒数商品 - cuMember.setIsActivate(EYesNo.YES.getIntValue()); - if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { - cuMember.setPayTime(saOrder.getPayTime()); - cuMember.setPayStatus(EPayStatus.PAID.getValue()); - } - return true; + // 存在指定盒数商品 + cuMember.setIsActivate(EYesNo.YES.getIntValue()); + if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { + cuMember.setPayTime(saOrder.getPayTime()); + cuMember.setPayStatus(EPayStatus.PAID.getValue()); } + return true; } return false; - -// if (null == cuMember.getIsActivate()) { -//// // 会员激活状态为空,按未激活处理 -//// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// -// // new 暂时不处理激活,只要是会员就按激活处理,有订单就有支付状态和时间 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (null != saOrder) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// } -// return true; - -// if (EYesNo.YES.getIntValue() != cuMember.getIsActivate() -// && (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType() -// || EOrderType.RETAIL_REPURCHASE.getValue() == saOrder.getOrderType()) -// ) { -// // 会员未激活,并且是 注册、升级、复购 订单,判断会员是否激活 -// List boxProductList = BoxProductUtil.getBoxProductListBySystemType(saOrder.getSystemType()); -// -// for (SaOrderItems saOrderItems : saOrder.getOrderItemsList()) { -// if (boxProductList.contains(saOrderItems.getWareCode())) { -// // 存在指定盒数商品 -// cuMember.setIsActivate(EYesNo.YES.getIntValue()); -// if (EPayStatus.UNPAID.getValue() == cuMember.getPayStatus()) { -// cuMember.setPayTime(saOrder.getPayTime()); -// cuMember.setPayStatus(EPayStatus.PAID.getValue()); -// } -// return true; -// } -// } -// } -// return false; - } - - /** - * 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每用户每月限购50件 - * - * @param pkMember 会员ID - * @param specialArea 所属专区 - * @param waresDetailExtList 购买商品列表 - * @param boxProductList 盒数商品列表 - * @return - */ - private void checkWaresLimit(Long pkMember, Integer specialArea, List waresDetailExtList, List boxProductList) { - String limitDate = DateUtils.parseDateToFormat(DateUtils.YYYYMM, new Date()); - // 商品数量map(key: 商品编号,value: 商品数量) - Map waresNumMap = new HashMap<>(); - // 商品信息map(key: 商品编号,value: 商品名称) - Map waresNameMap = new HashMap<>(); - for (BdWaresDetailExt waresDetailExt : waresDetailExtList) { - if ((ESpecialArea.RETAIL_REPURCHASE.getValue() == specialArea - || ESpecialArea.RETAIL_RESCISSION.getValue() == specialArea) - && boxProductList.contains(waresDetailExt.getWaresCode()) - && EYesNo.NO.getIntValue() == waresDetailExt.getIsGift() - ) { - // 2025.03.11 添加需求,复购专区、重消专区,指定盒数商品每月每人限购50件(赠品排除) - waresNumMap.merge(waresDetailExt.getWaresCode(), waresDetailExt.getWaresQuantity(), Integer::sum); - waresNameMap.put(waresDetailExt.getWaresCode(), waresDetailExt.getWaresName()); - } - } - - if (!waresNumMap.isEmpty()) { - for (String key : waresNumMap.keySet()) { - if (waresNumMap.get(key) > 50) { - throw new ServiceException("商品【" + waresNameMap.get(key) + "】每月限购50件"); - } - } - - List limitList = iSaOrderWaresLimitService.listWaresList(pkMember, specialArea, limitDate, new ArrayList<>(waresNumMap.keySet())); - if (CollectionUtil.isNotEmpty(limitList)) { - for (SaOrderWaresLimitExt waresLimitExt : limitList) { - Integer waresNum = waresNumMap.get(waresLimitExt.getWaresCode()); - if (null != waresNum - && waresNum + waresLimitExt.getWaresQuantity() > 50) { - throw new ServiceException("商品【" + waresLimitExt.getWaresName() + "】每月限购50件"); - } - } - } - } } /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java index a5587c9a..7cf9682d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderParam.java @@ -6,6 +6,7 @@ import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; import com.hzs.common.domain.member.base.CuMember; +import com.hzs.common.domain.member.base.CuMemberShare; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.AllArgsConstructor; @@ -113,6 +114,9 @@ public class RetailOrderParam implements Serializable { @JsonIgnore private CuMember creatorMember; +// @JsonIgnore + private CuMemberShare cuMemberShare; + /** * 订单编号 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java index f8e29233..473f366a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderPostageParam.java @@ -3,6 +3,7 @@ package com.hzs.retail.sale.param; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EDelivery; import com.hzs.common.core.enums.ETransportType; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; import com.hzs.sale.shopping.vo.ShoppingCartRedis; import lombok.Data; @@ -66,4 +67,10 @@ public class RetailOrderPostageParam implements Serializable { */ private Integer tranType = ETransportType.LAND.getValue(); + + /** + * 商品列表 + */ + private List waresList; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java index 4982edcb..577d6a6b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderRegisterParam.java @@ -1,11 +1,12 @@ package com.hzs.retail.sale.param; -import lombok.Data; -import lombok.EqualsAndHashCode; +import com.hzs.sale.order.param.FansConfirmOrderWaresParam; +import lombok.*; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.Size; import java.io.Serializable; +import java.util.List; /** * 新零售注册订单入参 @@ -33,4 +34,9 @@ public class RetailOrderRegisterParam extends RetailOrderParam implements Serial @Size(max = 20, message = "推荐编号不能超过20位") private String parentCode; + + /** + * 商品列表 + */ + private List waresList; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java deleted file mode 100644 index b85a29c0..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/param/RetailOrderUpgradeParam.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.hzs.retail.sale.param; - -import com.hzs.common.domain.member.base.CuMember; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import javax.validation.constraints.NotEmpty; -import javax.validation.constraints.Size; -import java.io.Serializable; - -/** - * 新零售升级订单入参 - */ -@EqualsAndHashCode(callSuper = true) -@Data -public class RetailOrderUpgradeParam extends RetailOrderParam implements Serializable { - - /** - * 升级编号 - */ - @NotEmpty(message = "升级编号不能为空") - @Size(max = 20, message = "升级编号不能超过20位") - private String upgradeMemberCode; - - /** - * 升级会员 - */ - private CuMember upgradeMember; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java index a6b3e3c8..95e44578 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/sale/vo/RetailOrderVO.java @@ -6,6 +6,7 @@ import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; +import java.math.BigDecimal; /** * 新零售订单返回VO @@ -48,4 +49,9 @@ public class RetailOrderVO implements Serializable { */ private String urlAddress; + /** + * 待支付金额 + */ + private BigDecimal orderAmount; + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java index feea16a2..c6aab0c2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/controller/api/ApiRetailWaresController.java @@ -1,8 +1,10 @@ package com.hzs.retail.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.constant.CountryConstants; @@ -10,10 +12,13 @@ import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EAccount; import com.hzs.common.core.enums.ELabelType; import com.hzs.common.core.enums.ESpecialArea; +import com.hzs.common.core.enums.EWaresType; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DistinctByKeyUtil; +import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.ext.BdWaresSpecsSkuExt; @@ -25,8 +30,11 @@ import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; import com.hzs.retail.wares.param.RetailWaresDetailParam; import com.hzs.retail.wares.param.RetailWaresParam; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.retail.wares.vo.RetailWaresDetailVO; import com.hzs.retail.wares.vo.RetailWaresVO; +import com.hzs.sale.order.service.ISaOrderService; +import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.service.IBdWaresLabelService; import com.hzs.sale.wares.service.IBdWaresRangeService; import com.hzs.sale.wares.service.IBdWaresService; @@ -38,10 +46,7 @@ import com.hzs.system.config.dto.AreaCurrencyDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.math.BigDecimal; @@ -64,6 +69,8 @@ public class ApiRetailWaresController extends BaseController { private IBdWaresSpecsSkuService iBdWaresSpecsSkuService; @Autowired private IBdWaresRangeService iBdWaresRangeService; + @Autowired + private ISaOrderService iSaOrderService; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @@ -80,6 +87,16 @@ public class ApiRetailWaresController extends BaseController { */ @PostMapping("/wares-list") public AjaxResult waresList(@Valid @RequestBody RetailWaresParam param) { + if(ESpecialArea.DISCOUNT_AREA.getValue() == param.getSpecialArea()){ + // 验证是否买过41/42 + if(!iSaOrderService.showDiscountArea()){ + return AjaxResult.success(); + } + } + boolean copyFor41List = param.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } // 会员信息 CuMemberExt cuMemberExt = iMemberServiceApi.getMemberById(SecurityUtils.getUserId()).getData(); @@ -96,6 +113,9 @@ public class ApiRetailWaresController extends BaseController { if (CollectionUtil.isNotEmpty(bdWaresExtList)) { resultList = this.waresShowHandle(bdWaresExtList, param.getSpecialArea(), cuMemberExt.getPkSettleGrade(), true); + if(copyFor41List){ + resultList.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); + } } return AjaxResult.success(resultList); } @@ -111,6 +131,9 @@ public class ApiRetailWaresController extends BaseController { public AjaxResult waresDetail(@Valid @RequestBody RetailWaresDetailParam param) { // 会员信息 CuMemberExt cuMemberExt = iMemberServiceApi.getMemberById(SecurityUtils.getUserId()).getData(); + if(param.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue())){ + param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } // 添加系统类型 param.setSystemType(SecurityUtils.getSystemType()); @@ -378,4 +401,147 @@ public class ApiRetailWaresController extends BaseController { } + + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { + param.setSpecialArea(ESpecialArea.REGISTER_AREA.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } + + /** + * 查询团队配置是否展示该商品 + * + * @param pkWares + * @return + */ + public ShowWaresDTO getShowWares(Integer pkWares, Long loginMember, String loginMemberCode, Map> waresAuthorityMap) { + ShowWaresDTO showWaresDTO = new ShowWaresDTO(); + showWaresDTO.setPkWares(pkWares); + showWaresDTO.setLoginMember(loginMember); + showWaresDTO.setLoginMemberCode(loginMemberCode); + showWaresDTO.setWaresAuthorityList(waresAuthorityMap.get(pkWares)); + return showWaresDTO; + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java new file mode 100644 index 00000000..1e5e125b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/retail/wares/param/WaresShareParam.java @@ -0,0 +1,31 @@ +package com.hzs.retail.wares.param; + +import lombok.Data; + +/** + * 分享商品查询条件 + */ +@Data +public class WaresShareParam { + + /** + * 分享会员编号 + */ + private String shareMemberCode; + + /** + * 所属专区 + */ + private Integer specialArea; + + /** + * 商品类型 + */ + private Integer isMakerGift; + + /** + * 国家 + */ + private Integer pkCountry; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java index b65d3a63..a74cb802 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java @@ -17,13 +17,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.TimeUnit; -/** - * @Description: - * @Author: sui q - * @Time: 2022/9/16 17:10 - * @Classname: RedisComponent - * @PackageName: com.hzs.sale.component.load - */ @Component @Slf4j class RedisComponent { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java index c37f3c18..f127040f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/controller/manage/SaDeliverUnhandledController.java @@ -108,6 +108,10 @@ public class SaDeliverUnhandledController extends BaseController { param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); param.setVertexIdList(userAuthorityDTO.getVertexIdList()); param.setTeamList(userAuthorityDTO.getUserTeamList()); + // 兼容调换货产品 + if (CollectionUtil.isEmpty(param.getPkWaresList())) { + param.setPkWaresList(Collections.singletonList(0)); + } startPage(); List resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); @@ -120,6 +124,22 @@ public class SaDeliverUnhandledController extends BaseController { for (DeliverUnhandledVO deliverUnhandled : resultList) { // 省市区处理 OrderUtil.handleOrderAddress(areaMap, deliverUnhandled); + // 订单类型枚举转换 + deliverUnhandled.setOrderTypeVal(EOrderType.getLabelByValue(deliverUnhandled.getOrderType())); + // 销售类型 + deliverUnhandled.setIsGiftVal(ESaleType.getLabelByValue(deliverUnhandled.getIsGift())); + // 发货类型 + deliverUnhandled.setShippingChannelVal(EShippingChannel.getLabelByValue(deliverUnhandled.getShippingChannel())); + // 订单状态 + deliverUnhandled.setOrderStatusVal(EOrderStatus.getLabelByValue(deliverUnhandled.getOrderStatus())); + // 发货方式 + deliverUnhandled.setDeliveryWayVal(EDelivery.getLabelByValue(deliverUnhandled.getDeliveryWay())); + // 供应方式 + deliverUnhandled.setOperateScopeVal(ESupplyWay.getLabelByVal(deliverUnhandled.getOperateScope())); + // 运输方式 + deliverUnhandled.setTranTypeVal(ETransportType.getLabelByValue(deliverUnhandled.getTranType())); + // 预售状态 + deliverUnhandled.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(deliverUnhandled.getPreSaleStatus())); } } return getDataTable(resultList); @@ -151,6 +171,10 @@ public class SaDeliverUnhandledController extends BaseController { param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); param.setVertexIdList(userAuthorityDTO.getVertexIdList()); param.setTeamList(userAuthorityDTO.getUserTeamList()); + // 兼容调换货产品 + if (CollectionUtil.isEmpty(param.getPkWaresList())) { + param.setPkWaresList(Collections.singletonList(0)); + } List resultList = iSaOrderItemsService.queryDeliverUnhandledList(param, pkCountry); @@ -166,14 +190,22 @@ public class SaDeliverUnhandledController extends BaseController { // 省市区处理 OrderUtil.handleOrderAddress(areaMap, deliverUnhandled); - deliverUnhandled.setIsGiftVal(transactionMap.get(EnumsPrefixConstants.E_SALE_TYPE + deliverUnhandled.getIsGift())); - deliverUnhandled.setDeliveryWayVal(transactionMap.get(EnumsPrefixConstants.DELIVERY + deliverUnhandled.getDeliveryWay())); - deliverUnhandled.setOperateScopeVal(transactionMap.get(EnumsPrefixConstants.SUPPLY_WAY + deliverUnhandled.getOperateScope())); - deliverUnhandled.setShippingChannelVal(transactionMap.get(EnumsPrefixConstants.E_SHIPPING_CHANNEL + deliverUnhandled.getShippingChannel())); - deliverUnhandled.setTranTypeVal(transactionMap.get(EnumsPrefixConstants.ENU_TRA + deliverUnhandled.getTranType())); - deliverUnhandled.setPreSaleStatusVal(transactionMap.get(EnumsPrefixConstants.PRESALE_STATUS + deliverUnhandled.getPreSaleStatus())); - deliverUnhandled.setOrderTypeVal(transactionMap.get(EnumsPrefixConstants.ORDER_TYPE + deliverUnhandled.getOrderType())); - deliverUnhandled.setOrderStatusVal(transactionMap.get(EnumsPrefixConstants.ORDER_STATUS + deliverUnhandled.getOrderStatus())); + // 订单类型枚举转换 + deliverUnhandled.setOrderTypeVal(EOrderType.getLabelByValue(deliverUnhandled.getOrderType())); + // 销售类型 + deliverUnhandled.setIsGiftVal(ESaleType.getLabelByValue(deliverUnhandled.getIsGift())); + // 发货类型 + deliverUnhandled.setShippingChannelVal(EShippingChannel.getLabelByValue(deliverUnhandled.getShippingChannel())); + // 订单状态 + deliverUnhandled.setOrderStatusVal(EOrderStatus.getLabelByValue(deliverUnhandled.getOrderStatus())); + // 发货方式 + deliverUnhandled.setDeliveryWayVal(EDelivery.getLabelByValue(deliverUnhandled.getDeliveryWay())); + // 供应方式 + deliverUnhandled.setOperateScopeVal(ESupplyWay.getLabelByVal(deliverUnhandled.getOperateScope())); + // 运输方式 + deliverUnhandled.setTranTypeVal(ETransportType.getLabelByValue(deliverUnhandled.getTranType())); + // 预售状态 + deliverUnhandled.setPreSaleStatusVal(EPresaleStatus.getLabelByValue(deliverUnhandled.getPreSaleStatus())); } } ExcelUtil util = new ExcelUtil<>(DeliverUnhandledVO.class); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java index 755d15fe..fac3344f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/deliver/vo/DeliverUnhandledVO.java @@ -6,6 +6,7 @@ import com.hzs.common.core.annotation.Excel; import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.constant.EnumsPrefixConstants; import lombok.Data; +import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.Date; @@ -36,8 +37,6 @@ public class DeliverUnhandledVO { /** * 订单类型(EOrderType) */ - @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) private Integer orderType; /** * 订单类型显示 @@ -91,7 +90,6 @@ public class DeliverUnhandledVO { /** * 销售类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.E_SALE_TYPE) @JsonIgnore private Integer isGift; /** @@ -155,7 +153,6 @@ public class DeliverUnhandledVO { /** * 发货类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.E_SHIPPING_CHANNEL) @JsonIgnore private Integer shippingChannel; /** @@ -180,7 +177,6 @@ public class DeliverUnhandledVO { /** * 订单状态(EOrderStatus) */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_STATUS) private Integer orderStatus; /** * 订单状态显示 @@ -192,7 +188,6 @@ public class DeliverUnhandledVO { * 发货方式(EDelivery) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.DELIVERY) private Integer deliveryWay; /** * 发货方式显示 @@ -204,7 +199,6 @@ public class DeliverUnhandledVO { * 供应方式(ESupplyWay) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.SUPPLY_WAY) private Integer operateScope; /** * 供应方式显示 @@ -216,7 +210,6 @@ public class DeliverUnhandledVO { * 运输方式(ETransportType) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.ENU_TRA) private Integer tranType; /** * 运输方式显示 @@ -228,7 +221,6 @@ public class DeliverUnhandledVO { * 预售状态(EPresaleStatus) */ @JsonIgnore - @Transaction(transactionKey = EnumsPrefixConstants.PRESALE_STATUS) private Integer preSaleStatus; /** * 预售状态显示 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java index bf96bdd6..3a2e422f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/ParentOrderController.java @@ -1,22 +1,15 @@ package com.hzs.sale.order.controller; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.member.account.CuMemberAccount; -import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; @@ -24,7 +17,6 @@ import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.ProductGroup; @@ -47,8 +39,6 @@ public abstract class ParentOrderController extends BaseController { private ISaOrderService orderService; - private ISaOrderItemsService orderItemsService; - protected RedisService redisService; @Autowired @@ -68,355 +58,6 @@ public abstract class ParentOrderController extends BaseController { return orderService; } - @Autowired - public void setOrderItemsService(ISaOrderItemsService orderItemsService) { - this.orderItemsService = orderItemsService; - } - - public ISaOrderItemsService getOrderItemsService() { - return orderItemsService; - } - - /** - * 根据code、编码获取值 - * - * @param code 查询的code - */ - protected CuMember getCuMemberByCode(String code) { - return orderService.getCuMemberByCode(code); - } - - /** - * 验证字段是否必输 - * - * @param fieldList 需要验证的字段 - */ - protected boolean validateFieldNotNull(OrderParam orderParam, List fieldList) { - return fieldList.stream().anyMatch(field -> { - Object obj = ReflectUtils.invokeGetter(orderParam, field); - return obj == null || "".equals(obj); - }); - } - - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名、安置人必输 - */ - protected AjaxResult validatePhone(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getPhone()) || StringUtils.isEmpty(orderParam.getMemberName())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - // 手机号 - String phone = orderParam.getPhone(); - // 会员姓名 - String memberName = orderParam.getMemberName(); - // 验证手机号注册次数 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().phone(phone).payStatus(EPayStatus.PAID.getValue()).pkSettleGrade(EGrade.VIP.getValue()).pkSettleCountry(orderParam.getPkSettleCountry()).build()); - // 系统中存在该手机号走的验证 - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - // 手机号注册次数 - if (!validatePhoneCount(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.SYSTEM_REGISTER_COUNT)); - } - // 一个手机号只能有一个姓名 - boolean flag = cuMemberExtList.stream().allMatch(cuMemberExt -> memberName.equals(cuMemberExt.getMemberName())); - if (!flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PHONE_ALREADY_REGISTER)); - } - } - if (!orderParam.getIsHaiFun()) { - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - // 安置人 - // 1.只能在同一个团队内 验证安置人及安置人伞上是否存在该手机号+姓名 - // 很多情况安置人跟伞下是一样的,从redis获取安置人,验证安置人手机号跟姓名是否一致 - CuMember placeParentCuMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (!placeParentCuMember.getMemberName().equals(memberName) || - !placeParentCuMember.getPhone().equals(phone)) { - // 寻找安置人伞上,验证安置伞上是否存在该手机姓名,如果伞上没有找到手机号,其他地方找到了,说明不在一个团队 - List sponsorOnUmbrella = orderService.querySponsorOnUmbrella(placeParentCuMember.getPkId(), phone); - CuMemberExt searchCuMember = null; - for (CuMemberExt sponsor : sponsorOnUmbrella) { - if (sponsor.getPhone().equals(phone) && sponsor.getMemberName().equals(memberName)) { - searchCuMember = sponsor; - break; - } - } - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - if (searchCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } else { - // 验证cuMemberExtList是否在searchCuMember的伞下,不在伞下说明游离了 - List validateSponsorOnUmbrella = orderService.selectPlaceSponsorUnderUmbrellaByCondition(searchCuMember.getPkId(), cuMemberExtList); - if (CollectionUtil.isEmpty(validateSponsorOnUmbrella) || validateSponsorOnUmbrella.size() != cuMemberExtList.size()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_EXIST_OTHER_TEAM)); - } - } - } - } - } - return AjaxResult.success(); - } - - /** - * 验证推荐编号,成功后返回姓名,如果首单返回安置人、安置部门 - * - * @param orderParam 必须推荐人 - */ - protected AjaxResult validateReferenceRelation(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - CuMember cuMember = getCuMemberByCode(orderParam.getParent()); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - // 验证会员支付状态,只有支付状态才能进行推荐人 - if (cuMember.getPayStatus() != EPayStatus.PAID.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_PAY)); - } - // 验证推荐人跟报单人关系, 报单人一定在最上,然后是推荐人 - // 推荐人=报单人,不用在验证报单人在推荐人上面 - if (!cuMember.getPkId().equals(orderParam.getCenterCodeId())) { - // 查找报单人安置伞下是否存在推荐人 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), cuMember.getMemberCode()); - if (CollectionUtil.isEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_TEAM)); - } - } - // 存在首单,只返回推荐人姓名 - orderParam.setParentId(cuMember.getPkId()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setParentName(cuMember.getMemberName()); - } else { - orderParam.setParentName(cuMember.getMemberName()); - } - - String firstOrder = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(firstOrder)) { - // 判断是否为首单,根据订单关系,按照订单关系,是首单的话,直接带出极左极下,放在第一部门,不能修改 - Integer count = orderService.queryCuMemberByPkMember(cuMember.getPkId()); - if (count == 0) { - // 验证网体 - orderParam.setIsFirst(true); - // 不存在首单,返回推荐人姓名、安置人编号、安置人姓名、安置人部门 - // 查找推荐人极左极下 - CuMemberExt cuMemberExt = orderService.queryPlaceSponsorLastLeft(cuMember.getPkId(), EPlaceDept.LEFT_DEPT.getValue()); - if (cuMemberExt == null) { - orderParam.setPlaceParentId(cuMember.getPkId()); - orderParam.setPlaceParent(cuMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMember.getMemberName()); - } - } else { - orderParam.setPlaceParentId(cuMemberExt.getPkId()); - orderParam.setPlaceParent(cuMemberExt.getMemberCode()); - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } else { - orderParam.setPlaceParentName(cuMemberExt.getMemberName()); - } - } - String placePosition = orderService.querySystemConfigByKey(orderParam.getPkSettleCountry(), ESystemConfig.PLACE_POSITION.getKey()); - if (Objects.equals("3", placePosition)) { - orderParam.setPlaceDept(EPlaceDept.RIGHT_DEPT.getValue()); - } else { - orderParam.setPlaceDept(EPlaceDept.LEFT_DEPT.getValue()); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证安置编号、安置部门,成功后返回姓名 - * - * @param orderParam 必须安置人 - */ - protected AjaxResult validatePlaceParentMemberCode(OrderParam orderParam) { - if (StringUtils.isEmpty(orderParam.getParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getPlaceParent())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EMPTY)); - } - - // 验证推荐编号、安置编号是否存在,不验证大小写,去空格。 - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParent(parentMember.getMemberCode()); - if (SecurityUtils.getUserId().equals(parentMember.getPkId())) { - orderParam.setParentName(parentMember.getMemberName()); - } else { - orderParam.setParentName(parentMember.getMemberName()); - } - - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXISTS)); - } - orderParam.setPlaceParentId(placeMember.getPkId()); - orderParam.setPlaceParent(placeMember.getMemberCode()); - - if (SecurityUtils.getUserId().equals(placeMember.getPkId())) { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } else { - orderParam.setPlaceParentName(placeMember.getMemberName()); - } - // 当安置人跟安置位置都有值是需要验证 需要验证安置位置 - if (orderParam.getPlaceDept() != null && orderParam.getPlaceDept() > 0) { - // 安置人在推荐人伞下,含自己。 推荐人在报单中心伞下,含自己,在推荐那边验证 - if (!orderParam.getPlaceParent().equals(orderParam.getParent())) { - // 查找推荐人安置伞下 - List cuMemberExtList = orderService.queryPlaceSponsorUnderUmbrella(parentMember.getPkId(), orderParam.getPlaceParent()); - // 查找是否在伞下 - boolean flag = cuMemberExtList.stream().noneMatch(placeSponsor -> - orderParam.getPlaceParent().equals(placeSponsor.getMemberCode()) || orderParam.getPlaceParent().equals(placeSponsor.getServiceCode()) - ); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - // 推荐人安置人左区或者右区只能有1个,验证安置人是否已经有点位 - List cuMemberExtList = orderService.queryMemberExtByCondition(CuMember.builder().pkPlaceParent(placeMember.getPkId()).category(10).placeDept(orderParam.getPlaceDept()).build()); - if (CollectionUtil.isNotEmpty(cuMemberExtList)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - // 安置部门为第二部门时,需要判断推荐人是否推荐过首单,可以安置在第二部门,否则只能在第一部门; - // 推荐过左区可以放右区,需要验证安置人是否有有单 - // 西非不验证安置部门是否推荐过首单,只需要验证安置左区必须有人 - if (orderParam.getPlaceDept() == EPlaceDept.RIGHT_DEPT.getValue()) { - // 推荐人是否有首单 - // 从参数中获取是否需要验证安置人有首单 - Integer pkCountry = orderParam.getPkSettleCountry(); - if (!placeMember.getPkId().equals(parentMember.getPkId()) && orderService.validateFirstOrder(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_REFERENCE)); - } - // 安置人左区是否有人 - if (orderService.validateLeftExistMember(placeMember.getPkId(), pkCountry)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_NOT_EXIST)); - } - } - } - return AjaxResult.success(orderParam); - } - - /** - * 验证需要注册的信息, 订单保存时需要调用的验证 - * - * @param orderParam 所有信息 - */ - protected AjaxResult validateSaveMember(OrderParam orderParam) { - // 安置编号 - String placeParent = orderParam.getPlaceParent(); - // 安置部门 - Integer placeDept = orderParam.getPlaceDept(); - AjaxResult result = validateFun(orderParam); - if (result != null) { - return result; - } - // 验证是否首单,首单安置人安置部门不能变动 - if (orderParam.getIsFirst()) { - // 判断安置人跟安置部门是否一致 - if (!(placeParent.equals(orderParam.getPlaceParent()) && placeDept.equals(orderParam.getPlaceDept()))) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_IS_LAST_LEFT)); - } - } else { -// // 验证过首单后可以不用在验证安置人,不是首单的情况直接验证安置人 - // 验证安置人 - result = validatePlaceParentMemberCode(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - } - return AjaxResult.success(orderParam); - } - - protected AjaxResult validateFun(OrderParam orderParam) { - // 报单中心 - Long centerCodeId = orderParam.getCenterCodeId(); - // 验证权限 - AjaxResult result = validateRegisterAuthority(centerCodeId, orderParam.getSpecialArea()); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证手机号 - result = validatePhone(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - // 验证推荐人 - result = validateReferenceRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - return null; - } - - /** - * 对安置位置进行加锁预防位置重复 - * - * @param placeParentId 安置人 - * @param placeDept 安置位置 - */ - protected boolean validatePlacePosition(Long placeParentId, Integer placeDept) { - // 验证通过对安置人,安置部门加锁,防止同时安置引起错误,最后解锁 - return orderService.lockKey(getLockKey(placeParentId, placeDept)); - } - - /** - * @param placeParentId 安置位置 - * @param placeDept 安置部门 - */ - private String getLockKey(Long placeParentId, Integer placeDept) { - return CacheConstants.POSITION + - placeParentId + - placeDept; - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - * - * @param centerCodeId 验证的权限 - */ - protected AjaxResult validateRegisterAuthority(Long centerCodeId, Integer specialArea) { - // 前台登录验证登录会员,后台空点验证输入的报单人 - CuMember cuMember = orderService.getCuMemberByKey(centerCodeId); - if (cuMember == null || cuMember.getRegisterAuthority() == ERegistrationAuthority.ORDINARY.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_AUTHORITY)); - } - return AjaxResult.success(); - } - - /** - * 检查输入的条件 - * - * @param orderParam 条件 - * @return boolean - */ - protected Boolean checkRecMsgBoolean(OrderParam orderParam) { - if (orderParam.getDeliveryWay() != null && (EDelivery.COMPANY_PICKED_UP.getValue() == orderParam.getDeliveryWay())) { - orderParam.setTransType(null); - return orderParam.getSpecialArea() != null - && orderParam.getOrderItemsParams() != null - && orderParam.getOrderItemsParams().size() > 0; - } else { - return orderParam.getSpecialArea() != null - && orderParam.getDeliveryWay() != null && orderParam.getTransType() != null - && orderParam.getRecName() != null && orderParam.getRecPhone() != null - && orderParam.getRecProvince() != null && orderParam.getRecCity() != null - && orderParam.getOrderItemsParams() != null && orderParam.getRecAddress() != null - && orderParam.getOrderItemsParams().size() > 0; - } - } - /** * 检查输入的条件 * @@ -460,17 +101,6 @@ public abstract class ParentOrderController extends BaseController { orderParam.setPkLoginSettleCountry(SecurityUtils.getPkCountry()); } - /** - * 验证手机号注册次数 - * - * @param cuMemberExtList 会员数量 - */ - private Boolean validatePhoneCount(List cuMemberExtList) { - // 判断次数,获取系统参数,从redis中获取系统参数 - String value = orderService.querySystemConfigByKey(cuMemberExtList.get(0).getPkSettleCountry(), ESystemConfig.REGISTER_NUMBER.getKey()); - return cuMemberExtList.size() < Integer.parseInt(value); - } - protected CuMemberAccount getCuMemberAccount(OrderParam orderParam) { CuMemberAccount cuMemberAccount = CuMemberAccount.builder().pkMember(orderParam.getCenterCodeId()).build(); cuMemberAccount.setPkCountry(orderParam.getPkLoginSettleCountry()); @@ -500,32 +130,6 @@ public abstract class ParentOrderController extends BaseController { return AjaxResult.success(cuMemberAccountExt); } - /** - * 验证升级关系,只能给自己或者自己安置伞下升级 - * - * @param orderParam 前台传递的参数 - */ - protected AjaxResult validateUpgradeRelation(OrderParam orderParam) { - CuMember upgradeMember = orderService.getCuMemberByCode(orderParam.getUpgradeMemberCode()); - if (upgradeMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_DOES_NOT_EXITS)); - } - if (null != orderParam.getCenterCodeId() && orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } else { - orderParam.setUpgradeMemberName(upgradeMember.getMemberName()); - } - - if (!orderParam.getCenterCodeId().equals(upgradeMember.getPkId())) { - // 可以给别人升级,只能是自己的安置伞下 - List cuMemberExtList = getOrderService().queryPlaceSponsorUnderUmbrella(orderParam.getCenterCodeId(), upgradeMember.getMemberCode()); - boolean flag = cuMemberExtList.stream().noneMatch(cuMemberExt -> cuMemberExt.getPkId().equals(upgradeMember.getPkId())); - if (flag) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_NOT_TEAM)); - } - } - return AjaxResult.success(orderParam); - } protected SaOrder getSaOrderQueryParam(OrderParam orderParam) { SaOrder saOrder = SaOrder.builder() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java deleted file mode 100644 index cab5d6cc..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiFanSaOrderController.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import cn.hutool.core.util.ObjectUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.member.base.IMemberServiceApi; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.*; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * 嗨粉订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiFanSaOrderController extends ParentOrderController { - - @DubboReference - IMemberServiceApi iMemberServiceApi; - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-fun-order") - @RepeatSubmit - public AjaxResult confirmHaiFunOrder(@Validated @RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - - /** - * 报单中心确认嗨粉订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 自注册 - */ - @PostMapping("/confirm-self-fun-order") - @RepeatSubmit - public AjaxResult confirmSelfFunOrder(@Validated @RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setIsHaiFun(true); - - CuMember cuMember = iMemberServiceApi.queryMember(orderParam.getCenterCodeId()).getData(); - if (cuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - - if (getOrderService().confirmSelfFunOrderByOrderParam(orderParam, cuMember)) { - return AjaxResult.success(orderParam); - } else { - return AjaxResult.error(); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java index cdddfe6d..d0f0eedd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOrderController.java @@ -46,11 +46,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 我的订单控制器 - * @Author: jiang chao - * @Time: 2023/1/13 15:53 - * @Classname: ApiOrderController - * @PackageName: com.hzs.sale.order.controller.api + * 我的订单控制器 */ @Slf4j @RestController @@ -683,7 +679,7 @@ public class ApiOrderController extends BaseController { myOrder.setRecCounty(recCounty); } myOrder.setAddress(saOrder.getRecAddress()); - myOrder.setOrderTypeVal(EOrderType.getEnumLabelByValue(myOrder.getOrderType())); + myOrder.setOrderTypeVal(EOrderType.getLabelByValue(myOrder.getOrderType())); // 处理订单明细 myOrderItemsList = new ArrayList<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java deleted file mode 100644 index c29ae7a9..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiOthSaOrderController.java +++ /dev/null @@ -1,172 +0,0 @@ -package com.hzs.sale.order.controller.api; - -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import com.hzs.common.core.constant.msg.SaOrderMsgConstants; -import com.hzs.common.core.enums.EOrderType; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.core.web.domain.AjaxResult; -import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.util.TransactionUtils; -import com.hzs.sale.order.controller.ParentOrderController; -import com.hzs.sale.order.param.OrderParam; -import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -/** - * 其他订单(升级、复购)订单 - */ -@RestController -@RequestMapping("/api/order") -@Slf4j -public class ApiOthSaOrderController extends ParentOrderController { - - @Autowired - private ISaOrderService orderService; - - /** - * @param orderParam 前台传递的参数 - */ - @PostMapping("/confirm-oth-order") - @RepeatSubmit - public AjaxResult confirmOtherOrder(@RequestBody OrderParam orderParam) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - initSecurityOrderParam(orderParam); - // 验证必输项 - if (!checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - if (orderParam.getSpecialArea() != EOrderType.REGISTER_ORDER.getValue()) { - convertShoppingCarToSku(orderParam); - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (StringUtils.isEmpty(orderParam.getUpgradeMemberCode())) { - orderParam.setUpgradeMemberCode(SecurityUtils.getMemberCode()); - } - // 验证复购的人是否在推荐人伞下 - AjaxResult result = validateUpgradeRelation(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - // 升级订单,校验是否满足升级条件 - orderParam.setUpgradeMemberCodeTmp(orderParam.getUpgradeMemberCode()); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (!orderReturn.getIsEnough()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } - } - if (!getOrderService().confirmRepurchaseSaOrder(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - ShoppingCartVO sop = new ShoppingCartVO(); - sop.setDeleteList(orderParam.getDeleteList()); - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), sop); - } - } - return AjaxResult.success(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/validate-upg-rel") - public AjaxResult validateUpgradeMemberCodeRelation(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - return validateUpgradeRelation(orderParam); - } - - /** - * @param orderParam 订单参数 - */ - @PostMapping("/query-special-deduct") - public AjaxResult querySpecialDeduct(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - return validateUpgradeRelation(orderParam); - } - - - /** - * 支付升级订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-oth-order") - @RepeatSubmit - public AjaxResult payOtherOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - if (orderParam.getOrderCode() == null || orderParam.getSpecialArea() == null || - StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - if (orderParam.getSpecialArea() == EOrderType.REGISTER_ORDER.getValue()) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - // 验证账户余额 - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - SaOrder saOrderQueryParam = getSaOrderQueryParam(orderParam); - SaOrderExt saOrderExt = getOrderService().querySaleOrderExtByOrderCode(saOrderQueryParam, null); - - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - if (oldOrderParam == null) { - oldOrderParam = orderParam; - oldOrderParam.setRecProvince(saOrderExt.getRecProvince()); - } - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - // 升级订单 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (getOrderService().payUpgradeSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } - } else { - // 复购订单 - if (getOrderService().payRepurchaseSaOrder(saOrderExt, cuMemberAccountExt)) { - return AjaxResult.success(saOrderExt); - } - } - } - - - if (cuMemberAccountExt.getErrorMsg() == null) { - cuMemberAccountExt.setErrorMsg(TransactionUtils.getContent(MemberMsgConstants.MEMBER_ACCOUNT_BALANCE_NOT_ENOUGH)); - } - - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index f3da318a..a37880d4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -1,10 +1,7 @@ package com.hzs.sale.order.controller.api; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.HttpStatus; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.constant.msg.SaOrderMsgConstants; import com.hzs.common.core.enums.EDelivery; @@ -21,18 +18,13 @@ import com.hzs.sale.order.controller.ParentOrderController; import com.hzs.sale.order.param.CuMemberAccountParam; import com.hzs.sale.order.param.OrderParam; import com.hzs.sale.order.param.OrderReturn; -import com.hzs.sale.order.service.ISaOrderService; -import com.hzs.sale.shopping.vo.ShoppingCartVO; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; -import java.util.concurrent.TimeUnit; /** * 订单控制类 @@ -43,142 +35,7 @@ import java.util.concurrent.TimeUnit; public class ApiRegSaOrderController extends ParentOrderController { @DubboReference - IGradeServiceApi gradeServiceApi; - @Autowired - private ISaOrderService orderService; - - /** - * 确认注册订单,生成待支付订单,只有注册订单有待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/confirm-reg-order") - @RepeatSubmit - public AjaxResult confirmRegisterOrder(@Validated @RequestBody OrderParam orderParam, - @RequestHeader("Source") Integer source) { - if (orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - initSecurityOrderParam(orderParam); - // 验证必输项 - if (source == null || validateFieldNotNull(orderParam, orderParam.getValidConfirmField()) || - !checkRecMsgBoolean(orderParam)) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - orderParam.setSource(source); - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - convertShoppingCarToSku(orderParam); - if (getOrderService().confirmRegSaOrderByOrderParam(orderParam)) { - //删除购物车下单的数据 - if (CollectionUtil.isNotEmpty(orderParam.getDeleteList())) { - shoppingCartService.batchDelShopping(SecurityUtils.getUserId(), ShoppingCartVO.builder() - .deleteList(orderParam.getDeleteList()) - .build()); - } - return AjaxResult.success(OrderReturn.builder().orderCode(orderParam.getOrderCode()).specialArea(orderParam.getSpecialArea()).build()); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NO_JURISDICTION)); - } - } - - /** - * 支付注册订单,生成支付订单或者更新待支付订单 - * - * @param orderParam 订单参数 - */ - @PostMapping("/pay-reg-order") - @RepeatSubmit - public AjaxResult payRegisterOrder(@RequestBody OrderParam orderParam) { - initSecurityOrderParam(orderParam); - // 判断是否是待支付,待支付的话验证订单编号是否存在 - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_TYPE_EMPTY)); - } - - boolean isToBePay = getOrderService().getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember newCuMember; - SaOrderExt saOrderExt; - boolean isHaiFun = false; - if (isToBePay) { - if (StringUtils.isEmpty(orderParam.getPayPwd())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_PASSWORD_EMPTY)); - } - if (StringUtils.isEmpty(orderParam.getOrderCode())) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_CODE_EMPTY)); - } - saOrderExt = getOrderService().querySaleOrderExtByOrderCode(getSaOrderQueryParam(orderParam), null); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_EMPTY)); - } - newCuMember = getOrderService().getCuMemberByKey(saOrderExt.getPkMember()); - } else { - String payPwd = orderParam.getPayPwd(); - orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - initSecurityOrderParam(orderParam); - orderParam.setPayPwd(payPwd); - // 验证必输项 - if (validateFieldNotNull(orderParam, orderParam.getValidSaveField())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REQUIRED_NOT_EMPTY)); - } - - AjaxResult result = validateSaveMember(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - String orderCode = orderParam.getOrderCode(); - newCuMember = getOrderService().packageCuMember(orderParam); - if (StringUtils.isNotEmpty(orderParam.getMemberCode())) { - newCuMember.setMemberCode(orderParam.getMemberCode()); - } - saOrderExt = getOrderService().packageSaOrder(orderParam, newCuMember); - if (saOrderExt == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.ORDER_MEMBER_CACHE)); - } - saOrderExt.setOrderCode(orderCode); - } - - // 查询报单会员账户信息 - AjaxResult result = validateMemberAccount(orderParam); - if ((Integer) result.get(AjaxResult.CODE_TAG) == HttpStatus.ERROR) { - return result; - } - OrderParam oldOrderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); - CuMemberAccountExt cuMemberAccountExt = (CuMemberAccountExt) result.get(AjaxResult.DATA_TAG); - // 对安置位置加锁 - if (validatePlacePosition(orderParam.getPlaceParentId(), orderParam.getPlaceDept())) { - // 验证余额状态 - // 验证会员账户余额是否足够支付 - getOrderService().queryOrderSpendDetails(cuMemberAccountExt, saOrderExt, saOrderExt.getOrderItemsList()); - saOrderExt.setSpecialArea(orderParam.getSpecialArea()); - if (cuMemberAccountExt.getIsPayment()) { - // 开始支付 扣款 - getOrderService().payRegSaOrder(saOrderExt, newCuMember, cuMemberAccountExt, isHaiFun); - } else { - if (StringUtils.isEmpty(cuMemberAccountExt.getErrorMsg())) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.MEMBER_BALANCE_NOT_PAY)); - } else { - return AjaxResult.error(cuMemberAccountExt.getErrorMsg()); - } - } - // 保存逻辑 保存订单、保存会员 - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PLACE_PARENT_DEPT_EXIST)); - } - OrderReturn orderReturn = OrderReturn.builder() - .memberCode(newCuMember.getMemberCode()) - .memberName(newCuMember.getMemberName()) - .phone(newCuMember.getPhone()) - .email(newCuMember.getEmail()) - .loginPassword(newCuMember.getLoginPassword()) - .payPassword(newCuMember.getPayPassword()) - .build(); - return AjaxResult.success(orderReturn); - } + IGradeServiceApi iGradeServiceApi; /** * 查询订单 @@ -224,7 +81,7 @@ public class ApiRegSaOrderController extends ParentOrderController { if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { CuMember parentCuMember = getOrderService().getCuMemberByKey(cuMember.getPkParent()); CuMember placeCuMember = getOrderService().getCuMemberByKey(cuMember.getPkPlaceParent()); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); orderReturn.setPhone(cuMember.getPhone()); orderReturn.setParent(parentCuMember.getMemberCode()); @@ -238,16 +95,12 @@ public class ApiRegSaOrderController extends ParentOrderController { } orderReturn.setPlaceDept(cuMember.getPlaceDept()); orderReturn.setSource(cuMember.getSource()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { - getOrderService().setLastCuMemberGrade(cuMember, saOrder); - GradeDTO gradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } } } else { orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); if (orderParam.getPkGrade() != null) { - GradeDTO gradeDTO = gradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); + GradeDTO gradeDTO = iGradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); orderReturn.setPkGrade(gradeDTO.getPkTransaction()); } orderReturn.setMemberCode(orderParam.getMemberCode()); @@ -288,8 +141,6 @@ public class ApiRegSaOrderController extends ParentOrderController { **/ @PostMapping("/self-order-postage") public AjaxResult selfOrderPostage(@RequestBody OrderParam orderParam) { - //提货订单邮费 - Integer pkCountry = SecurityUtils.getPkCountry(); // 验证必输项,一个条件未填写都不计算邮费 orderParam.setTransType(orderParam.getTranType()); if (checkRecPostageMsgBoolean(orderParam) && orderParam.getDeliveryWay() == EDelivery.FAST_MAIL.getValue()) { @@ -350,171 +201,4 @@ public class ApiRegSaOrderController extends ParentOrderController { return null; } - /** - * 验证手机号+姓名 - * - * @param orderParam 手机号、姓名 - */ - @Override - @PostMapping("/valid-phone") - public AjaxResult validatePhone(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePhone(orderParam); - } - - /** - * 验证推荐编号、推荐关系,成功后返回姓名,只有注册订单调用 - * - * @param orderParam 必须推荐人 - */ - @Override - @PostMapping("/valid-p-code") - public AjaxResult validateReferenceRelation(@RequestBody OrderParam orderParam) { - // 报单中心只能是登陆人 - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - initPkCountry(orderParam); - return super.validateReferenceRelation(orderParam); - } - - /** - * 验证安置编号,成功后返回姓名 - * - * @param orderParam 必须安置人 当传输的值中安置部门不为空时,校验安置位置 - */ - @Override - @PostMapping("/valid-p-p-code") - public AjaxResult validatePlaceParentMemberCode(@RequestBody OrderParam orderParam) { - initPkCountry(orderParam); - return super.validatePlaceParentMemberCode(orderParam); - } - - /** - * 空单注册 验证权限,验证编号是否有报单权限 - */ - @PostMapping("/valid-authority") - public AjaxResult validateRegisterAuthority() { - // 前台登录验证登录会员,后台空点验证输入的报单人 - return super.validateRegisterAuthority(SecurityUtils.getUserId(), null); - } - - /** - * 校验会员等级, 计算会员等级 - * - * @param orderParam 参数 - */ - @PostMapping("/valid-mem-level") - public AjaxResult validateMemberLevel(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null || orderParam.getDeleteList() == null || orderParam.getDeleteList().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - if (orderParam.getOrderItemsParams() == null || - orderParam.getOrderItemsParams().size() == 0) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SHOPPING_CAR)); - } - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - convertShoppingCarToSku(orderParam); - // 计算等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (orderParam.getUpgradeMemberCode() == null) { - orderParam.setCenterCodeId(SecurityUtils.getUserId()); - } else { - CuMember cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - orderParam.setCenterCodeId(cuMember.getPkId()); - } - } - initPkCountry(orderParam); - OrderReturn orderReturn = getOrderService().computeLevel(orderParam); - if (orderReturn.getIsEnough()) { - return AjaxResult.success(orderReturn); - } else { - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.LEVEL_NOT_ENOUGH)); - } else { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.REGISTER_LEVEL_NOT_ENOUGH)); - } - } - } - - /** - * 快速注册 - * - * @param orderParam 参数 - */ - @PostMapping("/quick-reg") - public AjaxResult quickRegistration(@RequestBody OrderParam orderParam) { - if (orderParam.getSpecialArea() == null) { - return AjaxResult.error(TransactionUtils.getContent(SaOrderMsgConstants.SPECIAL_AREA_NOT_EMPTY)); - } - - CuMember parentCuMember; - if (StringUtils.isEmpty(orderParam.getParent())) { - orderParam.setParentId(SecurityUtils.getUserId()); - parentCuMember = getOrderService().getCuMemberByKey(orderParam.getParentId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } else { - parentCuMember = getCuMemberByCode(orderParam.getParent()); - if (parentCuMember == null) { - return AjaxResult.error(TransactionUtils.getContent(MemberMsgConstants.PARENT_NOT_EXISTS)); - } - orderParam.setParentId(parentCuMember.getPkId()); - if (SecurityUtils.getUserId().equals(orderParam.getParentId())) { - // 如果是自己,则不需要处理昵称 - orderParam.setParentName(parentCuMember.getMemberName()); - } else { - orderParam.setParentName(parentCuMember.getMemberName()); - } - } - - CuMember cuMember = CuMember.builder() - .pkParent(orderParam.getParentId()) - .memberName(orderParam.getMemberName()) - .memberCode(orderParam.getMemberCode()) - .pkSettleCountry(SecurityUtils.getPkCountry()) - .build(); - boolean isFirst = getOrderService().validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - cuMember = getOrderService().obtainLastResettleByRecommend(cuMember, Boolean.TRUE, isFirst); - - String placeParentName; - if (null == cuMember.getPkPlaceParent()) { - if (SecurityUtils.getUserId().equals(parentCuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } else { - if (SecurityUtils.getUserId().equals(cuMember.getPkId())) { - placeParentName = cuMember.getMemberName(); - } else { - placeParentName = cuMember.getMemberName(); - } - } - - return AjaxResult.success(OrderReturn.builder() - .isFirst(isFirst) - .parentName(orderParam.getParentName()) - .placeParent(cuMember.getMemberCode()) - .placeParentName(placeParentName) - .placeDept(cuMember.getPlaceDept()).build()); - } - - @PostMapping("/update-default") - public AjaxResult setRegisterDefault(@RequestBody OrderParam orderParam) { - if (orderParam.getDisplayDefault() == null) { - orderParam.setDisplayDefault(0); - } - redisService.setCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId(), orderParam.getDisplayDefault(), CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.DAYS); - return AjaxResult.success(); - } - - @GetMapping("/query-default") - public AjaxResult setRegisterDefault() { - Integer displayDefault = redisService.getCacheObject(CacheConstants.MEMBER_DEFAULT_DISPLAY + SecurityUtils.getUserId()); - return AjaxResult.success(OrderReturn.builder().displayDefault(displayDefault == null ? 0 : displayDefault).build()); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java index 7f33d91f..e0f4be75 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderBusinessController.java @@ -47,7 +47,6 @@ import com.hzs.sale.product.IProductServiceApi; import com.hzs.sale.util.OrderUtil; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IServiceChargeServiceApi; import com.hzs.system.config.dto.ServiceChargeDTO; @@ -97,8 +96,6 @@ public class SaOrderBusinessController extends BaseController { IServiceChargeServiceApi iServiceChargeServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; - @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; private ISaDeliverItemsService saDeliverItemsService; @@ -134,8 +131,6 @@ public class SaOrderBusinessController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { // 获取行政区划map Map areaMap = iAreaServiceApi.getAreaMap(pkCountry).getData(); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); for (OrderBusinessVO orderBusinessVO : list) { // 省市区处理 @@ -151,16 +146,9 @@ public class SaOrderBusinessController extends BaseController { orderBusinessVO.setCancelTime(DateUtils.getStartTime(orderBusinessVO.getPayTime())); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } - } else { - // 日结 - if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { - orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); - } + // 日结 + if (null != orderBusinessVO.getPayTime() && DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), orderBusinessVO.getPayTime())) { + orderBusinessVO.setReturnFlag(EYesNo.YES.getIntValue()); } } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java index bf31667d..8eb0e63f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderChargeLogController.java @@ -100,11 +100,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); @@ -274,11 +274,11 @@ public class SaOrderChargeLogController extends BaseController { Map transactionMap = iTransactionCommonService.exportEnumTransaction(EApproveRechargeStatus.values(), EOrderStatus.values(), EPlaceDept.values(), ECustomerType.values(), EApprovalBusiness.values(), - EOrderType.values(), ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); + ETransportType.values(), EYesNo.values(), EShippingChannel.values(), EUnit.values(), ESignSource.values(), EOrderSource.values()); for (SaOrderChargeLogExt orderChargeLogExt : list) { // 订单类型 - orderChargeLogExt.setOrderTypeStr(transactionMap.get(EOrderType.getEnumByValue(orderChargeLogExt.getOrderType()).getKey())); + orderChargeLogExt.setOrderTypeStr(EOrderType.getLabelByValue(orderChargeLogExt.getOrderType())); // 撤单类型 if (orderChargeLogExt.getChargeType() != null) { orderChargeLogExt.setChargeTypeStr(transactionMap.get(EApprovalBusiness.getEnumByValue(orderChargeLogExt.getChargeType()).getKey())); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java index 044a559f..3f6e335f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/manager/SaOrderController.java @@ -603,7 +603,7 @@ public class SaOrderController extends ParentOrderController { // 获取管理员权限(角色地区范围、体系列表、团队列表) UserAuthorityDTO userAuthorityDTO = iUserServiceApi.getUserAuthority(SecurityUtils.getUserId()).getData(); - param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); + param.setAreaScopeList(userAuthorityDTO.getRoleAreaScopeList()); param.setVertexIdList(userAuthorityDTO.getVertexIdList()); param.setTeamList(userAuthorityDTO.getUserTeamList()); @@ -622,6 +622,12 @@ public class SaOrderController extends ParentOrderController { if (vo.getRecCounty() != null) { vo.setRecCountyName(areaMap.get(vo.getRecCounty())); } + // 订单类型枚举转换 + vo.setOrderTypeVal(EOrderType.getLabelByValue(vo.getOrderType())); + // 发货方式 + vo.setDeliveryWayVal(EDelivery.getLabelByValue(vo.getDeliveryWay())); + // 支付方式 + vo.setPayTypeVal(EOrderPayType.getLabelByValue(vo.getPayType())); } return getDataTable(resultList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java index f47c79d2..9faf6bfb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderItemsMapper.java @@ -14,15 +14,11 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * 销售订单-明细表 Mapper 接口 - * - * @author hzs - * @since 2022-08-31 */ public interface SaOrderItemsMapper extends BaseMapper { @@ -119,17 +115,11 @@ public interface SaOrderItemsMapper extends BaseMapper { * 更新订单明细表,将订单明细更改为删除 * * @param saOrder 订单 - * @return: Boolean - * @Author: sui q - * @Date: 2022/10/24 20:48 */ Integer updateOrderItems(SaOrder saOrder); /* - * @description: - * @author: sui q - * @date: 2023/7/27 16:16 - * @param: null null + * **/ void updateOrderItemsByMemberList(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); @@ -140,9 +130,6 @@ public interface SaOrderItemsMapper extends BaseMapper { * @param pkOrderItemsId 订单明细 * @param pkApprove 审核人 * @param currentDate 更新时间 - * @return: Boolean - * @Author: sui q - * @Date: 2023/3/28 11:25 */ Integer updateOrderItemsById(@Param("pkOrderItemsId") List pkOrderItemsId, @Param("pkApprove") Long pkApprove, @Param("currentDate") Date currentDate); @@ -155,22 +142,10 @@ public interface SaOrderItemsMapper extends BaseMapper { List queryListByOrderId(@Param("orderIdList") List orderIdList); /** - * @description: 根据订单ID查询订单商品明细列表 - * @author: zhang jing - * @date: 2023/5/29 15:38 - * @param: [orderIdList, tOrderIdList] - * @return: java.util.List + * 根据订单ID查询订单商品明细列表 **/ List waresListByOrderId(@Param("orderIdList") List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(@Param("orderId") Long orderId); - /** * 根据订单明细ID查询订单明细列表 @@ -206,11 +181,7 @@ public interface SaOrderItemsMapper extends BaseMapper { List selectByList(@Param("pkOrder") Long pkOrder); /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List + * 根据订单ID查询商品 **/ List getOrderItemsParams(@Param("orderIdList") List orderIdList); @@ -260,22 +231,6 @@ public interface SaOrderItemsMapper extends BaseMapper { */ List selectByWaresCodeList(@Param("orderCode") String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(@Param("pkMember") Long pkMember, - @Param("waresCodeList") List waresCodeList, - @Param("payTime") Date payTime, - @Param("orderTypeList") List orderTypeList, - @Param("systemType") Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java index f6a1ead5..e8da7c05 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderMapper.java @@ -33,26 +33,6 @@ public interface SaOrderMapper extends BaseMapper { **/ void updateSaOrderByMember(@Param("memberList") List memberList, @Param("pkApprove") Long pkApprove, @Param("currentDateTime") Date currentDateTime); - - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(@Param("startDate") Date startDate, @Param("endDate") Date endDate, - @Param("orderCode") String orderCode); - - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(@Param("deliverItemExtList") List deliverItemExtList); - /** * 查询总销售金额 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java index 9de5b9c0..a0f3ad2c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationItemsMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 + * Mapper 接口 */ public interface SaOrderRelationItemsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java index 5d3cf456..54794409 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderRelationMapper.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 Mapper 接口 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface SaOrderRelationMapper extends BaseMapper { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java index 77ce7f4b..5769b1f4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/mapper/SaOrderWaresLimitMapper.java @@ -1,55 +1,12 @@ package com.hzs.sale.order.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import org.apache.ibatis.annotations.Param; - -import java.util.Date; -import java.util.List; /** * 会员商品限购 Mapper 接口 - * - * @author hzs - * @since 2025-03-11 */ public interface SaOrderWaresLimitMapper extends BaseMapper { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(@Param("pkMember") Long pkMember, - @Param("orderType") Integer orderType, - @Param("limitDate") String limitDate, - @Param("waresCodeList") List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(@Param("dataList") List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(@Param("pkOrder") Long pkOrder, - @Param("pkMember") Long pkMember, - @Param("modifiedTime") Date modifiedTime, - @Param("waresCodeList") List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java new file mode 100644 index 00000000..28aea898 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderParam.java @@ -0,0 +1,68 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单入参 + */ +@Data +public class FansConfirmOrderParam { + + /*** + * 自然国 + */ + private Integer pkCountry; + + /** + * 会员姓名 + */ + private String memberName; + + /** + * 联系方式 + */ + private String phone; + + /** + * 收货人 + */ + private String recName; + + /** + * 收货电话 + */ + private String recPhone; + + /** + * 收货省 + */ + private Integer recProvince; + + /** + * 收货市 + */ + private Integer recCity; + + /** + * 收货县 + */ + private Integer recCounty; + + /** + * 收货地址 + */ + private String recAddress; + + /** + * 备注 + */ + private String remark; + + /** + * 商品列表 + */ + private List waresList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java new file mode 100644 index 00000000..b533710b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderSkuParam.java @@ -0,0 +1,21 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +/** + * 海粉确认订单产品入参 + */ +@Data +public class FansConfirmOrderSkuParam { + + /** + * SKU ID + */ + private Long pkWaresSku; + + /** + * 产品数量 + */ + private Integer quantity; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java new file mode 100644 index 00000000..e5cb4067 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/FansConfirmOrderWaresParam.java @@ -0,0 +1,28 @@ +package com.hzs.sale.order.param; + +import lombok.Data; + +import java.util.List; + +/** + * 海粉确认订单商品入参 + */ +@Data +public class FansConfirmOrderWaresParam { + + /** + * 商品ID + */ + private Integer pkWares; + + /** + * 商品数量 + */ + private Integer quantity; + + /** + * 产品列表 + */ + private List skuList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java index c368f5b8..8c5d8063 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderSelectParam.java @@ -5,11 +5,7 @@ import lombok.Data; import java.util.List; /** - * @Description: 订单选择参数 - * @Author: jiang chao - * @Time: 2023/3/10 14:12 - * @Classname: OrderSelectParam - * @PackageName: com.hzs.sale.order.param + * 订单选择参数 */ @Data public class OrderSelectParam { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java index 0dcf2b09..6748775d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderItemsServiceProvider.java @@ -16,11 +16,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 销售订单-明细表 - * @Author: zhangjing - * @Time: 2023/11/16 20:06 - * @Classname: SaOrderItemsServiceProvider - * @PackageName: com.hzs.sale.order.provider + * 销售订单-明细表 */ @Slf4j @DubboService @@ -29,13 +25,6 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { @Autowired private ISaOrderItemsService iSaOrderItemsService; - /** - * @description: 根据订单id查询订单商品列表 - * @author: zhang jing - * @date: 2023/11/16 9:23 - * @param: [orderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> waresListByOrderId(List orderIdList) { List dtoList = new ArrayList<>(); @@ -46,34 +35,9 @@ public class SaOrderItemsServiceProvider implements ISaOrderItemsServiceApi { return R.ok(dtoList); } - @Override - public R> waresListByOrderId(Long orderId) { - List dtoList = new ArrayList<>(); - List list = iSaOrderItemsService.queryWaresListByOrderId(orderId); - if (CollectionUtil.isNotEmpty(list)) { - list.forEach(itm -> dtoList.add(BeanUtil.copyProperties(itm, WaresOrderDTO.class))); - } - return R.ok(dtoList); - } - - /** - * @description: 根据订单ID查询订单明细列表 - * @author: zhang jing - * @date: 2023/11/16 9:34 - * @param: [orderIdList, tOrderIdList] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R> queryListByOrderId(List orderIdList, List tOrderIdList) { return R.ok(iSaOrderItemsService.queryListByOrderId(orderIdList)); } - @Override - public R orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry) { - if (iSaOrderItemsService.orderItemsReturn(orderItemsIdList, userId, pkCountry)) { - return R.ok(); - } - return R.fail(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index fb6c5bd2..361f141c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -5,10 +5,8 @@ import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.domain.sale.ext.SaDeliverItemsExt; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.sale.order.ISaOrderServiceApi; @@ -39,28 +37,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Autowired private ISaOrderService iSaOrderService; - @Override - public R> queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return R.ok(iSaOrderService.queryRetailSaOrderByDay(startDate, endDate, orderCode)); - } - - @Override - public R querySaOrderExtByPkId(Long pkId) { - return R.ok(iSaOrderService.querySaOrderExtByPkId(pkId)); - } - - @Override - public R> querySaOrderByDeliverList(List deliverItemExtList) { - return R.ok(iSaOrderService.querySaOrderByDeliverList(deliverItemExtList)); - } - - @Override - public R> queryOrderItemsListByOrderId(List pkOrderList, Integer pkCountry) { - OrderSelectParam param = new OrderSelectParam(); - param.setPkOrderList(pkOrderList); - return R.ok(iSaOrderService.queryOrderSelect(param, pkCountry)); - } - @Override @Transactional(rollbackFor = Exception.class) public R regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -89,11 +65,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { iSaOrderService.closeOrder(); } - @Override - public R queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - return R.ok(iSaOrderService.queryOrderTotalAchieveByTime(startDate, endDate)); - } - @Override public R> querySeqList(Integer param) { return R.ok(iSaOrderService.querySeqList(param)); @@ -157,7 +128,7 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { @Override public R queryOrderByCode(String orderCode, Long pkMember) { - SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.TEMP_ORDER + pkMember + orderCode); + SaOrderExt saOrder = redisService.getCacheObject(CacheConstants.RETAIL_TEMP_ORDER + pkMember + orderCode); if (null == saOrder) { // 直销订单 saOrder = iSaOrderService.queryOrderByCode(orderCode, null); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java index 256ec76a..32e3562f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/IOrderBusinessService.java @@ -42,14 +42,6 @@ public interface IOrderBusinessService { */ String checkOrderDeliver(List orderCodeList, Integer pkCountry); - /** - * 校验新零售盒数产品是否可以换货 - * - * @param param 请求入参 - * @return - */ - String checkOrderRetailProduct(OrderProductParam param); - /** * 本次业务修改费用 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java index f9177c35..51d59ae8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderItemsService.java @@ -14,7 +14,6 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.vo.WaresOrderVo; import org.apache.ibatis.annotations.Param; -import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -103,14 +102,6 @@ public interface ISaOrderItemsService extends IService { **/ List waresListByOrderId(List orderIdList); - /** - * 根据订单ID查询明细商品列表(不带删除标记) - * - * @param orderId 订单ID - * @return - */ - List queryWaresListByOrderId(Long orderId); - /** * 根据订单明细ID查询订单明细列表 * @@ -179,16 +170,6 @@ public interface ISaOrderItemsService extends IService { */ int updateToPayByPkOrder(List pkOrderList, Integer pkCountry, Long userId); - /** - * 订单明细退货 - * - * @param orderItemsIdList 订单明细ID列表 - * @param userId 操作人ID - * @param pkCountry 所属国家(可为空) - * @return - */ - boolean orderItemsReturn(List orderItemsIdList, Long userId, Integer pkCountry); - /** * 抵扣订单明细插入 * @@ -208,18 +189,6 @@ public interface ISaOrderItemsService extends IService { */ List selectByWaresCodeList(String orderCode); - /** - * 查询新零售购买指定商品数量(新) - * - * @param pkMember 会员ID - * @param waresCodeList 商品编号列表 - * @param payTime 支付时间 - * @param orderTypeList 订单类型列表 - * @param systemType 系统类型(可为null) - * @return - */ - BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType); - /** * 订单发货数量 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java index b723be42..fdfef547 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationItemsService.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelationItems; /** - *

- * 服务类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务类 */ public interface ISaOrderRelationItemsService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java index b336e5ef..f81fcba3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRelationService.java @@ -4,21 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaOrderRelation; /** - *

* 订单与虚拟订单关联表 服务类 - *

- * - * @author hzs - * @since 2023-03-17 */ public interface ISaOrderRelationService extends IService { - /** - * 根据订单编号查询订单关系,用于复购订单、福利订单支付页面,在线支付 - * @param orderCode 订单编号 - * @return: SaOrderRelation - * @Author: sui q - * @Date: 2023/3/17 17:49 - */ - SaOrderRelation querySaOrderRelationBySaOrder(String orderCode); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java index 775d54e6..13dbece2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderRevokeService.java @@ -4,21 +4,15 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.system.sys.dto.LoginUser; /** - * @Description: 撤单的service - * @Author: sui q - * @Time: 2022/10/27 10:49 - * @Classname: ISaOrderRevokeService - * @PackageName: com.hzs.sale.order.service + * 撤单的service */ public interface ISaOrderRevokeService { /** * 撤销订单 - * @param saOrder 需要销售的订单信息 + * + * @param saOrder 需要销售的订单信息 * @param loginUser 登录用户 - * @return: void - * @Author: sui q - * @Date: 2022/10/27 10:51 - */ + */ void revokeSaOrder(SaOrder saOrder, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index a5a46abe..45bff08f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; -import com.hzs.common.domain.member.ext.CuMemberExt; import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -13,7 +12,6 @@ import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.sale.index.vo.CuMemberMyMarketVO; import com.hzs.sale.order.param.*; import com.hzs.sale.order.vo.*; -import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import java.math.BigDecimal; @@ -25,43 +23,6 @@ import java.util.List; */ public interface ISaOrderService extends IService { - /** - * 验证手机号注册次数 - * 根据手机号查询出目前系统所有的会员 - * - * @param cuMember 会员的各种属性、手机号码必输 国家 - */ - List queryMemberExtByCondition(CuMember cuMember); - - /** - * 查找安置人伞上 - * - * @param placeParentId 安置人 - */ - List querySponsorOnUmbrella(Long placeParentId, String phone); - - /** - * 查找安置人伞下 - * - * @param memberId 会员编号 - */ - List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList); - - /** - * 查找安置人伞下 - * - * @param memberId 安置人,编号 - */ - List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent); - - /** - * 根据会员编号,查找该会员编号极左极下的那个人 - * - * @param memberId 会员编号 - * @param placeDept 1代表左区极左极下,2代表右区极左极下 - */ - CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept); - /** * 根据订单编号查询订单 * @@ -95,11 +56,6 @@ public interface ISaOrderService extends IService { */ Integer querySaleOrderByPkMember(Integer pkCountry, Long pkMember); - /* - * 查询网体是否存在推荐人 - **/ - Integer queryCuMemberByPkMember(Long pkReference); - /** * 跟会员端进行交互的查询订单的方法 * @@ -114,20 +70,6 @@ public interface ISaOrderService extends IService { */ CuMember getCuMemberByKey(Long pkId); - /** - * 根据key值从redis中获取到会员信息 - * - * @param code 会员编号 - */ - CuMember getCuMemberByCode(String code); - - /** - * 加锁,将键锁定 - * - * @param key 锁定的键 - */ - Boolean lockKey(String key); - /** * 查询会员账户状态,账户信息 * @@ -143,81 +85,6 @@ public interface ISaOrderService extends IService { */ CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); - - /** - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam 会员端的报单信息 - */ - Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam); - - /* - * 确认嗨粉订单根据参数 - **/ - Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember); - - /** - * 封装需要保存的销售订单和会员 - * - * @param orderParam 前台参数 - */ - CuMember packageCuMember(OrderParam orderParam); - - /* - * 这是会员等级 - **/ - Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); - - /** - * 点击支付按钮,输入密码,确认下单(注册订单) - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - * @param isHaiFun 是否嗨粉 - */ - Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun); - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 生成升级待支付订单 - * - * @param orderParam 参数信息 - */ - Boolean confirmRepurchaseSaOrder(OrderParam orderParam); - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt); - - /** - * 订单以及明细入库等处理 - * - * @param saOrderExt 订单(带明细) - */ - void processOrder(SaOrderExt saOrderExt); - /** * 是否直接支付 * @@ -241,13 +108,6 @@ public interface ISaOrderService extends IService { */ void queryPostageByParam(OrderParam orderParam); - /** - * 计算会员等级 - * - * @param orderParam 商品列表、专区 - */ - OrderReturn computeLevel(OrderParam orderParam); - /** * 根据订单编号执行订单撤销操作 * @@ -262,22 +122,6 @@ public interface ISaOrderService extends IService { **/ void selfRevokeOrder(Long pkApprove, MyOrderVO myOrderVO); - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade); - - /** - * 根据推荐人获取极左极下最末安置人 - * - * @param cuMember 会员 需要放(推荐人、国家、新用户姓名、新用户手机号) - * @param isFirstAchieve 是否验证首购业绩 - */ - CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst); - /** * 生成空单注册 * @@ -285,40 +129,6 @@ public interface ISaOrderService extends IService { */ String registerEmptyOrder(OrderBlankRegParams orderBlankRegParams); - /** - * 验证是否必须有首单 - * - * @param pkParent 推荐人主键 - * @param pkCountry 国家 - */ - boolean validateFirstOrder(Long pkParent, Integer pkCountry); - - /** - * 验证是否左区必须现有安置才能安置右区 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry); - - /** - * 查询时间范围内的所有订单,按照订单时间排序,只能用于奖金结算 - * - * @param startDate 开始日期 - * @param endDate 结束日期 - */ - List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode); - - /* - * 查询订单,存在可能已经撤单的 - **/ - SaOrder querySaOrderExtByPkId(Long pkId); - - /* - * 根据发货单查询销售订单 - **/ - List querySaOrderByDeliverList(List deliverItemExtList); - /** * 获取系统参数 * @@ -535,12 +345,6 @@ public interface ISaOrderService extends IService { */ List queryOrderType(Long memberId, Integer pkCountry); - /** - * 商品销量累计 - */ - void waresSalesAccrual(List waresNumberParamList); - - /** * 会员首页我的市场 * @@ -550,11 +354,6 @@ public interface ISaOrderService extends IService { */ CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry); - /* - * 根据时间端查询订单累计业绩累计金额 - **/ - SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate); - /** * 查询指定数量会员SEQ * @@ -607,25 +406,11 @@ public interface ISaOrderService extends IService { CuMemberAccountExt queryRetailOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList); /** - * 计算等级(根据盒数) + * 计算等级 * - * @param specialArea 商品专区 - * @param orderItemsParams 商品明细 - * @param gradeList 等级列表(可为空) - * @param updateGradeMember 升级会员信息(升级使用) - * @param systemType 系统类型 * @return 返回 null 则为不满足升级条件 */ - BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay); - - /** - * 处理最终等级(多送2级) - * @param gradeList - * @param pkGrade - * @return - */ - BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex); + BdGrade calculateGrade(); + boolean showDiscountArea(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java index fff476ed..807d6c8a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresLimitService.java @@ -1,48 +1,12 @@ package com.hzs.sale.order.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务类 - * - * @author hzs - * @since 2025-03-11 */ public interface ISaOrderWaresLimitService extends IService { - /** - * 查询会员已经购买的限购数据 - * - * @param pkMember 会员ID - * @param orderType 订单类型 - * @param limitDate 限购月份 - * @param waresCodeList 商品列表 - * @return - */ - List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList); - - /** - * 批量插入或更新会员商品限购 - * - * @param dataList 会员购买数据列表 - * @return - */ - int saveBatchLimit(List dataList); - - /** - * 撤单更新限购数量 - * - * @param pkOrder 订单ID - * @param pkMember 会员ID - * @param modifiedTime 订单修改时间 - * @param waresCodeList 商品列表 - * @return - */ - int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java index 85a7d103..20302130 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderWaresService.java @@ -5,9 +5,6 @@ import com.hzs.common.domain.sale.order.SaOrderWares; /** * 订单商品拆分 服务类 - * - * @author hzs - * @since 2024-12-13 */ public interface ISaOrderWaresService extends IService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java index 73b02276..51f39589 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/OrderBusinessServiceImpl.java @@ -6,7 +6,6 @@ import cn.hutool.json.JSONUtil; import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.bonus.settle.IMemberSettleBonusApi; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.*; @@ -26,7 +25,6 @@ import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderChargeLog; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.util.TransactionUtils; @@ -46,7 +44,6 @@ import com.hzs.sale.order.vo.OrderCancelRegisterMemberVO; import com.hzs.sale.order.vo.ValidateCancelOrderVO; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.pub.dto.OrderDeductionDTO; -import com.hzs.sale.wares.service.IBdWaresService; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; @@ -91,8 +88,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { private IBdProductService iBdProductService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdWaresService iBdWaresService; @DubboReference IServiceChargeServiceApi iServiceChargeServiceApi; @@ -111,8 +106,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { @DubboReference IAccountServiceApi iAccountServiceApi; @DubboReference - ISystemConfigServiceApi systemConfigServiceApi; - @DubboReference IAreaServiceApi iAreaServiceApi; @@ -151,34 +144,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - @Override - public String checkOrderRetailProduct(OrderProductParam param) { - // 盒数商品对应的产品列表 - List pkProductList = iBdWaresService.listBoxProduct(BoxProductUtil.getBoxWaresListBySystemType(null)); - // 换货产品列表 - List paramProductList = param.getItemList().stream().map(OrderProductDetailParam::getPkProduct).collect(Collectors.toList()); - - SaOrder saOrder = iSaOrderService.getOne(Wrappers.lambdaQuery() - .eq(SaOrder::getOrderCode, param.getOrderCode()) - ); - if (saOrder.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // 盒数商品订单,换货的产品是否都是盒数商品下的,如果是则可以进行更换,如果不是则不能更换 - for (Integer pkProduct : paramProductList) { - if (!pkProductList.contains(pkProduct)) { - return "盒数商品与普通商品不能互相换货"; - } - } - } else { - // 非盒数商品订单 - for (Integer pkProduct : paramProductList) { - if (pkProductList.contains(pkProduct)) { - return "普通商品与盒数商品不能互相换货"; - } - } - } - return null; - } - @Override public Map queryChargeLog(List saOrderList, EApprovalBusiness eApprovalBusiness, Integer pkCountry) { // key 订单编号, value 扣款实体 @@ -608,12 +573,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 操作日志内容 @@ -679,16 +644,14 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return "订单已经发货,不能进行调换货物"; } - // 是否扣款 - boolean orderCostFlag = false; + // 修改前的订单金额 + 邮费 BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 + // 校验订单原订单价格和调换完货之后的价格不相同不进行换货 if (beforeAmount.compareTo(afterAmount) != 0) { - // 修改前后金额不相同则进行处理 - orderCostFlag = true; + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -697,13 +660,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { changeIdList, noChangeIdList, userId, pkCountry, nowDate); - if (orderCostFlag) { - // 订单调换货物扣费处理 - R resultR = iMemberAccountServiceApi.orderChangeProduct(saOrder, updateOrder, userId, dto); - if (!resultR.isSuccess()) { - throw new BaseException(resultR.getMsg()); - } - } else if (null != dto) { + if (null != dto) { // 订单总价未变化,但是需要手续费 R resultR = iMemberAccountServiceApi.orderChangeProduct(null, null, userId, dto); if (!resultR.isSuccess()) { @@ -736,12 +693,12 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { // 查询订单收货地址信息 SaOrderExt saOrder = iSaOrderService.queryOrderByCode(orderCode, pkCountry); if (null == saOrder) { - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED) + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; + return CommonMsgConstants.OPERATION_FAILED + ":" + orderCode + SaOrderMsgConstants.ORDER_NOT_EXIST; } // 订单支付日期 < 当前日期-7天 Date beforeDate = DateUtils.addDate(DateUtils.getStartTime(nowDate), -7); if (beforeDate.compareTo(saOrder.getPayTime()) > 0) { - return TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_SETTLED); + return DocumentMsgConstants.DOCUMENT_ORDER_SETTLED; } // 涉及会员ID列表 @@ -786,24 +743,9 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { BigDecimal beforeAmount = saOrder.getOrderAmount().add(saOrder.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); // 修改后的订单金额 + 邮费 BigDecimal afterAmount = afterData.getOrderAmount().add(param.getPostage()).setScale(2, BigDecimal.ROUND_HALF_UP); - // 对比修改前后订单价格处理是否补差价 - if (beforeAmount.compareTo(afterAmount) < 0) { - // 存在差额 - // 封装订单数据 - SaOrder updateOrder = BeanUtil.copyProperties(saOrder, SaOrder.class); - updateOrder.setPkId(saOrder.getPkId()); - updateOrder.setOrderAmount(afterData.getOrderAmount()); - updateOrder.setOrderAchieve(afterData.getOrderAchieve()); - updateOrder.setOrderAssAchieve(afterData.getOrderAssAchieve()); - updateOrder.setPostage(param.getPostage()); - updateOrder.setPkModified(userId); - updateOrder.setModifiedTime(nowDate); - - // 校验订单支付金额是否足够 - R resultR = iMemberAccountServiceApi.orderChangeProductPre(saOrder, updateOrder); - if (!resultR.isSuccess()) { - return resultR.getMsg(); - } + //校验订单原订单价格和调换完货之后的价格不相同不进行换货 + if (beforeAmount.compareTo(afterAmount) != 0) { + return CommonMsgConstants.OPERATION_FAILED + ":" + param.getOrderCode() + SaOrderMsgConstants.PRODUCT_CONFIRM_PRICE; } if (iSaOrderChargeLogService.save(saOrderChargeLog)) { @@ -817,7 +759,7 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } return submitStr; } - return TransactionUtils.getContent(CommonMsgConstants.OPERATION_FAILED); + return CommonMsgConstants.OPERATION_FAILED; } @Transactional(rollbackFor = Exception.class) @@ -1111,19 +1053,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { SaOrder saOrder = saOrderList.get(0); - // 获得当前国家是日结还是周结 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(pkCountry, ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); // 控制是否显示退单 - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - // 周结 - if (!DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER); - } - } else { - // 日结 - if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { - return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); - } + // 日结 + if (!DateUtils.compareDateAfter(DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()), saOrder.getPayTime())) { + return TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER); } // 涉及会员ID列表 @@ -1303,19 +1236,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue()) || orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_PART_ORDER.getValue())) { // 验证订单时间,只能撤销7天以内的支付订单 - // 周结只能撤销当前期间的订单,不能撤销上个期间的订单 - String settleCycle = systemConfigServiceApi.getBonusSystemConfig(orderCancelParam.getPkCountry(), ESystemConfig.EXPAND_CAP_METHOD.getKey()).getData(); - if (Objects.equals(Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue()), settleCycle)) { - if (DateUtils.compareDateAfter(DateUtils.parseStringToDate(DateUtils.getRecentlyTuesday(DateUtils.currentDate())), saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.WEEK_CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } - } else { - Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); - if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); - return validateCancelOrderVO; - } + Date sevenDate = DateUtils.beforeDate(MagicNumberConstants.CANCEL_ORDER, ChronoUnit.DAYS, DateUtils.currentDate()); + if (DateUtils.compareDateAfter(sevenDate, saOrderExt.getPayTime())) { + validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.CANCEL_SEVEN_PAY_ORDER)); + return validateCancelOrderVO; } } // 验证订单国家跟会员国家是否一致,是否转换过结算国 @@ -1440,23 +1364,10 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { } } else if (orderCancelParam.getCancelType().equals(ECancelOrderType.OTHER_CANCEL_ORDER.getValue())) { // 其他撤单 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - validateCancelOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return validateCancelOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - validateCancelOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { // 2025.03.05 复购可以升级,需要必须从最后一单开始撤单 List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), + Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), null); if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { validateCancelOrderVO.setMsg("撤销复购订单,只能从最新的订单开始撤销,最新的订单编号:" + saOrderList.get(0).getOrderCode()); @@ -2286,13 +2197,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { saOrderItems.setPkWares(0); saOrderItems.setPkWaresDetail(0); saOrderItems.setPkWaresSpecsSku(0); - - // 2025.02.11 如果是盒数商品换货,需要更新成最新的盒数商品ID - List tmpList = iBdWaresService.listBoxProductAndWares(BoxProductUtil.getBoxWaresListBySystemType(null), saOrderItems.getPkProduct(), ESpecialArea.getRetailSpecialAreaValue(saOrder.getOrderType())); - if (CollectionUtil.isNotEmpty(tmpList)) { - saOrderItems.setPkWares(tmpList.get(0).getPkWares()); - } - createOrderItemsList.add(saOrderItems); } else { // 更新数据 @@ -2377,13 +2281,8 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return null; } - /** - * @description: 校验自助撤单 - * @author: zhang jing - * @date: 2023/11/21 15:23 - * @param: [orderCancelParam, businessCode] - * @return: com.hzs.sale.order.vo.ValidateCancelOrderVO + * 校验自助撤单 **/ @Override public MyOrderVO checkSelfOrder(Long userId, MyOrderVO myOrderVO) { @@ -2392,7 +2291,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() || - myOrderVO.getOrderType() == EOrderType.RETAIL_UPGRADE.getValue() || myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue()) { String lastOrderCode = iSaOrderService.lastOrderList(userId, myOrderVO.getPkCountry()); if (StringUtils.isEmpty(lastOrderCode) || !lastOrderCode.equals(myOrderVO.getOrderCode())) { @@ -2455,21 +2353,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { return myOrderVO; } } - // 升级撤单验证 - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 升级订单需要验证是否从最后一单升级订单撤销 - List saOrderList = iSaOrderService.querySaleOrderByPkMember(cuMember.getPkSettleCountry(), cuMember.getPkId(), - Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), - null); - if (!saOrderList.get(0).getOrderCode().equals(saOrderExt.getOrderCode())) { - myOrderVO.setMsg(TransactionUtils.getContent(SaOrderMsgConstants.MEMBER_CANCEL_UPGRADE_ORDER, saOrderList.get(0).getOrderCode())); - return myOrderVO; - } - if (saOrderList.size() > 1) { - // 存在空单,空单从cu_member_register获取 - myOrderVO.setUpdSaOrder(saOrderList.get(1)); - } - } myOrderVO.setSaOrderExt(saOrderExt); return myOrderVO; } @@ -2679,7 +2562,6 @@ public class OrderBusinessServiceImpl implements IOrderBusinessService { log.error("订单抵扣驳回处理失败:更新数据失败"); throw new BaseException(TransactionUtils.getContent(DocumentMsgConstants.DOCUMENT_ORDER_ERROR)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java index 9c223be3..4cb02bd4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderHandle.java @@ -64,13 +64,9 @@ import java.util.*; @Slf4j public class SaOrderHandle { - @DubboReference - IGradeServiceApi gradeServiceApi; @DubboReference ICurrencyServiceApi currencyServiceApi; @DubboReference - IMemberTeamServiceApi memberTeamServiceApi; - @DubboReference IAwardsServiceApi awardsServiceApi; @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @@ -143,87 +139,6 @@ public class SaOrderHandle { this.bdWaresSpecialPostageService = bdWaresSpecialPostageService; } - /** - * 生成用户 - * - * @param orderParam 需要保存的会员基本信息 - * @param centerMember 报单中心会员编号 - */ - CuMember packageSaveUser(OrderParam orderParam, CuMember centerMember) { - // 获取新的订单编号 - CuMember cuMember = CuMember.builder() - .memberCode(orderParam.getMemberCode()) - .memberName(orderParam.getMemberName()) - .pkSettleCountry(orderParam.getPkSettleCountry()) - .phone(orderParam.getPhone()) - .idCard(orderParam.getIdCard()) - .email(orderParam.getEmail()) - .loginPwd(SecurityUtils.encryptPassword(SysConstants.LOGIN_PASSWORD)) - .loginPassword(SysConstants.LOGIN_PASSWORD) - .payPwd(SecurityUtils.encryptPassword(SysConstants.PAY_PASSWORD)) - .payPassword(SysConstants.PAY_PASSWORD) - .source(orderParam.getSource() == null ? EDataSource.PC.getValue() : orderParam.getSource()) - .pkParent(orderParam.getParentId()) - .accountStatus(EAccountStatus.NORMAL.getValue()) - .pkCenterCode(orderParam.getCenterCodeId()) - // 这个时候是待支付,等支付的时候变为支付,可以跟待支付公用 - .payStatus(EPayStatus.UNPAID.getValue()) - .category(ECategory.NORMAL.getValue()) - .orderSource(EOrderSource.SOLID.getValue()) - .consumeMoney(BigDecimal.ZERO) - .consumeAchieve(BigDecimal.ZERO) - .registerAuthority(ERegistrationAuthority.ORDINARY.getValue()) - .build(); - // 海粉没有安置人安置位置 - if (orderParam.getIsHaiFun()) { - cuMember.setCustomerType(ECustomerType.FANS.getValue()); - if (null != orderParam.getPlaceParentId()) { - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - } - if (null != orderParam.getPlaceDept()) { - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - } else { - cuMember.setCustomerType(ECustomerType.NORMAL.getValue()); - cuMember.setPkPlaceParent(orderParam.getPlaceParentId()); - cuMember.setPlaceDept(orderParam.getPlaceDept()); - } - cuMember.setPkCountry(orderParam.getPkCountry()); - cuMember.setCreationTime(DateUtils.currentDateTime()); - cuMember.setPkCreator(centerMember.getPkId()); - if (centerMember.getPkTeamCode() == null) { - // 验证父级是不是团队 - CuMemberTeamExt memberTeamExt = memberTeamServiceApi.getCuMemberTeamById(centerMember.getPkId()).getData(); - if (memberTeamExt != null) { - cuMember.setPkTeamCode(memberTeamExt.getPkId()); - } - } else { - cuMember.setPkTeamCode(centerMember.getPkTeamCode()); - } - cuMember.setPkVertex(centerMember.getPkVertex()); - return cuMember; - } - - /** - * 封装订单 - * - * @param cuMember 会员 - * @param saOrder 订单主表 - * @param orderParam 订单商品信息 - */ - void packSaOrderItems(CuMember cuMember, SaOrderExt saOrder, OrderParam orderParam) { - orderParam.setPostage(BigDecimal.ZERO); - List saOrderItemsList; - try { - saOrderItemsList = getSaOrderItems(cuMember, saOrder, orderParam); - } catch (Exception e) { - e.printStackTrace(); - throw new RuntimeException(e); - } - saOrder.setPostage(orderParam.getPostage()); - saOrder.setOrderItemsList(saOrderItemsList); - } - /** * 查询邮费 * @@ -420,30 +335,6 @@ public class SaOrderHandle { } } - /** - * 计算订单价值(价格、业绩) - * - * @param orderParam 商品列表、专区 - * @return: void - * @Author: sui q - * @Date: 2022/9/24 14:38 - */ - SaOrder computeSaOrderAchieve(OrderParam orderParam) { - // 商品编号 + sku主键 + 数量 - List bdWaresDetailExtList = getWaresDetailExtList(orderParam, null); - SaOrder saOrder = SaOrder.builder().orderAmount(BigDecimal.ZERO) - .orderAchieve(BigDecimal.ZERO).build(); - bdWaresDetailExtList.forEach(waresDetailExt -> { - Integer num = waresDetailExt.getQuantity() * waresDetailExt.getWaresQuantity(); - BigDecimal amount = ComputeUtil.computeMultiply(waresDetailExt.getPrice(), num); - BigDecimal achievement = ComputeUtil.computeMultiply(waresDetailExt.getAchieve(), num); - saOrder.setOrderAmount(saOrder.getOrderAmount().add(amount)); - saOrder.setOrderAchieve(saOrder.getOrderAchieve().add(achievement)); - }); - // 获取订单业绩,根据订单业绩计算用户等级 - return saOrder; - } - /** * 将购买的商品明细封装为数据库中的商品明细 * @@ -480,8 +371,7 @@ public class SaOrderHandle { private void setWaresRange(Integer specialArea, List bdWaresDetailExtList, CuMember cuMember) { // 复购订单商品跟业绩需要单独处理 if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { Map> waresDetailExtMap = new HashMap<>(); List specsSkuList = new ArrayList<>(); bdWaresDetailExtList.forEach(bdWaresDetailExt -> { @@ -632,9 +522,6 @@ public class SaOrderHandle { * 实际重量 = 长*宽*高/6000 利用重量计费公式计算实际邮费 * 判断重量计费跟体积计费哪个大使用哪个计费方法 * 陆运、空运、海运(国内默认陆运) - * @return: BigDecimal - * @Author: sui q - * @Date: 2022/9/20 20:48 */ private BigDecimal computePostage(BdPostageDetail postageDetail, BigDecimal weight) { BigDecimal postage = postageDetail.getFirstPostage(); @@ -663,61 +550,6 @@ public class SaOrderHandle { return postage; } - /** - * 简单的封装订单基本信息 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - SaOrderExt packageSaveSaOrder(OrderParam orderParam, CuMember cuMember, String orderCode) { - SaOrderExt saOrderExt = new SaOrderExt(); - saOrderExt.setOrderCode(orderCode); - saOrderExt.setOrderAmount(BigDecimal.ZERO); - saOrderExt.setOrderAchieve(BigDecimal.ZERO); - saOrderExt.setOrderAssAchieve(BigDecimal.ZERO); - saOrderExt.setPkMember(cuMember.getPkId()); - saOrderExt.setOrderType(orderParam.getSpecialArea()); - saOrderExt.setPkReference(cuMember.getPkParent()); - saOrderExt.setPkPlacement(cuMember.getPkPlaceParent()); - saOrderExt.setRecName(orderParam.getRecName()); - saOrderExt.setRecPhone(orderParam.getRecPhone()); - saOrderExt.setRecProvince(orderParam.getRecProvince()); - if (CountryConstants.CHINA_COUNTRY.equals(cuMember.getPkSettleCountry()) || orderParam.getPkStorehouse() == null) { - if (orderParam.getRecProvince() != null) { - // 根据收货省获取仓库 - BdStorehouse bdStorehouse = currencyServiceApi.queryBdStorehouseByProvince(orderParam.getRecProvince()).getData(); - if (bdStorehouse != null) { - saOrderExt.setPkStorehouse(bdStorehouse.getPkId()); - } - } - } else { - saOrderExt.setPkStorehouse(orderParam.getPkStorehouse()); - } - saOrderExt.setRecCity(orderParam.getRecCity()); - saOrderExt.setRecCounty(orderParam.getRecCounty()); - saOrderExt.setRecAddress(orderParam.getRecAddress()); - saOrderExt.setRemark(orderParam.getRemark()); - saOrderExt.setTranType(orderParam.getTransType()); - saOrderExt.setDeliveryWay(orderParam.getDeliveryWay()); - // 如果发货方式为空,或者为0,则重置为快递发货 - if (null == saOrderExt.getDeliveryWay() || saOrderExt.getDeliveryWay().equals(0)) { - saOrderExt.setDeliveryWay(EDelivery.FAST_MAIL.getValue()); - } - // 订单状态先设置为待支付,支付的时候更新 - saOrderExt.setOrderStatus(EOrderStatus.WAIT_PAY.getValue()); - saOrderExt.setPkVertex(cuMember.getPkVertex()); - saOrderExt.setPkCreator(orderParam.getCenterCodeId()); - saOrderExt.setPkCountry(cuMember.getPkSettleCountry()); - saOrderExt.setPkMemberStore(orderParam.getPkMemberStore()); - if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - saOrderExt.setCreationTime(cuMember.getCreationTime()); - } else { - saOrderExt.setCreationTime(DateUtils.currentDateTime()); - } - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - /** * 获取订单子表 * @@ -771,52 +603,6 @@ public class SaOrderHandle { return saOrderItems; } - /** - * orderType 1 = 注册,注册不用找累计 2 升级需要 - * - * @param specialArea 专区 - * @param settleOrderAmount 订单金额 - * @param settleOrderPv 订单业绩 - * @param pkCountry 国家 - */ - GradeDTO getMemberGradeAndAwardByCountry(CuMember cuMember, Integer specialArea, BigDecimal settleOrderAmount, - BigDecimal settleOrderPv, Integer pkCountry, String upgradeWay) { - // 根据推荐人等级获取推荐等级 - List gradeList; - if (EOrderType.UPGRADE_ORDER.getValue() != specialArea && - cuMember != null && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { - gradeList = gradeServiceApi.queryHaiFunGradeConfigByCondition(pkCountry).getData(); - } else { - gradeList = gradeServiceApi.queryGradeConfigByCondition(pkCountry).getData(); - } - if (gradeList != null && gradeList.size() > 0) { - for (GradeDTO gradeDTO : gradeList) { - if (validateGradeByAchieve(settleOrderAmount, settleOrderPv, gradeDTO)) { - if (EUpgradeWay.COVER.getValue() != Integer.parseInt(upgradeWay)) { - gradeDTO.setStartValue(settleOrderPv); - } - return gradeDTO; - } - } - } - return null; - } - - private Boolean validateGradeByAchieve(BigDecimal settleOrderAmount, BigDecimal settleOrderPv, GradeDTO gradeDTO) { - BigDecimal compareValue; - if (null == gradeDTO.getCensusValue() || EStatisticalValue.ACHIEVEMENT.getValue() == gradeDTO.getCensusValue()) { - compareValue = settleOrderPv; - } else { - compareValue = settleOrderAmount; - } - BigDecimal startValue = gradeDTO.getStartValue(); - if (compareValue.compareTo(startValue) >= 0) { - return Boolean.TRUE; - } - return Boolean.FALSE; - } - /** * 订单支付按币种扣款 * @@ -906,14 +692,4 @@ public class SaOrderHandle { throw new RuntimeException(TransactionUtils.getContent(MemberMsgConstants.MEMBER_IS_OPERATION)); } - /** - * 根据等级主键查询等级 - * - * @param pkCountry 国家 - * @param pkGrade 等级 - */ - GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return gradeServiceApi.queryGradeConfigByCondition(pkCountry, pkGrade).getData(); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java index 51375c86..2a8acef8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderItemsServiceImpl.java @@ -1,9 +1,6 @@ package com.hzs.sale.order.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.domain.sale.ext.SaOrderItemsExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; @@ -18,9 +15,7 @@ import com.hzs.sale.order.param.WaresOrderParam; import com.hzs.sale.order.service.ISaOrderItemsService; import com.hzs.sale.order.vo.WaresOrderVo; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import java.math.BigDecimal; import java.util.*; /** @@ -79,11 +74,6 @@ public class SaOrderItemsServiceImpl extends ServiceImpl queryWaresListByOrderId(Long orderId) { - return baseMapper.queryWaresListByOrderId(orderId); - } - @Override public List queryListByItemId(List itemIdList, List statusList, Integer pkCountry) { return baseMapper.queryListByItemId(itemIdList, statusList, pkCountry); @@ -94,32 +84,16 @@ public class SaOrderItemsServiceImpl extends ServiceImpl selectByList(Long pkOrder) { return baseMapper.selectByList(pkOrder); } - /** - * @description: 根据订单ID查询商品 - * @author: zhang jing - * @date: 2023/4/21 18:02 - * @param: [canApplyOrderVO] - * @return: java.util.List - **/ @Override public List getOrderItemsParams(List orderIdList) { return baseMapper.getOrderItemsParams(orderIdList); @@ -145,52 +119,16 @@ public class SaOrderItemsServiceImpl extends ServiceImpl orderItemsIdList, Long userId, Integer pkCountry) { - // 验证订单是否存在,存在回写,不存在说明已经撤单,不需要管; - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - List saOrderItemsList = baseMapper.selectList(queryWrapper); - if (saOrderItemsList == null || saOrderItemsList.size() == 0) { - return Boolean.TRUE; - } - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(SaOrderItems::getPkId, orderItemsIdList); - // 订单状态不包含 待付款、已关闭 才能进行更新 - updateWrapper.notIn(SaOrderItems::getOrderStatus, EOrderStatus.WAIT_PAY.getValue(), EOrderStatus.CANCEL.getValue()); - if (null != pkCountry) { - updateWrapper.eq(SaOrderItems::getPkCountry, pkCountry); - } - updateWrapper.set(SaOrderItems::getOrderStatus, EOrderStatus.PAY.getValue()); - updateWrapper.set(SaOrderItems::getLogisticsCode, ""); - updateWrapper.set(SaOrderItems::getLogisticsCompany, ""); - updateWrapper.set(SaOrderItems::getPkModified, userId); - updateWrapper.set(SaOrderItems::getModifiedTime, new Date()); - return this.update(updateWrapper); - } - @Override public int copyDeductionItems(Long pkOrderOld, Long pkOrderNew, Long userId, Date nowDate) { return baseMapper.copyDeductionItems(pkOrderOld, pkOrderNew, userId, nowDate); } - /** - * 根据订单编号查询订单项 - * - * @param orderCode - * @return - */ @Override public List selectByWaresCodeList(String orderCode) { return baseMapper.selectByWaresCodeList(orderCode); } - @Override - public BigDecimal getRetailWaresQuantityNew(Long pkMember, List waresCodeList, Date payTime, List orderTypeList, Integer systemType) { - return baseMapper.getRetailWaresQuantityNew(pkMember, waresCodeList, payTime, orderTypeList, systemType); - } - @Override public int countOrderDeliver(List orderCodeList, Integer pkCountry) { return baseMapper.countOrderDeliver(orderCodeList, pkCountry); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java index ee0d7485..207866f9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationItemsServiceImpl.java @@ -7,12 +7,7 @@ import com.hzs.sale.order.service.ISaOrderRelationItemsService; import org.springframework.stereotype.Service; /** - *

- * 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 + * 服务实现类 */ @Service public class SaOrderRelationItemsServiceImpl extends ServiceImpl implements ISaOrderRelationItemsService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java index f71e24e7..0b26cdb7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRelationServiceImpl.java @@ -7,18 +7,9 @@ import com.hzs.sale.order.service.ISaOrderRelationService; import org.springframework.stereotype.Service; /** - *

* 订单与虚拟订单关联表 服务实现类 - *

- * - * @author hzs - * @since 2023-03-17 */ @Service public class SaOrderRelationServiceImpl extends ServiceImpl implements ISaOrderRelationService { - @Override - public SaOrderRelation querySaOrderRelationBySaOrder(String orderCode) { - return baseMapper.querySaOrderRelationBySaOrder(orderCode); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java index b3b219ed..1c4c8623 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderRevokeServiceImpl.java @@ -1,10 +1,8 @@ package com.hzs.sale.order.service.impl; import cn.hutool.json.JSONUtil; -import com.google.gson.JsonObject; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.domain.sale.order.SaOrder; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.order.service.ISaOrderRevokeService; import com.hzs.system.sys.IApprovalServiceApi; import com.hzs.system.sys.dto.ApprovalSubmitDTO; @@ -13,17 +11,13 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.stereotype.Service; /** - * @Description: 撤单逻辑类 - * @Author: sui q - * @Time: 2022/10/27 10:50 - * @Classname: SaOrderRevokeServiceImpl - * @PackageName: com.hzs.sale.order.service.impl + * 撤单逻辑类 */ @Service public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { @DubboReference - private IApprovalServiceApi approvalServiceApi; + IApprovalServiceApi iApprovalServiceApi; @Override public void revokeSaOrder(SaOrder saOrder, LoginUser loginUser) { @@ -32,6 +26,6 @@ public class SaOrderRevokeServiceImpl implements ISaOrderRevokeService { .businessCode(saOrder.getOrderCode()) .businessData(JSONUtil.toJsonStr(saOrder)) .build(); - approvalServiceApi.submit(approvalSubmitDTO, loginUser); + iApprovalServiceApi.submit(approvalSubmitDTO, loginUser); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 98f77dd8..78dc81b8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2,30 +2,25 @@ package com.hzs.sale.order.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.crypto.SecureUtil; import cn.hutool.json.JSONUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.service.IAcRetailPickService; -import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.constant.msg.MemberMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.exception.ServiceException; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.*; import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.domain.member.account.CuMemberAccount; import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.base.CuMemberRegister; import com.hzs.common.domain.member.business.UpPolicyCurrency; -import com.hzs.common.domain.member.detail.CuMemberLevel; import com.hzs.common.domain.member.detail.CuMemberServiceLog; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.member.ext.CuMemberExt; @@ -33,8 +28,6 @@ import com.hzs.common.domain.sale.ext.*; import com.hzs.common.domain.sale.order.*; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.system.base.BdCountry; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; -import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.domain.third.pay.ext.TOnlineRefundExt; import com.hzs.common.security.service.UserTokenService; @@ -46,9 +39,7 @@ import com.hzs.member.account.IMemberTradeServiceApi; import com.hzs.member.account.dto.BusinessCommissionDTO; import com.hzs.member.account.dto.CuMemberBankParam; import com.hzs.member.account.dto.MemberAmountDTO; -import com.hzs.member.achieve.IMemberAchieveServiceApi; import com.hzs.member.base.IMemberServiceApi; -import com.hzs.member.detail.ICuMemberDetailServiceApi; import com.hzs.member.detail.ICuMemberServiceLogServiceApi; import com.hzs.sale.deliver.service.ISaDeliverItemsService; import com.hzs.sale.index.vo.CuMemberMyMarketDetailVO; @@ -60,14 +51,12 @@ import com.hzs.sale.order.service.*; import com.hzs.sale.order.vo.*; import com.hzs.sale.product.service.IBdProductExtendService; import com.hzs.sale.wares.service.*; -import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICountryServiceApi; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.base.dto.CountryDTO; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.IAreaCurrencyServiceApi; -import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.AreaCurrencyDTO; import com.hzs.system.config.dto.GradeDTO; @@ -83,11 +72,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.math.RoundingMode; import java.time.temporal.ChronoUnit; import java.util.*; -import java.util.concurrent.TimeUnit; -import java.util.function.Function; import java.util.stream.Collectors; /** @@ -100,12 +86,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IMemberServiceApi memberServiceApi; @DubboReference - IGradeServiceApi gradeServiceApi; - @DubboReference - IAwardsServiceApi awardsServiceApi; - @DubboReference - IAreaServiceApi areaServiceApi; - @DubboReference IMemberBankServiceApi memberBankServiceApi; @DubboReference IMemberAccountServiceApi memberAccountServiceApi; @@ -118,23 +98,17 @@ public class SaOrderServiceImpl extends ServiceImpl impl @DubboReference IApprovalServiceApi approvalServiceApi; @DubboReference - IMemberAchieveServiceApi memberAchieveServiceApi; - @DubboReference ISystemConfigServiceApi systemConfigServiceApi; @DubboReference ICuMemberServiceLogServiceApi cuMemberServiceLogServiceApi; @DubboReference IMemberTradeServiceApi memberTradeServiceApi; @DubboReference - ICuMemberDetailServiceApi iCuMemberDetailServiceApi; - @DubboReference IGradeServiceApi iGradeServiceApi; @Autowired private IBdWaresService iBdWaresService; @Autowired - private IBdWaresExtendService iBdWaresExtendService; - @Autowired private SaOrderHandle saOrderHandle; @Autowired private ISaOrderItemsService saOrderItemsService; @@ -145,49 +119,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Autowired private RabbitTemplate rabbitTemplate; @Autowired - private ISaOrderRelationService saOrderRelationService; - @Autowired private IBdWaresSpecsRelationService waresSpecsRelationService; @Autowired - private ISaOrderRelationItemsService saOrderRelationItemsService; - @Autowired private ISaDeliverItemsService saDeliverItemsService; @Autowired private IAcRetailPickService iAcRetailPickService; - @Autowired - private ISaOrderWaresLimitService iSaOrderWaresLimitService; @Autowired private IOrderBusinessService orderBusinessService; @Autowired private ISaOrderChargeLogService saOrderChargeLogService; - @Autowired - private RedisService redisService; - - @Override - public List queryMemberExtByCondition(CuMember cuMember) { - return memberServiceApi.getMemberInfo(cuMember).getData(); - } - - @Override - public List querySponsorOnUmbrella(Long placeParentId, String phone) { - return memberServiceApi.querySponsorOnUmbrella(placeParentId, null, phone).getData(); - } - - @Override - public List selectPlaceSponsorUnderUmbrellaByCondition(Long memberId, List cuMemberExtList) { - return memberServiceApi.selectPlaceSponsorUnderUmbrellaByCondition(memberId, cuMemberExtList).getData(); - } - - @Override - public List queryPlaceSponsorUnderUmbrella(Long memberId, String placeParent) { - return memberServiceApi.queryPlaceSponsorUnderUmbrella(memberId, placeParent).getData(); - } - - @Override - public CuMemberExt queryPlaceSponsorLastLeft(Long memberId, Integer placeDept) { - return memberServiceApi.queryPlaceSponsorLastLeft(memberId, placeDept).getData(); - } @Override public SaOrder querySaleOrderByOrderCode(SaOrder saOrder) { @@ -248,11 +189,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.selectCount(queryWrapper); } - @Override - public Integer queryCuMemberByPkMember(Long pkReference) { - return memberServiceApi.queryCuMemberByPkMember(pkReference).getData(); - } - @Override public List querySaleOrderByCondition(OrderQueryParam orderQueryParam) { if (orderQueryParam.getEndTime() != null) { @@ -268,16 +204,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return memberServiceApi.getMemberById(pkId).getData(); } - @Override - public CuMember getCuMemberByCode(String code) { - return memberServiceApi.getMemberByCode(code).getData(); - } - - @Override - public Boolean lockKey(String key) { - return redisService.lockKeyOnce(key); - } - @Override public List queryMemberAccountByCondition(CuMemberAccount cuMemberAccount) { return memberAccountServiceApi.queryMemberAccountByCondition(cuMemberAccount).getData(); @@ -287,11 +213,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl public CuMemberAccountExt queryOrderSpendDetails(CuMemberAccountExt cuMemberAccount, SaOrder saOrder, List orderItemList) { BigDecimal payMoney = saOrder.getOrderAmount(); - // 海粉只有升级可以用奖金币,其他专区只能用现金币,验证会员等级,会员是海粉的话除现金账户,其他账户置为0 CuMember cuMember = getCuMemberByKey(saOrder.getPkMember()); - if (EOrderType.UPGRADE_ORDER.getValue() != saOrder.getOrderType() && - cuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, cuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, cuMember.getPkSettleCountry())) { + if (null != cuMember) { cuMemberAccount.setAccount1(BigDecimal.ZERO); cuMemberAccount.setAccount3(BigDecimal.ZERO); cuMemberAccount.setAccount4(BigDecimal.ZERO); @@ -357,12 +280,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 原始支付金额(订单金额 + 邮费) BigDecimal original = payMoney; - // 2024.05.30 与业务确认,政策币个人配置优先特殊配置 // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType() - || EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { + if (EOrderType.REGISTER_ORDER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -460,202 +381,15 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 会员端的报单信息 - * 点击确认订单按钮 - * 将会员端传递过来的保单信息封装为订单信息,待支付时直接入库,直接保存时先放入redis暂存,待支付时在保存入库 - * - * @param orderParam - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRegSaOrderByOrderParam(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - if (isToBePay) { - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - } else if (EOrderType.REGISTER_ORDER.getValue() == orderParam.getSpecialArea()) { - // 2023.10.16按最新需求,注册订单需要在支付前需要显示会员编号 - cuMember = memberServiceApi.createRegisterMemberCode(cuMember).getData(); - } - - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者海粉订单 - if (isToBePay && !orderParam.getIsHaiFun()) { - processOrder(saOrderExt); - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(cuMember); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("confirmRegSaOrderByOrderParam 保存会员失败."); - throw new ServiceException("保存会员失败."); - } - } else { - log.error("confirmRegSaOrderByOrderParam 保存会员失败. {}", saveResult.getMsg()); - throw new ServiceException("保存会员失败."); - } - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - @Override - public Boolean confirmSelfFunOrderByOrderParam(OrderParam orderParam, CuMember cuMember) { - // 获取会员编号、会员主键 - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 保存 用户、订单、订单明细 分布式事务 - // 启用待支付,或者嗨粉订单 - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - orderParam.setMemberCode(cuMember.getMemberCode()); - orderParam.setPkGrade(cuMember.getPkSettleGrade()); - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - return true; - } - - @Override - public SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember) { - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return null; - } - return saOrderExt; - } - - @Override - public CuMember packageCuMember(OrderParam orderParam) { - if (null != orderParam.getPkParent()) { - orderParam.setParentId(orderParam.getPkParent()); - } else { - if (StringUtils.isNotEmpty(orderParam.getParent())) { - CuMember parentMember = getCuMemberByCode(orderParam.getParent()); - if (parentMember != null) { - orderParam.setParentId(parentMember.getPkId()); - } - } - } - - if (StringUtils.isNotEmpty(orderParam.getPlaceParent())) { - CuMember placeMember = getCuMemberByCode(orderParam.getPlaceParent()); - if (placeMember != null) { - orderParam.setPlaceParentId(placeMember.getPkId()); - } - } - CuMember cuMember = saOrderHandle.packageSaveUser(orderParam, memberServiceApi.queryMember(orderParam.getCenterCodeId()).getData()); - // 获取会员编号、会员主键 - cuMember = memberServiceApi.createMemberIdAndCode(cuMember).getData(); - return cuMember; - } - - /** - * 设置会员最终的等级 - * - * @param cuMember 会员 - * @param saOrderExt 订单 - * @return boolean - */ - @Override - public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { - GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt); - if (gradeDTO == null) { - return true; - } - - // 验证推荐等级,判断什么级别可以推荐什么级别 - //跨国报单不验证推荐等级权限 - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 判断推荐范围,验证该推荐人是否有推荐的权限 - CuMember parentCuMember = getCuMemberByKey(cuMember.getPkParent()); - - if (parentCuMember.getPkSettleCountry() != null && cuMember.getPkSettleCountry() != null && Objects.equals(parentCuMember.getPkSettleCountry(), cuMember.getPkSettleCountry())) { - GradeDTO validateGradeDTO = queryGradeConfigByCondition(parentCuMember.getPkSettleCountry(), parentCuMember.getPkSettleGrade()); - // 获取推荐人可以推荐的等级 - GradeDTO tmpGradeDTO = gradeDTO; - if (validateGradeDTO == null || validateGradeDTO.getBdGradeScopeExtList() == null || - validateGradeDTO.getBdGradeScopeExtList().stream().noneMatch(bdGradeScope -> tmpGradeDTO.getPkId().equals(bdGradeScope.getPkScope()))) { - return true; - } - } - } - - // 2023.11.29 奖衔处理提出,必有默认,防止出现奖衔为0的情况 - Integer pkAwards = cuMember.getPkAwards(); - cuMember.setPkRegisterGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - cuMember.setPkSettleGradeValue(gradeDTO.getGradeValue()); - // 判断奖衔,原会员有奖衔的话判断哪个大,使用大的 - if (pkAwards != null && gradeDTO.getGradeValue() != null) { - BdAwards bdAwards = awardsServiceApi.getAwardsOne(pkAwards).getData(); - BdAwards newAwards = awardsServiceApi.getAwardsOne(gradeDTO.getPkAwards()).getData(); - if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - } else { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - // 等级对应的结算值 - cuMember.setConsumeMoney(saOrderExt.getOrderAmount()); - cuMember.setConsumeAchieve(gradeDTO.getStartValue()); - if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < gradeDTO.getRegisterAuthority()) { - cuMember.setRegisterAuthority(gradeDTO.getRegisterAuthority()); - } - return false; - } - - /** - * 保存订单信息 - * - * @param saOrderExt 订单 - */ - @Transactional(rollbackFor = Exception.class) - @Override - public void processOrder(SaOrderExt saOrderExt) { - // 待支付直接保存订单、会员 - // 保存订单 - save(saOrderExt); - // 将订单表主键封装为明细表主键 - List waresNumberParamList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkOrder(saOrderExt.getPkId()); - if (saOrderItems.getPkWares() != null && saOrderItems.getPkWares() != 0) { - // 换货或等,商品为0,则不需要处理 - waresNumberParamList.add(WaresNumberParam.builder().pkWares(saOrderItems.getPkWares()).number(saOrderItems.getWaresQuantity()).build()); - } - }); - // 更新销量 - // 过滤相同商品主键数据 - List waresNumberList = waresNumberParamList.stream().filter(DeduplicationUtil.distinctByKey(WaresNumberParam::getPkWares)).collect(Collectors.toList()); - waresSalesAccrual(waresNumberList); - // 保存订单明细 - saOrderItemsService.saveBatch(saOrderExt.getOrderItemsList()); - } - @Override public boolean getIsToBePayByOrderType(Integer pkCountry, Integer specialArea) { String confirmPay; if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_CONFIRM_PAY.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_CONFIRM_PAY.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { confirmPay = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_CONFIRM_PAY.getKey()); } else { @@ -677,16 +411,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (getIsToBePayByOrderType(pkCountry, specialArea)) { if (EOrderType.REGISTER_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); - } else if (EOrderType.UPGRADE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_ORDER_TIME.getKey()); } else if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REPURCHASE_ORDER_TIME.getKey()); } else if (EOrderType.CONSUME_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.CONSUME_ORDER_TIME.getKey()); - } else if (EOrderType.EXCHANGE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.EXCHANGE_ORDER_TIME.getKey()); - } else if (EOrderType.WELFARE_ORDER.getValue() == specialArea) { - timeType = querySystemConfigByKey(pkCountry, ESystemConfig.WELFARE_ORDER_TIME.getKey()); } else if (EOrderType.MALL_ORDER.getValue() == specialArea) { timeType = querySystemConfigByKey(pkCountry, ESystemConfig.REGISTER_ORDER_TIME.getKey()); } else { @@ -703,427 +431,16 @@ public class SaOrderServiceImpl extends ServiceImpl impl return timeSecond; } - /** - * 点击支付按钮,输入密码,确认下单 - * - * @param saOrderExt 订单 - * @param newCuMember 新会员信息 - * @param cuMemberAccountExt 支付账户信息 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRegSaOrder(SaOrderExt saOrderExt, CuMember newCuMember, - CuMemberAccountExt cuMemberAccountExt, Boolean isHaiFun) { - boolean isToBePay = getIsToBePayByOrderType(newCuMember.getPkSettleCountry(), saOrderExt.getOrderType()); - Date currentDateTime = DateUtils.currentDateTime(); - Long pkCreator = saOrderExt.getPkCreator(); - newCuMember.setPayStatus(EPayStatus.PAID.getValue()); - newCuMember.setPayTime(currentDateTime); - saOrderExt.setPayTime(currentDateTime); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - if (isToBePay && !isHaiFun) { - // 根据业绩判断自动上树 - newCuMember.setPkModified(pkCreator); - newCuMember.setModifiedTime(currentDateTime); - saOrderExt.setPkModified(pkCreator); - saOrderExt.setModifiedTime(currentDateTime); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setPkModified(pkCreator); - saOrderItems.setModifiedTime(currentDateTime); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 更新订单信息 - updateSaOrder(saOrderExt); - } else { - newCuMember.setConsumeMoney(BigDecimal.ZERO); - newCuMember.setConsumeAchieve(BigDecimal.ZERO); - if (setLastCuMemberGrade(newCuMember, saOrderExt)) { - return false; - } - if (isHaiFun) { - if (null == newCuMember.getPkPlaceParent() - || null == newCuMember.getPlaceDept()) { - // 2024.01.13 当安置人和安置部门为空时,则进行重新上树 - CuMember cuMember = repeatTry(newCuMember, Boolean.FALSE); - newCuMember.setPkPlaceParent(cuMember.getPkPlaceParent()); - newCuMember.setPlaceDept(cuMember.getPlaceDept()); - } - isToBePay = false; - } - newCuMember.setCreationTime(currentDateTime); - saOrderExt.setCreationTime(currentDateTime); - - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - saOrderItems.setCreationTime(saOrderExt.getCreationTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - } - - // 保存订单信息 - processOrder(saOrderExt); - } - - // 2024.05.29 会员续约需求,【有效期】为购买时间次年的上月最后一天 - newCuMember.setExpireDate(DateUtils.beforeMonthLastDate(DateUtils.addYears(currentDateTime, 1))); - // 【休止期】普通会员6个月,奖衔会员12个月(先按6个月来,后续MQ会统一处理同姓名同手机号会员) - newCuMember.setStopDate(DateUtils.addMonths(newCuMember.getExpireDate(), 6)); - - // 调用其他服务保存会员信息、会员注册信息 - R saveResult = memberServiceApi.saveMember(newCuMember, saOrderExt, isToBePay, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRegSaOrder 保存会员失败!."); - throw new ServiceException("保存会员失败!."); - } - } else { - log.error("payRegSaOrder 保存会员失败!.,{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!."); - } - - try { - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - - if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - log.error("payRegSaOrder 发送短信或推送MQ失败,", e); - } - return Boolean.TRUE; - } - - /** - * 尝试重新换位置 - * - * @param newCuMember 修改的会员 - */ - private synchronized CuMember repeatTry(CuMember newCuMember, Boolean isFirstAchieve) { - CuMember cuMember = obtainLastResettleByRecommend(newCuMember, isFirstAchieve, null); - if (!lockKey(CacheConstants.POSITION + cuMember.getPkPlaceParent() + cuMember.getPlaceDept())) { - try { - Thread.sleep(300); - repeatTry(newCuMember, isFirstAchieve); - } catch (Exception e) { - e.printStackTrace(); - } - } - return cuMember; - } - - private void updateSaOrder(SaOrderExt saOrderExt) { - redisService.lockKeyMany(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - try { - updateById(saOrderExt); - saOrderItemsService.updateBatchById(saOrderExt.getOrderItemsList()); - } finally { - redisService.unlock(CacheConstants.MEMBER_ORDER + saOrderExt.getOrderCode()); - } - } - - /** - * @param saOrderExt 销售订单 - * @Description: 销售订单更改状态为待支付 - * @return: void - * @Author: sui q - * @Date: 2022/10/24 21:35 - */ - public void encapsulationSaOrder(SaOrderExt saOrderExt) { - saOrderExt.setPayTime(new Date()); - saOrderExt.setPkModified(saOrderExt.getPkCreator()); - saOrderExt.setModifiedTime(saOrderExt.getPayTime()); - saOrderExt.setOrderStatus(EOrderStatus.PAY.getValue()); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderItems.setPkModified(saOrderExt.getPkCreator()); - saOrderItems.setModifiedTime(saOrderExt.getPayTime()); - saOrderItems.setOrderStatus(EOrderStatus.PAY.getValue()); - }); - } - - /** - * 支付升级订单 - * - * @param saOrderExt 订单信息 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payUpgradeSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - GradeDTO oldGradeDTO = gradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - // 封装等级,重新计算会员等级 - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - String upgradeWay = querySystemConfigByKey(saOrderExt.getPkCountry(), ESystemConfig.UPGRADE_WAY.getKey()); - if (oldGradeDTO.getGradeValue() >= cuMember.getPkSettleGradeValue() && !Objects.equals(Integer.toString(EUpgradeWay.TOTAL.getValue()), upgradeWay)) { - return false; - } - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - // 处理会员信息,更新会员等级,扣款 - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payUpgradeSaOrder 保存会员失败!!!"); - throw new ServiceException("保存会员失败!!!"); - } - } else { - log.error("payUpgradeSaOrder 保存会员失败!!!{}", saveResult.getMsg()); - throw new ServiceException("保存会员失败!!!"); - } - try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - rabbitTemplate.convertAndSend(RabbitMqConstants.ACTIVITY_EXCHANGE, RabbitMqConstants.ACTIVITY_KEY, saOrderExt); - - if (EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { - // 2024.06.07 进行修改,首购统一推送消息,后面根据业务不同进行分队列消费 - rabbitTemplate.convertAndSend(RabbitMqConstants.MEMBER_FIRST_EXCHANGE, RabbitMqConstants.MEMBER_FIRST_KEY, saOrderExt); - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean confirmRepurchaseSaOrder(OrderParam orderParam) { - boolean isToBePay = getIsToBePayByOrderType(orderParam.getPkSettleCountry(), orderParam.getSpecialArea()); - CuMember cuMember; - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.REPURCHASE_ORDER.getValue() == orderParam.getSpecialArea() - || EOrderType.WELFARE_ORDER.getValue() == orderParam.getSpecialArea()) { - cuMember = getCuMemberByCode(orderParam.getUpgradeMemberCode()); - } else { - cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); - } - SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (saOrderExt.getOrderItemsList().size() == 0) { - return false; - } - - // 升级订单验证等级 - if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (setLastCuMemberGrade(cuMember, saOrderExt)) { - return false; - } - } - - if (isToBePay) { - processOrder(saOrderExt); - } else { - redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); - } - redisService.setCacheObject(CacheConstants.TEMP_PARAM + orderParam.getCenterCodeId() + orderParam.getOrderCode(), orderParam, CacheConstants.WARES_REFRESH_TIME, TimeUnit.DAYS); - return true; - } - - /** - * @param orderAmount 订单金额 - * @param postage 邮费 - * @param saOrderExtList 订单列表 - * @Description: 复购订单、福利订单插入 订单跟虚拟订单关系 - * @return: void - * @Author: sui q - * @Date: 2023/3/17 17:46 - */ - private void saveSaOrderRelation(BigDecimal orderAmount, BigDecimal postage, List saOrderExtList) { - if (saOrderExtList.size() > 0) { - SaOrderExt saOrderExt = saOrderExtList.get(0); - SaOrderRelation saOrderRelation = SaOrderRelation.builder() - .orderCode(saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue())) - .orderType(saOrderExt.getOrderType()) - .pkRate(saOrderExt.getPkRate()) - .orderAmount(orderAmount) - .postage(postage) - .build(); - saOrderRelation.setPkCreator(saOrderExt.getPkCreator()); - saOrderRelation.setPkCountry(saOrderExt.getPkCountry()); - saOrderRelationService.save(saOrderRelation); - List saOrderRelationItemsList = new ArrayList<>(); - for (SaOrderExt saOrder : saOrderExtList) { - SaOrderRelationItems saOrderRelationItems = SaOrderRelationItems.builder() - .pkOrder(saOrder.getPkId()) - .build(); - saOrderRelationItems.setPkCountry(saOrder.getPkCountry()); - saOrderRelationItems.setPkCreator(saOrder.getPkCreator()); - saOrderRelationItemsList.add(saOrderRelationItems); - } - saOrderRelationItemsService.saveBatch(saOrderRelationItemsList); - } - } - - /** - * 支付复购订单 - * - * @param saOrderExt 订单 - * @param cuMemberAccountExt 会员账户 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean payRepurchaseSaOrder(SaOrderExt saOrderExt, CuMemberAccountExt cuMemberAccountExt) { - // 保存订单 - encapsulationSaOrder(saOrderExt); - - // 更新订单信息 - updateSaOrder(saOrderExt); - - // 处理会员信息,更新会员等级,扣款 - CuMember member = getCuMemberByKey(saOrderExt.getPkMember()); - CuMember cuMember = calculateHaFunMemberGrade(saOrderExt, member); - - R saveResult = memberServiceApi.saveMember(cuMember, saOrderExt, cuMemberAccountExt); - if (saveResult.isSuccess()) { - if (!saveResult.getData()) { - log.error("payRepurchaseSaOrder 保存订单失败!"); - throw new ServiceException("保存订单失败!"); - } - } else { - log.error("payRepurchaseSaOrder 保存订单失败! {}", saveResult.getMsg()); - throw new ServiceException("保存订单失败!"); - } - - try { - // 推送秒结数据 - rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - - /** - * 封装整个订单 - * - * @param orderParam 参数 - * @param cuMember 会员 - */ - private SaOrderExt packageWholeSaOrder(OrderParam orderParam, CuMember cuMember) { - // 获取订单编号 - String orderCode = orderParam.getOrderCode(); - if (StringUtils.isEmpty(orderCode)) { - orderCode = saOrderHandle.createOrderCode(EOrderPrefix.ORDER_CODE.getValue()); - } - SaOrderExt saOrderExt = saOrderHandle.packageSaveSaOrder(orderParam, cuMember, orderCode); - // 封装订单明细(2024.02.02添加处理订单扩展类型) - saOrderHandle.packSaOrderItems(cuMember, saOrderExt, orderParam); - // 第二次封装订单,根据明细表计算订单主表金额、业绩,处理明细仓库 - // key为产品id - List productIdList = new ArrayList<>(); - saOrderExt.getOrderItemsList().forEach(saOrderItems -> { - saOrderExt.setPkRate(saOrderItems.getPkRate()); - if (EYesNo.YES.getIntValue() == saOrderItems.getIsGift()) { - return; - } - // 总价; - saOrderExt.setOrderAmount(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAmount(), saOrderItems.getPrice(), saOrderItems.getQuantity())); - // 总业绩 - saOrderExt.setOrderAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAchieve(), saOrderItems.getAchievement(), saOrderItems.getQuantity())); - // 总考核业绩 - saOrderExt.setOrderAssAchieve(ComputeUtil.computeAddMultiply(saOrderExt.getOrderAssAchieve(), saOrderItems.getAssAchievement(), saOrderItems.getQuantity())); - productIdList.add(saOrderItems.getPkProduct()); - }); - - if (CountryConstants.CHINA_COUNTRY.equals(saOrderExt.getPkCountry())) { - // 中国金额四舍五入保留2位小数 - saOrderExt.setOrderAmount(saOrderExt.getOrderAmount().setScale(2, RoundingMode.HALF_UP)); - } - - if (productIdList.size() > 0 && saOrderExt.getRecProvince() != null) { - // 根据产品,先查看是否由仓库,有仓库的话修改仓库 - List bdProductStorehouseList = areaServiceApi.queryBdProductStorehouseByCondition(productIdList, saOrderExt.getRecProvince()).getData(); - Map bdProductStorehouseMap = new HashMap<>(); - if (CollectionUtil.isNotEmpty(bdProductStorehouseList)) { - bdProductStorehouseList.forEach(bdProductStorehouse -> bdProductStorehouseMap.put(bdProductStorehouse.getPkProduct(), bdProductStorehouse)); - for (SaOrderItems saOrderItems : saOrderExt.getOrderItemsList()) { - if (bdProductStorehouseMap.containsKey(saOrderItems.getPkProduct())) { - BdProductStorehouseExt bdProductStorehouseExt = bdProductStorehouseMap.get(saOrderItems.getPkProduct()); - saOrderItems.setPkStorehouse(bdProductStorehouseExt.getPkStorehouse().intValue()); - } - } - } - } - saOrderExt.setUploadAchieve(saOrderExt.getOrderAchieve()); - orderParam.setOrderCode(orderCode); - return saOrderExt; - } - - @Override public void queryPostageByParam(OrderParam orderParam) { CuMember cuMember = getCuMemberByKey(orderParam.getCenterCodeId()); saOrderHandle.queryPostage(cuMember, orderParam); } - @Override - public OrderReturn computeLevel(OrderParam orderParam) { - // 新订单的 - SaOrder saOrder = saOrderHandle.computeSaOrderAchieve(orderParam); - OrderReturn orderReturn = OrderReturn.builder().isEnough(false).build(); - GradeDTO gradeDTO = calculateGradeDTO(orderParam.getSpecialArea(), orderParam.getPkSettleCountry(), - orderParam.getCenterCodeId(), saOrder); - // 注册订单、嗨粉订单直接查询出会员等级 - if (orderParam.getSpecialArea().equals(EOrderType.REGISTER_ORDER.getValue())) { - orderReturn.setIsEnough(Boolean.TRUE); - } - if (orderParam.getIsEnough() != null && orderParam.getIsEnough()) { - orderReturn.setIsEnough(Boolean.TRUE); - CuMember member = getCuMemberByKey(orderParam.getCenterCodeId()); - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(grade.getPkTransaction()); - return orderReturn; - } - // 验证等级是否满足条件 - if (!orderReturn.getIsEnough()) { - CuMember member; - if (null != orderParam.getUpgradeMemberCodeTmp()) { - member = getCuMemberByCode(orderParam.getUpgradeMemberCodeTmp()); - } else { - member = getCuMemberByKey(orderParam.getCenterCodeId()); - } - GradeDTO grade = gradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); - if (grade.getGradeValue() < gradeDTO.getGradeValue()) { - orderReturn.setIsEnough(Boolean.TRUE); - } else { - gradeDTO.setGradeName(null); - } - } - if (gradeDTO == null) { - gradeDTO = GradeDTO.builder().gradeName(null).build(); - orderReturn.setIsEnough(Boolean.FALSE); - } - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); - return orderReturn; - } - - private GradeDTO calculateGradeDTO(Integer specialArea, Integer pkCountry, Long pkMember, SaOrder saOrder) { - BigDecimal orderAmount = saOrder.getOrderAmount(); - BigDecimal orderAchieve = saOrder.getOrderAchieve(); - // 判断专区 升级需要判断哪个国家,每个国家升级方式不一样 - String upgradeWay = querySystemConfigByKey(pkCountry, ESystemConfig.UPGRADE_WAY.getKey()); - // 会员等级为1的话 为一次性补差升级; - CuMember cuMember = getCuMemberByKey(pkMember); - if (specialArea.equals(EOrderType.UPGRADE_ORDER.getValue())) { - //补差升级,当天的按照累计升级,非当天按照补差升级 - upgradeWay = Integer.toString(EUpgradeWay.DIFFERENCE.getValue()); - } - return saOrderHandle.getMemberGradeAndAwardByCountry(cuMember, specialArea, orderAmount, orderAchieve, pkCountry, upgradeWay); - } - /** * 生成空单注册 * * @param orderBlankRegParams 参数 - * @return: String - * @Date: 2022/11/14 15:10 */ @Override @Transactional(rollbackFor = Exception.class) @@ -1346,6 +663,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Transactional(rollbackFor = Exception.class) public void revokeSaOrderByOrderCode(Long pkApprove, OrderCancelParam orderCancelParam, ValidateCancelOrderVO validateCancelOrderVO) { SaOrderExt saOrderExt = validateCancelOrderVO.getSaOrderExt(); + CuMemberExt memberExt = memberServiceApi.getMemberById(saOrderExt.getPkMember()).getData(); BusinessCommissionDTO businessCommissionDTO = null; if (orderCancelParam.getCancelRoad() == 1) { EApprovalBusiness approveBusiness = EApprovalBusiness.ORDER_CANCEL; @@ -1434,7 +752,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl } // 撤销注册订单 单点撤单 - if (ECancelOrderType.SINGLE_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType()) { + if (ECancelOrderType.SINGLE_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType() + ||(ObjectUtil.isNotEmpty(memberExt) && ECancelOrderType.OTHER_CANCEL_ORDER.getValue() == orderCancelParam.getCancelType() && saOrderExt.getPayTime().equals(memberExt.getPayTime())) + ) { // 单点撤单,变死点 R tmpR = memberServiceApi.singleRevokeMemberByRegisterOrder(pkApprove, saOrderExt, businessCommissionDTO); if (!tmpR.isSuccess()) { @@ -1500,71 +820,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - - @Override - public GradeDTO queryGradeConfigByCondition(Integer pkCountry, Integer pkGrade) { - return saOrderHandle.queryGradeConfigByCondition(pkCountry, pkGrade); - } - - @Override - public CuMember obtainLastResettleByRecommend(CuMember cuMember, Boolean isFirstAchieve, Boolean isFirst) { - // 验证是否首单 - if (isFirst == null) { - isFirst = validateFirstOrder(cuMember.getPkParent(), cuMember.getPkSettleCountry()); - } - cuMember = memberAchieveServiceApi.queryCuMemberAchieveByPkMember(cuMember, isFirst, isFirstAchieve).getData(); - // 验证是否推荐过人,没有推荐只能放入极左极下 - return cuMember; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkParent 推荐人 - * @param pkCountry 国家 - */ - @Override - public boolean validateFirstOrder(Long pkParent, Integer pkCountry) { - String validateFirstOrder = querySystemConfigByKey(pkCountry, ESystemConfig.FIRST_ORDER.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateFirstOrder)) { - Integer count = queryCuMemberByPkMember(pkParent); - return count == 0; - } - return false; - } - - /** - * 验证第二部门是否需要验证首单 - * - * @param pkPlaceParent 安置位置 - * @param pkCountry 国家 - */ - @Override - public boolean validateLeftExistMember(Long pkPlaceParent, Integer pkCountry) { - String validateParent = querySystemConfigByKey(pkCountry, ESystemConfig.PARENT_VALIDATE.getKey()); - if (EYesNo.YES.getIntValue() == Integer.parseInt(validateParent)) { - // 因为使用Member作为入参,此处 category 传入 10,代表 0=正常,1=待激活 - List cuMemberExtList = queryMemberExtByCondition(CuMember.builder().pkPlaceParent(pkPlaceParent).placeDept(EPlaceDept.LEFT_DEPT.getValue()).category(10).build()); - return cuMemberExtList.size() == 0; - } - return false; - } - - @Override - public List queryRetailSaOrderByDay(Date startDate, Date endDate, String orderCode) { - return baseMapper.queryRetailSaOrderByDay(startDate, endDate, orderCode); - } - - @Override - public SaOrder querySaOrderExtByPkId(Long pkId) { - return baseMapper.querySaOrderExtByPkId(pkId); - } - - @Override - public List querySaOrderByDeliverList(List deliverItemExtList) { - return baseMapper.querySaOrderByDeliverList(deliverItemExtList); - } - @Override public String querySystemConfigByKey(Integer pkCountry, String key) { return systemConfigServiceApi.getBonusSystemConfig(pkCountry, key).getData(); @@ -1737,28 +992,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderSelect(param, pkCountry); } - - private CuMember calculateHaFunMemberGrade(SaOrderExt saOrderExt, CuMember newCuMember) { - CuMember cuMember = null; - if (newCuMember != null && Objects.equals(MagicNumberConstants.CHINA_HA_FUN, newCuMember.getPkSettleGrade()) && - Objects.equals(CountryConstants.CHINA_COUNTRY, newCuMember.getPkSettleCountry())) { - int oldLevel = newCuMember.getPkSettleGrade(); - // 封装等级,重新计算会员等级 - setLastCuMemberGrade(newCuMember, saOrderExt); - // 验证等级,原等级<新等级,才可以进行升级 或者事累计升级 - if (oldLevel < newCuMember.getPkSettleGrade()) { - cuMember = newCuMember; - } - } - return cuMember; - } - - /** - * 空单注册审核通过 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderApproved(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1768,12 +1001,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 空单注册审核驳回 - * - * @param approvalBusinessResultDTO - * @return - */ @Override public Boolean regEmptyOrderReject(ApprovalBusinessResultDTO approvalBusinessResultDTO) { R cuMemberServiceLogR = cuMemberServiceLogServiceApi.selectByBusinessNo(approvalBusinessResultDTO.getBusinessCode()); @@ -1805,9 +1032,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return true; } - /** - * 定时关单 订单三十分钟未支付自动关闭 - */ @Override public void closeOrder() { R> configMap = systemConfigServiceApi.getSystemConfig(); @@ -1826,18 +1050,9 @@ public class SaOrderServiceImpl extends ServiceImpl impl if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REGISTER_ORDER_TIME.getKey())) { // 注册专区 orderType = EOrderType.REGISTER_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.UPGRADE_ORDER_TIME.getKey())) { - // 升级专区 - orderType = EOrderType.UPGRADE_ORDER.getValue(); } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.REPURCHASE_ORDER_TIME.getKey())) { // 复购专区时间 orderType = EOrderType.REPURCHASE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.EXCHANGE_ORDER_TIME.getKey())) { - // 兑换订单-积分专区 - orderType = EOrderType.EXCHANGE_ORDER.getValue(); - } else if (ESystemConfig.getPayMentTimeList().get(i).getKey().equals(ESystemConfig.WELFARE_ORDER_TIME.getKey())) { - // 福利订单 - orderType = EOrderType.WELFARE_ORDER.getValue(); } ESpecialAreaTime specialAreaTime = ESpecialAreaTime.getSpecialAreaTime(date); if (orderType != null && specialAreaTime != null) { @@ -1853,27 +1068,11 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - /** - * 统计用户pv - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumPv(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumPv(startPayDate, endPayDate, memberId); } - /** - * 统计用户金额 - * - * @param startPayDate 开始支付时间 - * @param endPayDate 结束支付时间 - * @param memberId 会员id - * @return - */ @Override public BigDecimal selectBySumAmount(Date startPayDate, Date endPayDate, Long memberId) { return baseMapper.selectBySumAmount(startPayDate, endPayDate, memberId); @@ -1884,18 +1083,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryOrderType(memberId, pkCountry); } - /** - * 商品销量累计 - */ - @Override - public void waresSalesAccrual(List waresNumberParamList) { - try { - iBdWaresExtendService.updateWaresSalesAccrual(waresNumberParamList); - } catch (Exception e) { - e.printStackTrace(); - } - } - @Override public CuMemberMyMarketVO selectMyMarket(Long pkMember, Integer pkCountry) { //查询全国市场 @@ -1920,20 +1107,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return cuMemberMyMarketVO; } - @Override - public SaOrder queryOrderTotalAchieveByTime(Date startDate, Date endDate) { - List orderTypeList = new ArrayList<>(); - orderTypeList.add(EOrderType.REGISTER_ORDER.getValue()); - orderTypeList.add(EOrderType.UPGRADE_ORDER.getValue()); - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("sum(order_amount) orderAmount,sum(order_achieve) orderAchieve") - .eq(SaOrderFieldConstants.ORDER_STATUS, EOrderStatus.PAY.getValue()) - .in(SaOrderFieldConstants.ORDER_TYPE, orderTypeList) - .ge(SaOrderFieldConstants.PAY_TIME, startDate) - .lt(SaOrderFieldConstants.PAY_TIME, endDate); - return baseMapper.selectOne(queryWrapper); - } - @Override public List querySeqList(Integer param) { return baseMapper.querySeqList(param); @@ -1949,12 +1122,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return i; } - /** - * 根据编号查询会员首单 - * - * @param memberCodeList - * @return - */ @Override public List checkMemberIsFirstOrder(List memberCodeList) { return baseMapper.checkMemberIsFirstOrder(memberCodeList); @@ -1991,7 +1158,10 @@ public class SaOrderServiceImpl extends ServiceImpl impl saOrderChargeLogService.save(saOrderChargeLog); // 撤销注册订单 - if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue()) { + CuMember member = memberServiceApi.getMember(SecurityUtils.getUserId()).getData(); + if (myOrderVO.getOrderType() == EOrderType.RETAIL_REGISTER.getValue() + || (myOrderVO.getOrderType() == EOrderType.RETAIL_REPURCHASE.getValue() && myOrderVO.getPayTime().equals(member.getPayTime())) + ) { // 逻辑删除会员 if (!memberServiceApi.singleRevokeMemberBySelfRevokeOrder(pkApprove, saOrderExt, businessCommissionDTO).getData()) { throw new ServiceException("撤单失败"); @@ -2032,12 +1202,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return baseMapper.queryByPkIdOrCode(pkOrder, orderCode, pkCountry); } - - /** - * 查询订单单品统计 - * - * @return - */ @Override public List singleItemStat(SingleItemStatParam singleItemStatParam) { return baseMapper.singleItemStat(singleItemStatParam); @@ -2112,8 +1276,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 默认情况下,注册、升级专区才能使用政策币,其它专区都是走特殊业务处理 // 个人政策币配置 UpPolicyCurrency upPolicyCurrency = null; - if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrder.getOrderType()) { + if (EOrderType.RETAIL_REGISTER.getValue() == saOrder.getOrderType()) { if (cuMemberAccount.getPayAccount3Flag()) { // 验证是否有政策币权限 List cuMemberServiceLogs = cuMemberServiceLogServiceApi.queryMaxCuMemberServiceLog(cuMemberAccount.getPkMember(), Collections.singletonList(EApprovalBusiness.POLICY_CURRENCY_YES_NO.getValue())); @@ -2210,28 +1373,6 @@ public class SaOrderServiceImpl extends ServiceImpl impl return flag; } - /** - * 计算新零售撤单等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @return - */ - private GradeDTO calculateRetailCancelGrade(CuMember cuMember, SaOrder saOrder) { - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrder.getPkId()).getData(); - if (null != cuMemberLevel) { - return gradeServiceApi.getGrade(cuMemberLevel.getNewLevel()).getData(); - } - - // 没有升级记录,直接查会员注册信息表 - CuMemberRegister cuMemberRegister = iCuMemberDetailServiceApi.getMemberRegister(cuMember.getPkId()).getData(); - if (null == cuMemberRegister) { - throw new ServiceException("没有会员注册信息"); - } - return gradeServiceApi.getGrade(cuMemberRegister.getPkRegisterGrade()).getData(); - } - /** * 处理撤销升级订单 * @@ -2243,93 +1384,13 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void handleCancelUpgradeOrder(SaOrderExt saOrderExt, SaOrder updSaOrder, Long pkApprove, BusinessCommissionDTO businessCommissionDTO) { // 其他撤单 撤销升级订单 CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); - if (EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType()) { - // 计算等级 - // 空单注册,从cu_member_register中获取 - if (updSaOrder == null) { - CuMemberRegister cuMemberRegister = memberServiceApi.queryCuMemberRegister(saOrderExt.getPkMember()).getData(); - cuMember.setPkRegisterGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setPkSettleGrade(cuMemberRegister.getPkRegisterGrade()); - cuMember.setConsumeMoney(BigDecimal.ZERO); - cuMember.setConsumeAchieve(cuMemberRegister.getConsumeAchieve()); - - // 查询会员升级记录表最终数据 - CuMemberLevel cuMemberLevel = iCuMemberDetailServiceApi.getLastUpgrade(cuMember.getPkId(), saOrderExt.getPkId()).getData(); - if (null != cuMemberLevel) { - // 存在手动升级 - cuMember.setPkSettleGrade(cuMemberLevel.getNewLevel()); - } - } else { - // 传的订单是当前撤的订单 - GradeDTO gradeDTO = calculateRetailCancelGrade(cuMember, saOrderExt); - cuMember.setPkSettleGrade(gradeDTO.getPkId()); - } - - Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); - if (null == firstDate) { - // 盒数商品订单最早的时间为空,则会员未激活 - cuMember.setPayTime(null); - cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); - cuMember.setIsActivate(EYesNo.NO.getIntValue()); - } - saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); - } else if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType()) { - // 复购订单存在盒数商品撤单,需要处理降级操作 - if (saOrderExt.getBoxNum().compareTo(BigDecimal.ZERO) > 0) { - // TODO 目前只有注册、升级才能激活,复购不进行处理 -// Date firstDate = baseMapper.getFirstPayTime(cuMember.getPkId()); -// if (null == firstDate) { -// // 盒数商品订单最早的时间为空,则会员未激活 -// cuMember.setPayTime(null); -// cuMember.setPayStatus(EPayStatus.UNPAID.getValue()); -// cuMember.setIsActivate(EYesNo.NO.getIntValue()); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } - - // TODO 恢复升级专区,复购专区不需要处理等级问题 -// // 如果复购订单后面还有升级订单,不需要处理等级问题; 复购订单后面没有升级订单,走新逻辑校验 -// if (this.count(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, saOrderExt.getPkMember()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_UPGRADE.getValue()) -// .ge(SaOrder::getPayTime, saOrderExt.getPayTime()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// ) == 0) { -// // 带有盒数商品的订单,需要校验等级 -// List gradeList = iGradeServiceApi.getRetailGradeList().getData(); -// // 当前会员等级 -// BdGrade memberGrade = this.getGrade(cuMember.getPkSettleGrade(), gradeList); -// -// // 需要添加的升级记录列表 -// List createLevelList = new ArrayList<>(); -// // 需要删除的升级记录列表 -// List deleteLevelList = new ArrayList<>(); -// // 新等级计算 -// BdGrade newGrade = this.handleNewGrade(cuMember, memberGrade, gradeList, saOrderExt, createLevelList, deleteLevelList); -// -// if (memberGrade.getGradeValue() < EGrade.VIP.getValue() && newGrade.getGradeValue() < memberGrade.getGradeValue()) { -// // 当前会员等级不是V4或者V5 并且 新等级小于当前等级需要进行处理 -// saOrderExt.setNewGrade(newGrade); -// saOrderExt.setUpdateFlag(EYesNo.YES.getIntValue()); -// } -// saOrderExt.setCreateLevelList(createLevelList); -// saOrderExt.setDeleteLevelList(deleteLevelList); -// } - } - } else if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { + if (EOrderType.RETAIL_PICK.getValue() == saOrderExt.getOrderType()) { // 新提货订单 if (!iAcRetailPickService.cancelRetailPickOrder(saOrderExt.getPkId(), pkApprove)) { throw new ServiceException("撤销订单退还提货失败"); } } - if (EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || - EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { - // 需要查询盒数商品 - List boxProductList = BoxProductUtil.getBoxWaresListBySystemType(saOrderExt.getSystemType()); - // 复购、重消订单处理限购 - iSaOrderWaresLimitService.updateCancelOrder(saOrderExt.getPkId(), saOrderExt.getPkMember(), saOrderExt.getModifiedTime(), boxProductList); - } - if (!memberServiceApi.normalRevokeOrder(pkApprove, saOrderExt, cuMember, businessCommissionDTO).getData()) { throw new ServiceException("撤单处理会员失败"); } @@ -2343,989 +1404,39 @@ public class SaOrderServiceImpl extends ServiceImpl impl private void pushCancelOrderMq(SaOrderExt saOrderExt) { try { if (EOrderType.RETAIL_REGISTER.getValue() == saOrderExt.getOrderType() - || EOrderType.RETAIL_UPGRADE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_REPURCHASE.getValue() == saOrderExt.getOrderType() || EOrderType.RETAIL_CONSUME.getValue() == saOrderExt.getOrderType()) { // 撤单标记为 true saOrderExt.setCancelBool(Boolean.TRUE); // 计算奖金,通过mq分发消息,异步处理 - log.info("新零售秒结消息,order.second.exchange:{}", saOrderExt.getOrderCode()); + log.info("{} 秒结消息,order.second.exchange:{}", SysConstants.RETAIL_PREFIX, saOrderExt.getOrderCode()); rabbitTemplate.convertAndSend(RabbitMqConstants.ORDER_SECOND_EXCHANGE, RabbitMqConstants.ORDER_SECOND_KEY, saOrderExt); } } catch (Exception e) { - log.error("新零售 pushOrderMq 推送MQ失败. order: {}", saOrderExt, e); + log.error("{} pushOrderMq 推送MQ失败. order: {}", SysConstants.RETAIL_PREFIX, saOrderExt, e); } } @Override - public BdGrade calculateGrade(Integer specialArea, List orderItemsParams, - List gradeList, CuMember updateGradeMember, - Integer systemType, Integer isPay) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - // 盒数商品 - List boxWaresList = BoxProductUtil.getBoxWaresListBySystemType(systemType); - - // 当前产品盒数 - BigDecimal boxNum = BigDecimal.ZERO; - // 处理商品盒数 - this.handleWaresBoxNum(specialArea, orderItemsParams); - // 判断订单明细中指定产品数量,校验等级 - for (OrderItemsParam orderItemsParam : orderItemsParams) { - if (boxWaresList.contains(orderItemsParam.getWaresCode())) { - // 存在指定商品,需要累计盒数 - boxNum = boxNum.add(orderItemsParam.getBoxNum().multiply(new BigDecimal(orderItemsParam.getQuantity()))); - } - } - + public BdGrade calculateGrade() { + GradeDTO gradeDTO = iGradeServiceApi.getGradeByGradeValue(EGrade.MEMBER.getValue(), CountryConstants.CHINA_COUNTRY).getData(); // 返回等级 - BdGrade bdGrade = null; - if (ESpecialArea.RETAIL_REGISTER.getValue() == specialArea) { - // 注册专区直接算等级 - bdGrade = this.getGradeByBox(boxNum, gradeList, null, true); - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - } else if (ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea) { - // 升级专区,一次性补差升级 - if (boxNum.compareTo(BigDecimal.ZERO) == 0) { - // 不满足升级条件 - throw new ServiceException("不满足升级条件"); - } - - // 当前会员等级 - BdGrade memberGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(updateGradeMember.getPkSettleGrade())).findFirst().get(); - if (RetailConstants.VERTEX_PK_ID.equals(updateGradeMember.getPkVertex())) { - if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0) { - // 会员等级大于等于V3(卓越),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - } else { - // 2025.08.01 非雨汐团队会多升2级 - if (memberGrade.getGradeValue().compareTo(EGrade.S_VIP.getValue()) >= 0) { - // new 2025.06.25 V1-V3升级多送两级,后续还需要继续购买升级,此处调整逻辑,会员等级大于等于V5(合伙人),不能通过升级进行购买了 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - } - - // 获取升级盒数基数 - BigDecimal baseBoxNum = this.handleBaseBoxNum(updateGradeMember, memberGrade, gradeList, boxWaresList, systemType); - // 计算等级 - bdGrade = this.getGradeByBox(boxNum.add(baseBoxNum), gradeList, memberGrade, true); - - if (bdGrade.getGradeValue().equals(memberGrade.getGradeValue()) - && (EGrade.HAI_FAN.getValue() == bdGrade.getGradeValue() || EGrade.YOU_KE.getValue() == bdGrade.getGradeValue()) - ) { - // 旧等级与新等级相同 并且 旧等级为V1或V2 - return null; - } - - // 2025.08.01 非雨汐团队会多升2级 - // 特殊等级处理 - BdGrade tmpGrade = this.handleGradeEnd(gradeList, bdGrade.getPkId(), updateGradeMember.getPkVertex()); - if (null != isPay && EYesNo.YES.getIntValue() == isPay) { - // 支付时才进行处理 - bdGrade = tmpGrade; - } - - // 会员等级 大于等于 购买盒数等级,则不满足升级条件 - if (memberGrade.getGradeValue().compareTo(tmpGrade.getGradeValue()) >= 0) { - return null; - } - } - return bdGrade; + return BeanUtil.copyProperties(gradeDTO, BdGrade.class); } - /** - * 根据盒数计算等级 - * - * @param boxTotal 总盒数 - * @param gradeList 等级列表(可为空) - * @param memberGrade 当前等级 -- 为空则为注册,不为空则为升级 - * @param checkUpgrade 校验升级 - * @return - */ - private BdGrade getGradeByBox(final BigDecimal boxTotal, List gradeList, BdGrade memberGrade, boolean checkUpgrade) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); - } - - if (null == memberGrade) { - // 注册处理 - // 去掉 V4,V5 升级盒数小于购买盒数的最大一个等级为注册等级 - return gradeList.stream() - .filter(tmpGrade -> tmpGrade.getGradeValue() != EGrade.VIP.getValue() && tmpGrade.getGradeValue() != EGrade.S_VIP.getValue() && tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0) - .max(Comparator.comparingInt(BdGrade::getGradeValue)).get(); - } else { - // 非注册处理 -// if (checkUpgrade) { -// // 当前等级大于等于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) >= 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } else { -// // 当前等级大于V3 或 盒数商品为0,则直接返回当前等级 -// if (memberGrade.getGradeValue().compareTo(EGrade.MAKER.getValue()) > 0 -// || boxTotal == 0) { -// return memberGrade; -// } -// } - - // 查询等级比现在当前等级大的,然后倒序排序,再查询 购买盒数 <= 等级盒数 的第一个等级,就是当前升级的等级 - Optional gradeOptional = gradeList.stream() - // new 2025.06.25 V1-V3升级多送两级,需要支持送完还能买,此处暂时注释掉 -// .filter(tmpGrade -> tmpGrade.getGradeValue() > memberGrade.getGradeValue()) - .sorted(Comparator.comparingInt(BdGrade::getGradeValue).reversed()) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(BigDecimal.ZERO) > 0) - .filter(tmpGrade -> tmpGrade.getBoxNumber().compareTo(boxTotal) <= 0).findFirst(); - return gradeOptional.orElse(memberGrade); - } - } - - - /** - * 处理升级盒数基数 - * - * @param cuMember 会员信息 - * @param memberGrade 会员等级信息 - * @param gradeList 等级列表 - * @param boxWaresList 盒数商品列表 - * @param systemType 所属系统 - * @return - */ - private BigDecimal handleBaseBoxNum(CuMember cuMember, BdGrade memberGrade, List gradeList, List boxWaresList, - Integer systemType) { - // 升级盒数基数 - BigDecimal baseBoxNum = BigDecimal.ZERO; - // 会员所有升级记录 - List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); - if (CollectionUtil.isNotEmpty(memberLevelList)) { - Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); - if (lastManualOptional.isPresent()) { - // 最新一次的手动升级 - CuMemberLevel lastMemberLevel = lastManualOptional.get(); - BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); - if (lastUpdateGrade.getGradeValue() >= EGrade.MAKER.getValue()) { - // new 2025.06.25 V1-V3升级多送两级,但手动开到V3及以上,则不能继续购买升级 - throw new ServiceException("当前已经是可以购买的最高等级"); - } - // 盒数基数 = 手动升级盒数 + 手动升级之后的升级订单盒数 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, lastMemberLevel.getUpgradeTime(), Collections.singletonList(EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = lastUpdateGrade.getBoxNumber().add(oldBoxNum); - } else { - baseBoxNum = lastUpdateGrade.getBoxNumber(); - } - } else { - // 没有手动升级记录 - BigDecimal oldBoxNum = saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxWaresList, null, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue()), systemType); - if (null != oldBoxNum) { - baseBoxNum = oldBoxNum; - } - } - } - return baseBoxNum; - - -// // 获取今天开始时间 -// Date todayDate = DateUtils.getStartTime(new Date()); -// // 2025.03.18 调整需求,升级走当天累计,当天买的所有都进行积累,24点之后则重新累积(手动升级前后的盒数都算累计) -// int baseBoxNum = 0; -// -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 如果今天有手动升级记录,则以手动升级记录的盒数 + 今天购买的盒数做累计 -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent() && lastManualOptional.get().getUpgradeTime().compareTo(todayDate) >= 0) { -// // 存在今天的手动升级记录 -// CuMemberLevel lastMemberLevel = lastManualOptional.get(); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } else { -// // 如果今天没有手动升级记录,则以今天以前最后一条升级记录的盒数 + 今天购买的盒数做累计 -// memberLevelList = memberLevelList.stream().filter(tmp -> tmp.getUpgradeTime().compareTo(todayDate) < 0).collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// CuMemberLevel lastMemberLevel = memberLevelList.get(0); -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastMemberLevel.getNewLevel())).findFirst().get(); -// baseBoxNum = lastUpdateGrade.getBoxNumber(); -// } -// } -// } -// -// return baseBoxNum + saOrderItemsService.getRetailWaresQuantityNew(cuMember.getPkId(), boxProductList, todayDate, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); - - -// // 是否当天购买(当天走累计升级,非当天走一次性补差) -// if (HzsUtil.checkCreateMember(cuMember.getCreationTime())) { -// // 当天,走累计升级 -// // 是否有升级记录 -// List memberLevelList = iCuMemberDetailServiceApi.getUpgradeList(cuMember.getPkId()).getData(); -// if (CollectionUtil.isNotEmpty(memberLevelList)) { -// // 最新一次的手动升级记录 -// Optional lastManualOptional = memberLevelList.stream().filter(tmpGrade -> tmpGrade.getUpType().equals(EUpgradeType.MANUAL_UPGRADE.getValue())).findFirst(); -// if (lastManualOptional.isPresent()) { -// // 有手动升级记录 -// CuMemberLevel lastManual = lastManualOptional.get(); -// // 手动升级等级 -// BdGrade lastUpdateGrade = gradeList.stream().filter(tmpGrade -> tmpGrade.getPkId().equals(lastManual.getNewLevel())).findFirst().get(); -// // 升级之后购买的订单盒数 -// int newBoxNumber = saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, lastManual.getUpgradeTime(), -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// // 基数盒数 = 手动升级的等级盒数 + 手动升级之后购买的盒数 -// return lastUpdateGrade.getBoxNumber() + newBoxNumber; -// } else { -// // 没有手动升级记录 -// // 基数盒数 = 购买的盒数 -// return saOrderItemsService.getRetailWaresQuantity(cuMember.getPkId(), boxProductList, null, -// Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()), systemType); -// } -// } -// } else { -// if (null != memberGrade) { -// // 非当天,走一次性补差 -// // 基数盒数 = 当前等级的盒数 -// return memberGrade.getBoxNumber(); -// } -// } -// return 0; - } - -// /** -// * 处理日升级新 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 新等级(可为null) -// * @param manualUpgradeLevel 手动升级等级(可为null) -// * @param queryStartTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录列表 -// * @return -// */ -// private BdGrade handleTodayGrade(CuMember cuMember, Integer oldLevel, Integer lastLevel, Integer manualUpgradeLevel, Date queryStartTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询撤单当天的注册、复购订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .in(SaOrder::getOrderType, EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// // 如果存在手动升级,则以手动升级为基数 -// if (null != manualUpgradeLevel) { -// int tmpBox = this.getGrade(manualUpgradeLevel, gradeList).getBoxNumber(); -// if (tmpBox != 0) { -// oldGradeBox = tmpBox; -// } -// } -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理日升级后每天升级 -// * -// * @param cuMember -// * @param oldGrade -// * @param queryStartTime -// * @param queryEndTime -// * @param memberLevelList -// * @param gradeList -// * @param createLevelList -// * @param deleteLevelList -// * @return -// */ -// private BdGrade handleTodayNextNew(CuMember cuMember, BdGrade oldGrade, Date queryStartTime, Date queryEndTime, -// List memberLevelList, List gradeList, -// List createLevelList, List deleteLevelList) { -// if (queryStartTime.compareTo(new Date()) >= 0) { -// // 查询时间大于等于当前时间了,则结束处理 -// return oldGrade; -// } -// -// // 订单购买当天所有升级记录 -// List todayLevelList = memberLevelList.stream() -// .filter(tmp -> (tmp.getUpgradeTime().compareTo(queryStartTime) >= 0 && tmp.getUpgradeTime().compareTo(queryEndTime) <= 0)) -// .collect(Collectors.toList()); -// if (CollectionUtil.isNotEmpty(todayLevelList)) { -// // 处理当日等级 -// Integer oldLevel = oldGrade.getPkId(); -// Integer lastLevel = todayLevelList.get(todayLevelList.size() - 1).getNewLevel(); -// // 手动升级记录 -// Integer manualUpgradeLevel = null; -// -// // 当天最后一条手动升级记录 -// Optional manualUpgradeOptional = todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() == tmp.getUpType()) -// .max(Comparator.comparing(CuMemberLevel::getUpgradeTime)); -// if (manualUpgradeOptional.isPresent()) { -// // 存在手动升级记录(计算等级为手动升级盒数为基数 + 当天购买的订单盒数) -// // 删除升级记录时,只删除非手动升级的 -// deleteLevelList.addAll(todayLevelList.stream() -// .filter(tmp -> EUpgradeType.MANUAL_UPGRADE.getValue() != tmp.getUpType()) -// .collect(Collectors.toList())); -// // 重算订单当天升级记录(存在手动升级) -// manualUpgradeLevel = manualUpgradeOptional.get().getNewLevel(); -// } else { -// // 不存在手动升级记录(当天购买的订单盒数) -// deleteLevelList.addAll(todayLevelList); -// } -// -// // 今天重算等级 -// oldGrade = this.handleTodayGrade(cuMember, oldLevel, lastLevel, manualUpgradeLevel, -// queryStartTime, queryEndTime, gradeList, createLevelList); -// if (lastLevel.equals(oldGrade.getPkId())) { -// // 重算之后和重算之前等级一致,直接返回当前会员等级 -// return oldGrade; -// } -// } -// -// return this.handleTodayNextNew(cuMember, oldGrade, DateUtils.addDays(queryStartTime, 1), DateUtils.addDays(queryEndTime, 1), -// memberLevelList, gradeList, createLevelList, deleteLevelList); -// } - -// /** -// * 处理首日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleToday(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 存在手动升级,只需要重算手动升级之前的 -// // 升级之前对应的等级(如果有值则是等级值,如果没有默认V0) -// Optional tmpGradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(oldLevel)).findFirst(); -// BdGrade oldGrade = tmpGradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 订单购买时间和手动升级记录之间有订单,需要重算中间的等级 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// // 累积盒数,校验等级 -// oldGradeBox += saOrder.getBoxNum(); -// -// for (BdGrade tmpGrade : lowGradeList) { -// if (oldGradeBox >= tmpGrade.getBoxNumber()) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// } -// } -// -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // V1等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } else if (null != orderV2) { -// // V2等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else if (null != orderV3) { -// // V3等级订单 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// return newGrade; -// } - -// /** -// * 首日等级有变化,处理次日升级 -// * -// * @param cuMember 会员信息 -// * @param oldLevel 旧等级 -// * @param lastLevel 最大等级 -// * @param queryTime 查询开始时间 -// * @param queryEndTime 查询结束时间 -// * @param gradeList 等级列表 -// * @param createLevelList 创建升级记录 -// * @return -// */ -// private BdGrade handleTodayNext(CuMember cuMember, Integer oldLevel, Integer lastLevel, Date queryTime, Date queryEndTime, -// List gradeList, List createLevelList) { -// // 次日升级之前的等级 -// BdGrade oldGrade = this.getGrade(oldLevel, gradeList); -// // 最终计算等级(如果没有默认为V3) -// BdGrade endGrade = null != lastLevel ? this.getGrade(lastLevel, gradeList) : this.getGrade(EGrade.MAKER, gradeList); -// // 获取需要处理的等级(大于升级记录的旧等级,小于等于升级记录的新等级) -// List lowGradeList = gradeList.stream() -// .filter(tmp -> (tmp.getGradeValue() > oldGrade.getGradeValue() && tmp.getGradeValue() <= endGrade.getGradeValue())) -// .collect(Collectors.toList()); -// -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,小于当天手动升级时间,全部订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getPayTime, queryTime) -// .le(SaOrder::getPayTime, null != queryEndTime ? queryEndTime : new Date()) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } -// } -// -// return newGrade; -// } - -// /** -// * 处理次日一次性升级 -// * -// * @param cuMember 会员信息 -// * @param queryStartTime 升级查询开始时间 -// * @param queryEndTime 升级查询结束时间 -// * @param oldGrade 升级旧等级 -// * @param lowGradeList 需要处理的升级等级 -// * @param gradeList 等级列表 -// * @param createLevelList 需要新増的升级记录 -// */ -// private BdGrade handleNextDay(CuMember cuMember, Date queryStartTime, Date queryEndTime, BdGrade oldGrade, List lowGradeList, -// List gradeList, List createLevelList) { -// BdGrade newGrade = oldGrade; -// -// if (CollectionUtil.isNotEmpty(lowGradeList)) { -// // 查询大于升级时间,订单盒数大于等于升级盒数的订单 -// List orderList = this.list(Wrappers.lambdaQuery() -// .eq(SaOrder::getPkMember, cuMember.getPkId()) -// .eq(SaOrder::getOrderStatus, EPayStatus.PAID.getValue()) -// .eq(SaOrder::getOrderType, EOrderType.RETAIL_REPURCHASE.getValue()) -// .ge(SaOrder::getBoxNum, lowGradeList.get(0).getBoxNumber()) -// .ge(SaOrder::getPayTime, queryStartTime) -// .le(null != queryEndTime, SaOrder::getPayTime, queryEndTime) -// .orderByAsc(SaOrder::getPayTime) -// ); -// -// if (CollectionUtil.isNotEmpty(orderList)) { -// // 升级记录以后有订单,才进行级别处理 -// // 取倒序(V3,V2,V1) -// lowGradeList.sort(Comparator.comparing(BdGrade::getGradeValue).reversed()); -// -// SaOrder orderV1 = null; -// SaOrder orderV2 = null; -// SaOrder orderV3 = null; -// // 旧等级盒数 -// int oldGradeBox = oldGrade.getBoxNumber(); -// -// orderFor: -// for (SaOrder saOrder : orderList) { -// for (BdGrade tmpGrade : lowGradeList) { -// if (saOrder.getBoxNum() >= (tmpGrade.getBoxNumber() - oldGradeBox)) { -// if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { -// // V3订单 -// orderV3 = saOrder; -// // 达到V3等级,直接结束 -// break orderFor; -// } else if (null == orderV2 && EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { -// // V2订单 -// orderV2 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// // 达到V2等级,V1就不需要处理了,直接处理下次订单 -// break; -// } else if (null == orderV1 && EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { -// // V1订单 -// orderV1 = saOrder; -// oldGradeBox = tmpGrade.getBoxNumber(); -// } -// } -// } -// } -// -// BdGrade gradeV1 = this.getGrade(EGrade.HAI_FAN, gradeList); -// BdGrade gradeV2 = this.getGrade(EGrade.YOU_KE, gradeList); -// BdGrade gradeV3 = this.getGrade(EGrade.MAKER, gradeList); -// if (null != orderV1) { -// // 有V1等级订单 -// if (null != orderV2) { -// // 有V2等级订单 -// if (orderV1.getPkId().equals(orderV2.getPkId())) { -// // V1和V2订单相同,只处理V2 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else { -// // V1和V2订单不相同 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3等级相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3等级不相同,先处理V1,再处理V2,最后处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,处理V1 V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, gradeV1.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } -// } else { -// // 没有V2等级订单 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV1.getPkId().equals(orderV3.getPkId())) { -// // V1和V3相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V1和V3不相同,先处理V1,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV1.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3等级订单,只处理V1 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV1, oldGrade.getPkId(), gradeV1.getPkId())); -// newGrade = gradeV1; -// } -// } -// } else if (null != orderV2) { -// // 有V2等级订单,V1没有 -// if (null != orderV3) { -// // 有V3等级订单 -// if (orderV2.getPkId().equals(orderV3.getPkId())) { -// // V2和V3订单相同,只处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } else { -// // V2和V3订单不相同,先处理V2,再处理V3 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, gradeV2.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// } else { -// // 没有V3,只处理V2 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV2, oldGrade.getPkId(), gradeV2.getPkId())); -// newGrade = gradeV2; -// } -// } else if (null != orderV3) { -// // 有V3等级订单,V1、V2没有 -// createLevelList.add(this.packageMemberLevel(cuMember, orderV3, oldGrade.getPkId(), gradeV3.getPkId())); -// newGrade = gradeV3; -// } -// -// } -// } -// return newGrade; -// } - - /** - * 获取等级(没有则返回V0) - * - * @param eGrade 等级枚举 - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(EGrade eGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getGradeValue().equals(eGrade.getValue())).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 获取等级(没有则返回V0) - * - * @param pkGrade 等级ID - * @param gradeList 等级列表 - * @return - */ - private BdGrade getGrade(Integer pkGrade, List gradeList) { - Optional gradeOptional = gradeList.stream().filter(tmp -> tmp.getPkId().equals(pkGrade)).findFirst(); - return gradeOptional.orElseGet(() -> this.getGrade(EGrade.START_UP, gradeList)); - } - - /** - * 封装会员等级 - * - * @param cuMember 会员信息 - * @param saOrder 订单信息 - * @param oldLevel 旧等级 - * @param newLevel 新等级 - * @return - */ - private CuMemberLevel packageMemberLevel(CuMember cuMember, SaOrder saOrder, Integer oldLevel, Integer newLevel) { - CuMemberLevel cuMemberLevel = CuMemberLevel.builder() - .pkMember(cuMember.getPkId()) - .upgradeTime(saOrder.getPayTime()) - .upType(EUpgradeType.BUY_UPGRADE.getValue()) - .oldLevel(oldLevel) - .newLevel(newLevel) - .pkOrder(saOrder.getPkId()) - .build(); - cuMemberLevel.setPkCreator(cuMember.getPkId()); - cuMemberLevel.setPkCountry(cuMember.getPkSettleCountry()); - return cuMemberLevel; - } - - /** - * new 2025.06.25 V1-V3升级多送两级处理 - * - * @param gradeList - * @param pkGrade - * @return - */ @Override - public BdGrade handleGradeEnd(List gradeList, Integer pkGrade, Long pkVertex) { - if (CollectionUtil.isEmpty(gradeList)) { - gradeList = iGradeServiceApi.getRetailGradeList().getData(); + public boolean showDiscountArea() { + if(ObjectUtil.isEmpty(SecurityUtils.getUserId())){ + return false; } - // new 2025.06.14 添加新需求,V1-V3,购买多给两级 - // new 2025.06.25 V1-V3升级多送两级,可以继续购买升级 - // 临时处理等级 - BdGrade tmpGrade = gradeList.stream().filter(tmpData -> tmpData.getPkId().equals(pkGrade)).findFirst().get(); - - if (RetailConstants.VERTEX_PK_ID.equals(pkVertex)) { - // 2025.08.01 雨汐团队不参加多送两级活动 - return tmpGrade; - } - - if (EGrade.HAI_FAN.getValue() == tmpGrade.getGradeValue()) { - // V1 给 V3 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.MAKER.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.YOU_KE.getValue() == tmpGrade.getGradeValue()) { - // V2 给 V4 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } else if (EGrade.MAKER.getValue() == tmpGrade.getGradeValue()) { - // V3 给 V5 - tmpGrade = gradeList.stream().filter(tmpData -> EGrade.S_VIP.getValue() == tmpData.getGradeValue()).findFirst().get(); - } - - return tmpGrade; + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(SaOrder::getPkMember, SecurityUtils.getUserId()); + wrapper.eq(SaOrder::getDelFlag, EDelFlag.UN_DELETE.getValue()); + wrapper.eq(SaOrder::getOrderStatus, EOrderStatus.PAY.getValue()); + wrapper.in(SaOrder::getOrderType, Arrays.asList(EOrderType.RETAIL_REGISTER.getValue(), EOrderType.RETAIL_UPGRADE.getValue())); + return baseMapper.selectCount(wrapper) > 0; } - /** - * 处理商品盒数 - * - * @param orderItemsParams - */ - private void handleWaresBoxNum(Integer specialArea, List orderItemsParams) { - if (CollectionUtil.isNotEmpty(orderItemsParams)) { - List waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); - List waresList = iBdWaresService.list(Wrappers.lambdaQuery() - .eq(BdWares::getSpecialArea, specialArea) - .in(BdWares::getWaresCode, waresCodeList) - ); - if (CollectionUtil.isNotEmpty(waresList)) { - for (OrderItemsParam orderItemsParam : orderItemsParams) { - for (BdWares bdWares : waresList) { - if (orderItemsParam.getWaresCode().equals(bdWares.getWaresCode())) { - orderItemsParam.setBoxNum(bdWares.getBoxNum()); - } - } - } - } - } - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java index 94934179..5890ebf8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderWaresLimitServiceImpl.java @@ -1,37 +1,15 @@ package com.hzs.sale.order.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.domain.sale.ext.SaOrderWaresLimitExt; import com.hzs.common.domain.sale.order.SaOrderWaresLimit; import com.hzs.sale.order.mapper.SaOrderWaresLimitMapper; import com.hzs.sale.order.service.ISaOrderWaresLimitService; import org.springframework.stereotype.Service; -import java.util.Date; -import java.util.List; - /** * 会员商品限购 服务实现类 - * - * @author hzs - * @since 2025-03-11 */ @Service public class SaOrderWaresLimitServiceImpl extends ServiceImpl implements ISaOrderWaresLimitService { - @Override - public List listWaresList(Long pkMember, Integer orderType, String limitDate, List waresCodeList) { - return baseMapper.listWaresList(pkMember, orderType, limitDate, waresCodeList); - } - - @Override - public int saveBatchLimit(List dataList) { - return baseMapper.saveBatchLimit(dataList); - } - - @Override - public int updateCancelOrder(Long pkOrder, Long pkMember, Date modifiedTime, List waresCodeList) { - return baseMapper.updateCancelOrder(pkOrder, pkMember, modifiedTime, waresCodeList); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java index af97150e..40e53f95 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/vo/OrderInvoicingVO.java @@ -33,7 +33,6 @@ public class OrderInvoicingVO implements Serializable { /** * 订单类型 */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) private Integer orderType; /** * 订单类型显示 @@ -122,7 +121,6 @@ public class OrderInvoicingVO implements Serializable { /** * 发货方式 */ - @Transaction(transactionKey = EnumsPrefixConstants.DELIVERY) private Integer deliveryWay; /** * 发货方式显示 @@ -132,7 +130,6 @@ public class OrderInvoicingVO implements Serializable { /** * 支付方式 */ - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_PAY_TYPE) private Integer payType; /** * 支付方式显示 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java index 1a1746a8..d6793616 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/mapper/BdPostageDetailMapper.java @@ -8,9 +8,6 @@ import java.util.List; /** * 邮费详情设置 Mapper 接口 - * - * @author hzs - * @since 2022-08-29 */ public interface BdPostageDetailMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java index 2e22549f..951582e8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/provider/IPostageServiceProvider.java @@ -13,11 +13,7 @@ import java.math.BigDecimal; import java.util.List; /** - * @Description: 邮费服务API - * @Author: jiang chao - * @Time: 2023/4/25 14:41 - * @Classname: IPostageServiceProvider - * @PackageName: com.hzs.sale.postage.provider + * 邮费服务API */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java index 9b433b45..856460b0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/IBdPostageDetailService.java @@ -7,9 +7,6 @@ import java.util.List; /** * 邮费详情设置 服务类 - * - * @author hzs - * @since 2022-08-29 */ public interface IBdPostageDetailService extends IService { @@ -18,9 +15,6 @@ public interface IBdPostageDetailService extends IService { * * @param tranType 运费方式 * @param pkPostage 邮费模板 - * @return: BdPostageDetail - * @Author: sui q - * @Date: 2022/9/19 17:29 */ List getPostageDetail(Integer tranType, Integer pkPostage); @@ -28,9 +22,6 @@ public interface IBdPostageDetailService extends IService { * 根据运费类型查询对应的模板 * * @param tranType 运费类型 - * @return: List - * @Author: sui q - * @Date: 2022/9/19 17:02 */ List queryPostageDetail(Integer tranType); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java index fc9e5cfc..be33d282 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/postage/service/impl/BdPostageDetailServiceImpl.java @@ -9,12 +9,7 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 邮费详情设置 服务实现类 - *

- * - * @author hzs - * @since 2022-08-29 */ @Service public class BdPostageDetailServiceImpl extends ServiceImpl implements IBdPostageDetailService { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java index 96e6b6ed..354777e3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdClassifyController.java @@ -4,11 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.AccessPermissions; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.WaresMsgConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; @@ -20,9 +17,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdClassifyService; import com.hzs.sale.product.service.IBdProductService; import com.hzs.sale.product.vo.ClassIfyVo; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -32,11 +27,7 @@ import java.util.Date; import java.util.List; /** - * @Description: 规格分类controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdClassifyController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格分类controller */ @Slf4j @RestController @@ -44,24 +35,16 @@ import java.util.List; public class BdClassifyController extends BaseController { @Autowired - private RedisService redisService; + private IBdProductService iBdProductService; @Autowired - private IBdProductService productService; - @Autowired - private IBdClassifyService classifyService; - - @DubboReference - ITransactionServiceApi transactionServiceApi; + private IBdClassifyService iBdClassifyService; /** * 查询规格分类 - * - * @param classIfyVo - * @return */ @AccessPermissions("cpfl") @Log(module = EOperationModule.SPECIFICATIONS_CONFIG, business = EOperationBusiness.PRODUCT_CLASSIFY, method = EOperationMethod.SELECT) - @GetMapping("list") + @GetMapping("/list") public TableDataInfo list(ClassIfyVo classIfyVo) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classIfyVo.getName())) { @@ -72,92 +55,71 @@ public class BdClassifyController extends BaseController { } queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); startPage(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); return getDataTable(list); } /** * 生成规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_SAVE, method = EOperationMethod.INSERT) - @PostMapping("save") + @PostMapping("/save") public AjaxResult save(@RequestBody BdClassify classify) { - classify.setPkCreator(SecurityUtils.getUserId()); - classify.setCreationTime(new Date()); - classify.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, classify.getName(), EYesNo.NO, EYesNo.NO); - classify.setPkTransactionKey(transaction.getData()); LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); qw.eq(BdClassify::getName, classify.getName()); qw.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - int count = classifyService.count(qw); - if (count > 0) { + if (iBdClassifyService.count(qw) > 0) { return AjaxResult.error(WaresMsgConstants.CLASSIFICATION_DUPLICATION); } - return AjaxResult.success(classifyService.save(classify)); + + classify.setPkCreator(SecurityUtils.getUserId()); + classify.setCreationTime(new Date()); + classify.setPkCountry(SecurityUtils.getPkCountry()); + return AjaxResult.success(iBdClassifyService.save(classify)); } /** * 编辑规格分类 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE, method = EOperationMethod.UPDATE) - @PostMapping("update") + @PostMapping("/update") public AjaxResult update(@RequestBody BdClassify classify) { classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); classify.setPkCountry(SecurityUtils.getPkCountry()); - String redisKey = CacheConstants.BD_CLASSIFY + classify.getPkId(); - redisService.deleteObject(redisKey); - return AjaxResult.success(classifyService.updateById(classify)); + return AjaxResult.success(iBdClassifyService.updateById(classify)); } - /** * 删除规格分类 - * - * @param pkId - * @return */ @Log(module = EOperationModule.CLASSIFY_DELETE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Integer pkId) { + LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); + qw.eq(BdProduct::getPkClassify, pkId); + if (iBdProductService.count(qw) > 0) { + return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); + } + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdClassify::getPkId, pkId); updateWrapper.set(BdClassify::getModifiedTime, new Date()); updateWrapper.set(BdClassify::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdClassify::getDelFlag, EDelFlag.DELETE.getValue()); - - String redisKey = CacheConstants.BD_CLASSIFY + pkId; - redisService.deleteObject(redisKey); - LambdaQueryWrapper qw = new LambdaQueryWrapper<>(); - qw.eq(BdProduct::getPkClassify, pkId); - int count = productService.count(qw); - if (count > 0) { - return AjaxResult.error(WaresMsgConstants.WARES_CLASSIFY_IS_USE); - } - return toAjax(classifyService.update(updateWrapper)); + return toAjax(iBdClassifyService.update(updateWrapper)); } /** * 查询规格分类详情 - * - * @param classifyId - * @return */ - @GetMapping("detail") + @GetMapping("/detail") public AjaxResult detail(Long classifyId) { - return AjaxResult.success(classifyService.getById(classifyId)); + return AjaxResult.success(iBdClassifyService.getById(classifyId)); } - /** * 修改规格分类状态 - * - * @return */ @Log(module = EOperationModule.CLASSIFY_UPDATE_ENABLE, method = EOperationMethod.UPDATE) @PostMapping("/updateEnable/{pkId}/{enable}") @@ -167,36 +129,30 @@ public class BdClassifyController extends BaseController { classify.setPkId(pkId); classify.setPkModified(SecurityUtils.getUserId()); classify.setModifiedTime(new Date()); - return toAjax(classifyService.updateById(classify)); + return toAjax(iBdClassifyService.updateById(classify)); } /** * 查询所有产品分类 - * - * @return */ - @GetMapping("find-all") + @GetMapping("/find-all") public AjaxResult findAll() { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdClassify::getPkCountry, SecurityUtils.getPkCountry()); - return AjaxResult.success(classifyService.list(queryWrapper)); + return AjaxResult.success(iBdClassifyService.list(queryWrapper)); } /** * 产品分类导出 - * - * @param response - * @param classify */ @PostMapping("/export") - public void export(HttpServletResponse response, - BdClassify classify) { + public void export(HttpServletResponse response, BdClassify classify) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(classify.getName())) { queryWrapper.eq(BdClassify::getName, classify.getName()); } List resultList = new ArrayList<>(); - List list = classifyService.list(queryWrapper); + List list = iBdClassifyService.list(queryWrapper); for (BdClassify bdClassify : list) { ClassIfyVo classIfyVo = new ClassIfyVo(); classIfyVo.setCreationTime(bdClassify.getCreationTime()); @@ -205,6 +161,6 @@ public class BdClassifyController extends BaseController { } ExcelUtil util = new ExcelUtil<>(ClassIfyVo.class); util.exportExcel(response, resultList, "分类导出"); - } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java index 478a7f1a..6fff4524 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdSpecsController.java @@ -1,11 +1,8 @@ package com.hzs.sale.product.controller.manage; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -13,144 +10,108 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.base.ITransactionServiceApi; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.Arrays; import java.util.Date; import java.util.List; /** - * @Description: 规格controller - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: BdSpecsController - * @PackageName: com.hzs.sale.product.controller.manage + * 规格controller */ @Slf4j @RestController @RequestMapping("/manage/specs") public class BdSpecsController extends BaseController { - @DubboReference - private ITransactionServiceApi transactionServiceApi; @Autowired - private IBdSpecsService specsService; - @Autowired - private RedisService redisService; - /** - * 查询规格列表 - * @return - */ - @GetMapping("list") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public TableDataInfo list(BdSpecs bdSpecs){ + private IBdSpecsService iBdSpecsService; - QueryWrapper queryWrapper = new QueryWrapper<>(); - if (StringUtils.isNotBlank(bdSpecs.getSpecsName())){ - queryWrapper.eq("SPECS_NAME",bdSpecs.getSpecsName()); + /** + * 查询规格列表 + */ + @GetMapping("/list") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public TableDataInfo list(BdSpecs bdSpecs) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotBlank(bdSpecs.getSpecsName())) { + queryWrapper.eq(BdSpecs::getSpecsName, bdSpecs.getSpecsName()); } startPage(); - List list = specsService.list(queryWrapper); + List list = iBdSpecsService.list(queryWrapper); return getDataTable(list); } /** * 新增规格 - * @param bdSpecs - * @return */ - @PostMapping("save") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) - public AjaxResult save(@RequestBody BdSpecs bdSpecs){ + @PostMapping("/save") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.INSERT) + public AjaxResult save(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkCreator(SecurityUtils.getUserId()); bdSpecs.setCreationTime(new Date()); bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO, EYesNo.NO); - bdSpecs.setPkTransactionKey(transaction.getData()); - specsService.save(bdSpecs); + iBdSpecsService.save(bdSpecs); return AjaxResult.success(); } /** * 修改规格 - * @param bdSpecs - * @return */ - @PostMapping("update") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult update(@RequestBody BdSpecs bdSpecs){ - BdSpecs specs = specsService.getById(bdSpecs.getPkId()); + @PostMapping("/update") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult update(@RequestBody BdSpecs bdSpecs) { bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - String redisKey = CacheConstants.BD_SPECS + bdSpecs.getPkId(); - transactionServiceApi.updateTransaction(specs.getPkCountry(),bdSpecs.getSpecsName(),specs.getPkTransactionKey(),true); - redisService.deleteObject(redisKey); - specsService.updateById(bdSpecs); + iBdSpecsService.updateById(bdSpecs); return AjaxResult.success(); } /** * 删除规格 - * - * @param pkId - * @return */ @DeleteMapping("/{pkId}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.DELETE) public AjaxResult delete(@PathVariable Integer pkId) { - BdSpecs sp = specsService.getById(pkId); BdSpecs specs = new BdSpecs(); specs.setPkId(pkId); specs.setDelFlag(EDelFlag.DELETE.getValue()); specs.setModifiedTime(new Date()); specs.setPkModified(SecurityUtils.getUserId()); - String redisKey = CacheConstants.BD_SPECS + pkId; - redisService.deleteObject(redisKey); - // 删除翻译 - transactionServiceApi.removeTransactionByPkId(Arrays.asList(sp.getPkTransactionKey().longValue())); - return toAjax(specsService.updateById(specs)); + return toAjax(iBdSpecsService.updateById(specs)); } /** * 查询规格详情 - * @param specsId - * @return */ - @GetMapping("detail") - public AjaxResult detail(Long specsId){ - return AjaxResult.success(specsService.getById(specsId)); + @GetMapping("/detail") + public AjaxResult detail(Long specsId) { + return AjaxResult.success(iBdSpecsService.getById(specsId)); } - /** * 修改规格状态 - * @return */ @PostMapping("/updateEnable/{pkId}/{enable}") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) - public AjaxResult updateEnable(@PathVariable Integer pkId,@PathVariable Integer enable){ - BdSpecs bdSpecs= new BdSpecs(); + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.UPDATE) + public AjaxResult updateEnable(@PathVariable Integer pkId, @PathVariable Integer enable) { + BdSpecs bdSpecs = new BdSpecs(); bdSpecs.setEnableState(enable); bdSpecs.setPkId(pkId); bdSpecs.setPkModified(SecurityUtils.getUserId()); bdSpecs.setModifiedTime(new Date()); - return toAjax(specsService.updateById(bdSpecs)); + return toAjax(iBdSpecsService.updateById(bdSpecs)); } - /** - * 查询规格列表 - * @return + * 查询规格列表 */ - @GetMapping("find-all") - @Log(module = EOperationModule.SPECS_LIST,business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) - public AjaxResult findAll(){ - List list = specsService.list(); + @GetMapping("/find-all") + @Log(module = EOperationModule.SPECS_LIST, business = EOperationBusiness.SPECIFICATIONS_CONFIG, method = EOperationMethod.SELECT) + public AjaxResult findAll() { + List list = iBdSpecsService.list(); return AjaxResult.success(list); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java index 79ec2e29..75d5035a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdAreaClassifyMapper.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -9,18 +8,16 @@ import com.hzs.sale.product.vo.AreaClassifyVo; import java.util.List; /** - *

* 商品分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface BdAreaClassifyMapper extends BaseMapper { + /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java index c9520406..ce26806f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdClassifyMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdClassify; /** - *

* 规格分类 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface BdClassifyMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java index ca64d1d3..3482dab2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdProductMapper.java @@ -32,11 +32,6 @@ public interface BdProductMapper extends BaseMapper { */ List selectByQueryList(ProductParams productParams); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtBySpecsId(@Param("productSpecsList") List productSpecsList, @Param("pkCountry") Integer pkCountry); - /** * 查询带有规格的产品列表 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java index 999f1c6f..23a2ae13 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsMapper.java @@ -3,14 +3,8 @@ package com.hzs.sale.product.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.classify.BdSpecs; - /** - *

* 产品规格表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsMapper extends BaseMapper { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java index a0f36508..b767d1b6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/mapper/BdSpecsTypeMapper.java @@ -6,20 +6,17 @@ import com.hzs.sale.product.vo.SpecsTypeVo; import java.util.List; - /** - *

* 规格类型表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface BdSpecsTypeMapper extends BaseMapper { + /** * 查询列表 + * * @param specsType * @return */ List selectSpecsTypeList(BdSpecsType specsType); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java index ce80244b..57f3601e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/provider/IProductServiceProvider.java @@ -1,54 +1,26 @@ package com.hzs.sale.product.provider; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.hzs.common.core.constant.SystemFieldConstants; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.IProductServiceApi; -import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.dto.ProductDTO; -import com.hzs.sale.product.dto.ProductParamDTO; import com.hzs.sale.product.service.IBdProductService; -import com.hzs.sale.product.service.IBdSpecsService; -import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/15 17:56 - * @Classname: IProductServiceProvider - * @PackageName: com.hzs.sale.product.provider - */ @Slf4j @DubboService public class IProductServiceProvider implements IProductServiceApi { @Autowired - private IBdProductService productService; + private IBdProductService iBdProductService; - @Autowired - private IBdSpecsService specsService; - - /** - * 根据产品id 查询产品 - * - * @param productId - * @return - */ @Override public R getProduct(Integer productId) { - BdProduct product = productService.getProduct(productId); + BdProduct product = iBdProductService.getProduct(productId); if (product == null) { return R.fail("产品不存在"); } @@ -57,17 +29,11 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryProductDtoById(List productSpecsList, Integer pkCountry) { - List productExtList = productService.queryProductExtById(productSpecsList, pkCountry); - return R.ok(productExtList); - } - @Override public R getProduct(String productCode) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PRODUCT_CODE", productCode); - BdProduct product = productService.getOne(queryWrapper); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdProduct::getProductCode, productCode); + BdProduct product = iBdProductService.getOne(queryWrapper); if (product == null) { return R.fail("产品不存在"); } @@ -76,33 +42,4 @@ public class IProductServiceProvider implements IProductServiceApi { return R.ok(productDTO); } - @Override - public R> queryBdSpecsByIdList(List idList) { - return R.ok(specsService.queryBdSpecsByIdList(idList)); - } - /** - * 产品新增 - * @param productParamDTO - * @return - */ - @Override - public R saveProduct(ProductParamDTO productParamDTO, LoginUser loginUser) { - ProductParams productParams = BeanUtil.copyProperties(productParamDTO, ProductParams.class); - return R.ok(productService.saveProduct(productParams,loginUser)); - } - - /** - * 根据产品主键修改所关联商品是下架/预售 - * @param productDTOList - * @return - */ - @Override - public R updateWaresPreSaleStatus(List productDTOList) { - List productList = productDTOList.stream().map(a -> { - BdProduct bdProduct = new BdProduct(); - bdProduct.setPkId(a.getProductId()); - return bdProduct; - }).collect(Collectors.toList()); - return R.ok(productService.updateWaresPreSaleStatus(productList)); - } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java index ea4428cd..1cdffd24 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdAreaClassifyService.java @@ -1,6 +1,5 @@ package com.hzs.sale.product.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; @@ -10,17 +9,13 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; /** - *

* 商品分类 服务类 - *

- * - * @author hzs - * @since 2022-09-05 */ public interface IBdAreaClassifyService extends IService { /** * 新增商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -28,6 +23,7 @@ public interface IBdAreaClassifyService extends IService { /** * 修改商品分类 + * * @param areaClassifyParam * @param loginUser */ @@ -35,6 +31,7 @@ public interface IBdAreaClassifyService extends IService { /** * 根据主键查询商品分类 + * * @param areaClassifyId * @return */ @@ -42,6 +39,7 @@ public interface IBdAreaClassifyService extends IService { /** * 查询商品分类列表 + * * @param areaClassifyParam * @return */ @@ -49,6 +47,7 @@ public interface IBdAreaClassifyService extends IService { /** * 删除 + * * @param pkId */ void deleteAreaClassify(Integer pkId); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java index a4d882ba..b9cff1d2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdClassifyService.java @@ -3,22 +3,17 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdClassify; - /** - *

* 规格分类 服务类 - *

- * - * @author hzs - * @since 2022-08-26 */ public interface IBdClassifyService extends IService { - /** * 根据id 查询详情 + * * @param classifyId * @return */ BdClassify getClassify(Integer classifyId); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java index 92136316..57bf6a4f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdProductService.java @@ -3,7 +3,6 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.BdProduct; -import com.hzs.common.domain.sale.product.BdProductSpecs; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.vo.ProductVo; @@ -26,11 +25,6 @@ public interface IBdProductService extends IService { */ BdProduct getProduct(Integer pkProduct); - /* - * 根据规格、主键查询产品 - **/ - List queryProductExtById(List productSpecsList, Integer pkCountry); - /** * 新增商品信息 * @@ -99,14 +93,6 @@ public interface IBdProductService extends IService { */ List queryProductExistSpecs(Integer pkCountry, Integer systemType); - /** - * 根据产品主键修改所关联商品是下架/预售 - * - * @param productList - * @return - */ - Boolean updateWaresPreSaleStatus(List productList); - /** * 供应商产品统计 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java index 5d380819..e47d27d6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsService.java @@ -2,32 +2,23 @@ package com.hzs.sale.product.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.classify.BdSpecsType; import java.util.List; - /** - *

* 产品规格表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsService extends IService { /** * 根据id查询产品规格表 + * * @param specsId */ BdSpecs getSpecs(Integer specsId); /* - * @description: 根据主键List查询规格 - * @author: sui q - * @date: 2023/11/30 15:18 - * @param: null null + * 根据主键List查询规格 **/ List queryBdSpecsByIdList(List idList); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java index c98f7ad4..8409026c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/IBdSpecsTypeService.java @@ -8,31 +8,28 @@ import com.hzs.system.sys.dto.LoginUser; import java.util.List; - /** - *

* 规格类型表 服务类 - *

- * - * @author hzs - * @since 2022-08-27 */ public interface IBdSpecsTypeService extends IService { /** * 根据id 查询规格分类 + * * @return */ BdSpecsType getSpecsType(Integer specsTypeId); /** * 新增规格分类 + * * @param specsTypeParam */ void saveSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser); /** * 修改规格分类 + * * @param specsTypeParam * @param loginUser */ @@ -40,6 +37,7 @@ public interface IBdSpecsTypeService extends IService { /** * 查询列表 + * * @param specsType * @return */ @@ -47,7 +45,8 @@ public interface IBdSpecsTypeService extends IService { /** * 删除 + * * @param pkId */ - void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser); + void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java index 093ce60e..7707b355 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdAreaClassifyServiceImpl.java @@ -1,28 +1,19 @@ package com.hzs.sale.product.service.impl; - import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.common.domain.sale.product.BdAreaClassifySpecialArea; -import com.hzs.common.domain.sale.product.BdProduct; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.AreaClassifyParam; import com.hzs.sale.product.mapper.BdAreaClassifyMapper; import com.hzs.sale.product.service.IBdAreaClassifyService; import com.hzs.sale.product.service.IBdAreaClassifySpecialAreaService; import com.hzs.sale.product.vo.AreaClassifyVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -32,28 +23,16 @@ import java.util.Date; import java.util.List; /** - *

* 商品分类 服务实现类 - *

- * - * @author hzs - * @since 2022-09-05 */ @Service public class BdAreaClassifyServiceImpl extends ServiceImpl implements IBdAreaClassifyService { + @Autowired - private RedisService redisService; + private IBdAreaClassifyService iBdAreaClassifyService; @Autowired - private IBdAreaClassifyService areaClassifyService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; - @Autowired - private IBdAreaClassifySpecialAreaService areaClassifySpecialAreaService; - /** - * 新增商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 登录用户 - */ + private IBdAreaClassifySpecialAreaService iBdAreaClassifySpecialAreaService; + @Override @Transactional(rollbackFor = Exception.class) public void saveAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { @@ -61,11 +40,9 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(), EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.insert(areaClassify); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ + if (areaClassifyParam.getSpecialAreaList() != null) { for (Integer number : areaClassifyParam.getSpecialAreaList()) { BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); areaClassifySpecialArea.setSpecialArea(number); @@ -76,72 +53,42 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl 0){ - areaClassifySpecialAreaService.saveBatch(list); + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); } - } - /** - * 修改商品分类 - * @param areaClassifyParam 分类对象 - * @param loginUser 当前登录用户 - */ @Override @Transactional(rollbackFor = Exception.class) public void updateAreaClassify(AreaClassifyParam areaClassifyParam, LoginUser loginUser) { BdAreaClassify areaClassify = BeanUtil.copyProperties(areaClassifyParam, BdAreaClassify.class); areaClassify.setPkModified(loginUser.getUserId()); areaClassify.setModifiedTime(new Date()); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, areaClassify.getClassifyName(),EYesNo.NO,EYesNo.NO); - areaClassify.setPkTransactionKey(transaction.getData()); baseMapper.updateById(areaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(areaClassify.getPkId()); List list = new ArrayList<>(); - if (areaClassifyParam.getSpecialAreaList() != null ){ - for (Integer number : areaClassifyParam.getSpecialAreaList()) { - BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); - areaClassifySpecialArea.setSpecialArea(number); - areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); - areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); - areaClassifySpecialArea.setCreationTime(new Date()); - areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); - list.add(areaClassifySpecialArea); - } - } - if (list.size() > 0){ - areaClassifySpecialAreaService.saveBatch(list); - } - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassify.getPkId(); - redisService.deleteObject(redisKey); - } - - /** - * 根据主键查询商品分类 - * @param areaClassifyId - * @return - */ - @Override - public BdAreaClassify getAreaClassify(Integer areaClassifyId) { - String redisKey = CacheConstants.BD_AREA_CLASSIFY + areaClassifyId; - BdAreaClassify areaClassify = redisService.getCacheObject(redisKey); - if (null == areaClassify) { - areaClassify = baseMapper.selectById(areaClassifyId); - if (null != areaClassify) { - redisService.setCacheObject(redisKey, areaClassify); + if (areaClassifyParam.getSpecialAreaList() != null) { + for (Integer number : areaClassifyParam.getSpecialAreaList()) { + BdAreaClassifySpecialArea areaClassifySpecialArea = new BdAreaClassifySpecialArea(); + areaClassifySpecialArea.setSpecialArea(number); + areaClassifySpecialArea.setPkAreaClassify(areaClassify.getPkId()); + areaClassifySpecialArea.setPkCreator(loginUser.getUserId()); + areaClassifySpecialArea.setCreationTime(new Date()); + areaClassifySpecialArea.setPkCountry(loginUser.getDataCountry()); + list.add(areaClassifySpecialArea); } } - return areaClassify; + if (list.size() > 0) { + iBdAreaClassifySpecialAreaService.saveBatch(list); + } + } + + @Override + public BdAreaClassify getAreaClassify(Integer areaClassifyId) { + return baseMapper.selectById(areaClassifyId); } - /** - * 查询商品分类列表 - * @param areaClassifyParam - * @return - */ @Override public List selectByAreaClassifyList(AreaClassifyParam areaClassifyParam) { return baseMapper.selectByAreaClassifyList(areaClassifyParam); @@ -150,18 +97,14 @@ public class BdAreaClassifyServiceImpl extends ServiceImpl bdAreaClassify = new UpdateWrapper(); - bdAreaClassify.eq("PK_ID",pkId); - bdAreaClassify.set("PK_MODIFIED",SecurityUtils.getUserId()); - bdAreaClassify.set("MODIFIED_TIME",new Date()); - bdAreaClassify.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - areaClassifyService.update(bdAreaClassify); - - // 删除缓存 - String redisKey = CacheConstants.BD_AREA_CLASSIFY + pkId; - redisService.deleteObject(redisKey); + LambdaUpdateWrapper bdAreaClassify = new LambdaUpdateWrapper<>(); + bdAreaClassify.eq(BdAreaClassify::getPkId, pkId); + bdAreaClassify.set(BdAreaClassify::getPkModified, SecurityUtils.getUserId()); + bdAreaClassify.set(BdAreaClassify::getModifiedTime, new Date()); + bdAreaClassify.set(BdAreaClassify::getDelFlag, EDelFlag.DELETE.getValue()); + iBdAreaClassifyService.update(bdAreaClassify); // 清空 中间表数据重新添加 - areaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); + iBdAreaClassifySpecialAreaService.deleteByAreaClassifyPk(pkId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java index 582e47c0..0ab17cee 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdClassifyServiceImpl.java @@ -1,43 +1,20 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdClassify; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdClassifyMapper; import com.hzs.sale.product.service.IBdClassifyService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - *

* 规格分类 服务实现类 - *

- * - * @author hzs - * @since 2022-08-26 */ @Service public class BdClassifyServiceImpl extends ServiceImpl implements IBdClassifyService { - @Autowired - private RedisService redisService; - /** - * 根据id 查询详情 - * @param classifyId - * @return - */ @Override public BdClassify getClassify(Integer classifyId) { - String redisKey = CacheConstants.BD_CLASSIFY + classifyId; - BdClassify classify = redisService.getCacheObject(redisKey); - if (null == classify) { - classify = baseMapper.selectById(classifyId); - if (null != classify) { - redisService.setCacheObject(redisKey, classify); - } - } - return classify; + return baseMapper.selectById(classifyId); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java index 8b61f095..0498206f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdProductServiceImpl.java @@ -14,7 +14,6 @@ import com.hzs.common.domain.sale.classify.BdClassify; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.domain.sale.ext.BdProductExt; import com.hzs.common.domain.sale.product.*; -import com.hzs.common.domain.sale.wares.BdWaresExtend; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.controller.manage.params.ProductParams; import com.hzs.sale.product.mapper.BdProductMapper; @@ -22,9 +21,6 @@ import com.hzs.sale.product.param.SupplierProductCensusParam; import com.hzs.sale.product.service.*; import com.hzs.sale.product.vo.ProductVo; import com.hzs.sale.product.vo.SupplierProductCensusVo; -import com.hzs.sale.product.vo.WaresDetailVo; -import com.hzs.sale.wares.service.IBdWaresDetailService; -import com.hzs.sale.wares.service.IBdWaresExtendService; import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.ICubasdocApi; import com.hzs.system.sys.dto.BusinessLogDTO; @@ -46,43 +42,34 @@ import java.util.stream.Collectors; public class BdProductServiceImpl extends ServiceImpl implements IBdProductService { @Autowired - private IBdWaresExtendService waresExtendService; + private IBdClassifyService iBdClassifyService; @Autowired - private IBdClassifyService classifyService; + private IBdProductExtendService iBdProductExtendService; @Autowired - private IBdProductExtendService productExtendService; + private IBdProductSpecsService iBdProductSpecsService; + @Autowired + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired private RabbitTemplate rabbitTemplate; - @Autowired - private IBdProductSpecsService productSpecsService; - @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdWaresDetailService waresDetailService; @DubboReference - ICubasdocApi cubasdocApi; + ICubasdocApi iCubasdocApi; @DubboReference - ITransactionServiceApi transactionServiceApi; + ITransactionServiceApi iTransactionServiceApi; @Override public BdProduct getProduct(Integer pkProduct) { return baseMapper.selectById(pkProduct); } - @Override - public List queryProductExtById(List productSpecsList, Integer pkCountry) { - return baseMapper.queryProductExtBySpecsId(productSpecsList, pkCountry); - } - @Override @Transactional(rollbackFor = Exception.class) public String saveProduct(ProductParams productParams, LoginUser loginUser) { String productCode = productParams.getProductCode(); BdProduct bdProduct = BeanUtil.copyProperties(productParams, BdProduct.class); - R transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setProductCode(productCode); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setProductCode(productCode); bdProduct.setPkCreator(loginUser.getUserId()); bdProduct.setCreationTime(new Date()); bdProduct.setPkCreator(loginUser.getUserId()); @@ -98,7 +85,7 @@ public class BdProductServiceImpl extends ServiceImpl cubasdocDTO = cubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); + R cubasdocDTO = iCubasdocApi.getCubasdoc(productParams.getPkCubasdoc()); CubasdocDTO cubasdoc = cubasdocDTO.getData(); if (cubasdoc != null) { bdProduct.setPkCubasdoc(productParams.getPkCubasdoc()); @@ -118,7 +105,7 @@ public class BdProductServiceImpl extends ServiceImpl 0) { - List specsTypeList = specsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); + List specsTypeList = iBdSpecsTypeService.list(new LambdaQueryWrapper().in(BdSpecsType::getPkId, productParams.getPkSpecsType())); List list = specsTypeList.stream().map(BdSpecsType::getTypeName).collect(Collectors.toList()); str.append("规格明细:").append(StringUtils.join(list, ",")); } @@ -223,9 +210,9 @@ public class BdProductServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); - bdProduct.setPkId(productParams.getPkId()); + R transaction = iTransactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.PRODUCT, productParams.getProductName(), EYesNo.NO, EYesNo.NO); bdProduct.setPkTransaction(transaction.getData()); + bdProduct.setPkId(productParams.getPkId()); bdProduct.setPkModified(loginUser.getUserId()); bdProduct.setModifiedTime(new Date()); if (productParams.getIsPutOn().equals(EYesNo.YES.getIntValue())) { @@ -244,12 +231,12 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getPkProduct, productParams.getPkId()); - productExtendService.update(productExtend, queryWrapper); + iBdProductExtendService.update(productExtend, queryWrapper); // 生成规格明细 if (productParams.getPkSpecsType() != null) { LambdaQueryWrapper removeWrapper = new LambdaQueryWrapper<>(); removeWrapper.eq(BdProductSpecs::getPkProduct, bdProduct.getPkId()); - productSpecsService.remove(removeWrapper); + iBdProductSpecsService.remove(removeWrapper); for (Integer id : productParams.getPkSpecsType()) { BdProductSpecs productSpecs = new BdProductSpecs(); productSpecs.setPkProduct(bdProduct.getPkId()); @@ -258,7 +245,7 @@ public class BdProductServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(BdProductSpecs::getPkProduct, pkId); - productSpecsService.update(bdProductSpecs, wrapper); + iBdProductSpecsService.update(bdProductSpecs, wrapper); // 创建删除产品日志 if (product != null) { createRemoveProductLog(product, loginUser, EApprovalBusiness.PRODUCT_REMOVE.getValue()); @@ -336,25 +323,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, maxSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之前的全都上移一位 并且将产品修改为该号码 - productExtendService.updateMoveUpBySort(maxSort); + iBdProductExtendService.updateMoveUpBySort(maxSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, maxSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -363,25 +350,25 @@ public class BdProductServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductExtend::getSort, minSort); - int count = productExtendService.count(queryWrapper); + int count = iBdProductExtendService.count(queryWrapper); if (count > 0) { // 表示该号码已存在 将该号码之下的全都下移一位 并且将产品修改为该号码 - productExtendService.updateMoveDownBySort(minSort); + iBdProductExtendService.updateMoveDownBySort(minSort); LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } else { LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, minSort); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); } } if (bdProduct != null) { @@ -422,11 +409,11 @@ public class BdProductServiceImpl extends ServiceImpl updateWrapper = new LambdaUpdateWrapper<>(); updateWrapper.eq(BdProductExtend::getPkProduct, productId); updateWrapper.set(BdProductExtend::getSort, sort + 1); - productExtendService.update(updateWrapper); + iBdProductExtendService.update(updateWrapper); if (product != null) { createFloatingRoofLog(product, loginUser, EApprovalBusiness.PRODUCT_TOP.getValue()); } @@ -476,47 +463,6 @@ public class BdProductServiceImpl extends ServiceImpl productList) { - List list = productList.stream().map(BdProduct::getPkId).collect(Collectors.toList()); - - try { - List waresDetailVoList = waresDetailService.listByPkProduct(list); - // 缺货状态 - List waresOutStockList = new ArrayList<>(); - //预售状态 - List warespreSaleList = new ArrayList<>(); - for (WaresDetailVo waresDetailVo : waresDetailVoList) { - if (waresDetailVo.getIsPreSale() == null || waresDetailVo.getIsPreSale().equals(EYesNo.NO.getIntValue())) { - // 缺货状态 - waresOutStockList.add(waresDetailVo.getPkWares()); - } else if (waresDetailVo.getIsPreSale().equals(EYesNo.YES.getIntValue())) { - // 是预售 修改为预售状态 - warespreSaleList.add(waresDetailVo.getPkWares()); - } - - } - // 更新缺货状态 - if (waresOutStockList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, waresOutStockList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.OUT_STOCK.getValue()); - waresExtendService.update(updateWrapper); - } - // 更新预售状态 - if (warespreSaleList.size() > 0) { - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.in(BdWaresExtend::getPkWares, warespreSaleList); - updateWrapper.set(BdWaresExtend::getPreSaleStatus, EPresaleStatus.PRESALE.getValue()); - waresExtendService.update(updateWrapper); - } - } catch (Exception e) { - return false; - } - return true; - } - @Override public List getSupplierProductCensus(SupplierProductCensusParam supplierProductCensusParam) { return baseMapper.getSupplierProductCensus(supplierProductCensusParam); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java index 4cda766a..635f372b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsServiceImpl.java @@ -1,54 +1,30 @@ package com.hzs.sale.product.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; -import com.hzs.common.domain.sale.postage.BdPostage; import com.hzs.sale.product.mapper.BdSpecsMapper; import com.hzs.sale.product.service.IBdSpecsService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** - *

* 产品规格表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsServiceImpl extends ServiceImpl implements IBdSpecsService { - @Autowired - private RedisService redisService; - /** - * 根据id查询产品规格表 - * @param specsId - * @return - */ @Override public BdSpecs getSpecs(Integer specsId) { - String redisKey = CacheConstants.BD_SPECS + specsId; - BdSpecs specs = redisService.getCacheObject(redisKey); - if (null == specs) { - specs = baseMapper.selectById(specsId); - if (null != specs) { - redisService.setCacheObject(redisKey, specs); - } - } - return specs; + return baseMapper.selectById(specsId); } @Override public List queryBdSpecsByIdList(List idList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.in(SystemFieldConstants.PK_ID, idList); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(BdSpecs::getPkId, idList); return baseMapper.selectList(queryWrapper); } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java index 3d99bd28..9077c40a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/service/impl/BdSpecsTypeServiceImpl.java @@ -3,13 +3,7 @@ package com.hzs.sale.product.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.sale.classify.BdSpecs; import com.hzs.common.domain.sale.classify.BdSpecsType; import com.hzs.common.security.utils.SecurityUtils; @@ -19,9 +13,7 @@ import com.hzs.sale.product.mapper.BdSpecsTypeMapper; import com.hzs.sale.product.service.IBdSpecsService; import com.hzs.sale.product.service.IBdSpecsTypeService; import com.hzs.sale.product.vo.SpecsTypeVo; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.sys.dto.LoginUser; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -31,38 +23,19 @@ import java.util.Date; import java.util.List; /** - *

* 规格类型表 服务实现类 - *

- * - * @author hzs - * @since 2022-08-27 */ @Service public class BdSpecsTypeServiceImpl extends ServiceImpl implements IBdSpecsTypeService { + @Autowired - private RedisService redisService; - @DubboReference - private ITransactionServiceApi transactionServiceApi; + private IBdSpecsTypeService iBdSpecsTypeService; @Autowired - private IBdSpecsTypeService specsTypeService; - @Autowired - private IBdSpecsService specsService; - /** - * 根据id 查询规格分类 - * @return - */ + private IBdSpecsService iBdSpecsService; + @Override public BdSpecsType getSpecsType(Integer specsTypeId) { - String redisKey = CacheConstants.BD_SPECS_TYPE + specsTypeId; - BdSpecsType specsType = redisService.getCacheObject(redisKey); - if (null == specsType) { - specsType = baseMapper.selectById(specsTypeId); - if (null != specsType) { - redisService.setCacheObject(redisKey, specsType); - } - } - return specsType; + return baseMapper.selectById(specsTypeId); } @Override @@ -75,8 +48,6 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl transaction = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, specsTypeParam.getTypeName(), EYesNo.NO,EYesNo.NO); - bdSpecsType.setPkTransactionKey(transaction.getData()); baseMapper.insert(bdSpecsType); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { @@ -86,21 +57,11 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(), EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); specsList.add(bdSpecs); } - - specsService.saveBatch(specsList); - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); + iBdSpecsService.saveBatch(specsList); } - /** - * 修改规格分类 - * @param specsTypeParam - * @param loginUser - */ @Override public void updateSpecsType(SpecsTypeParam specsTypeParam, LoginUser loginUser) { BdSpecsType bdSpecsType = new BdSpecsType(); @@ -111,76 +72,59 @@ public class BdSpecsTypeServiceImpl extends ServiceImpl specsId = new ArrayList<>(); for (SpecsParam specsParam : specsTypeParam.getSpecsList()) { - if (specsParam.getSpecsId() != null){ + if (specsParam.getSpecsId() != null) { specsId.add(specsParam.getSpecsId()); } } - specsService.remove(new QueryWrapper().notIn("PK_ID",specsId).eq("PK_SPECS_TYPE",specsTypeParam.getPkId())); + iBdSpecsService.remove(new QueryWrapper().notIn("PK_ID", specsId).eq("PK_SPECS_TYPE", specsTypeParam.getPkId())); List specsList = new ArrayList<>(); for (SpecsParam specs : specsTypeParam.getSpecsList()) { BdSpecs bdSpecs = new BdSpecs(); - if (specs.getSpecsId() != null){ - BdSpecs sp = specsService.getById(specs.getSpecsId()); - sp.setSpecsName(specs.getValue()); - sp.setModifiedTime(new Date()); - sp.setPkModified(SecurityUtils.getUserId()); - sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); - specsService.updateById(sp); - }else { - bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); - bdSpecs.setSpecsName(specs.getValue()); - bdSpecs.setPkCreator(SecurityUtils.getUserId()); - bdSpecs.setCreationTime(new Date()); - bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); - R trans = transactionServiceApi.createTransaction(loginUser.getDataCountry(), ETransactionKey.SPEC, bdSpecs.getSpecsName(),EYesNo.NO,EYesNo.NO); - bdSpecs.setPkTransactionKey(trans.getData()); - specsList.add(bdSpecs); - } - - + if (specs.getSpecsId() != null) { + BdSpecs sp = iBdSpecsService.getById(specs.getSpecsId()); + sp.setSpecsName(specs.getValue()); + sp.setModifiedTime(new Date()); + sp.setPkModified(SecurityUtils.getUserId()); + sp.setDelFlag(EDelFlag.UN_DELETE.getValue()); + iBdSpecsService.updateById(sp); + } else { + bdSpecs.setPkSpecsType(bdSpecsType.getPkId()); + bdSpecs.setSpecsName(specs.getValue()); + bdSpecs.setPkCreator(SecurityUtils.getUserId()); + bdSpecs.setCreationTime(new Date()); + bdSpecs.setPkCountry(SecurityUtils.getPkCountry()); + specsList.add(bdSpecs); + } } - if (specsList.size() > 0){ - specsService.saveBatch(specsList); + if (specsList.size() > 0) { + iBdSpecsService.saveBatch(specsList); } - String redisKey = CacheConstants.BD_SPECS_TYPE + bdSpecsType.getPkId(); - redisService.deleteObject(redisKey); } - /** - * 查询列表 - * @param specsType - * @return - */ + @Override public List selectSpecsTypeList(BdSpecsType specsType) { return baseMapper.selectSpecsTypeList(specsType); } - /** - * 删除 - * @param pkId - */ - @Override + @Transactional(rollbackFor = Exception.class) - public void deleteBySpecsTypeId(Integer pkId,LoginUser loginUser) { - UpdateWrapper updateWrapper = new UpdateWrapper(); - updateWrapper.eq("PK_ID",pkId); - updateWrapper.set("DEL_FLAG",EDelFlag.DELETE.getValue()); - updateWrapper.set("MODIFIED_TIME",new Date()); - updateWrapper.set("PK_MODIFIED",loginUser.getUserId()); - specsTypeService.update(updateWrapper); + @Override + public void deleteBySpecsTypeId(Integer pkId, LoginUser loginUser) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("PK_ID", pkId); + updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); + updateWrapper.set("MODIFIED_TIME", new Date()); + updateWrapper.set("PK_MODIFIED", loginUser.getUserId()); + iBdSpecsTypeService.update(updateWrapper); UpdateWrapper updateSpecsWrapper = new UpdateWrapper<>(); - updateSpecsWrapper.eq("PK_SPECS_TYPE",pkId); - updateSpecsWrapper.set("MODIFIED_TIME",new Date()); - updateSpecsWrapper.set("PK_MODIFIED",loginUser.getUserId()); + updateSpecsWrapper.eq("PK_SPECS_TYPE", pkId); + updateSpecsWrapper.set("MODIFIED_TIME", new Date()); + updateSpecsWrapper.set("PK_MODIFIED", loginUser.getUserId()); updateSpecsWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - specsService.update(updateSpecsWrapper); - String redisKey = CacheConstants.BD_SPECS_TYPE + pkId; - redisService.deleteObject(redisKey); + iBdSpecsService.update(updateSpecsWrapper); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java deleted file mode 100644 index dfb031f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/WaresDetailVo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hzs.sale.product.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2024/4/24 16:20 - * @Classname: WaresDetailVo - * @PackageName: com.hzs.sale.product.vo - */ - -import lombok.Data; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.product.vo - *@Author: yh - *@CreateTime: 2024-04-24 16:20 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class WaresDetailVo { - - /** - * 商品主键 - */ - private Integer pkWares; - - /** - * 是否允许预售 0 是 1 否 - */ - private Integer isPreSale; -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java index 5a0a601e..89569f6a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/pub/provider/SaleApprovalBusinessProvider.java @@ -9,23 +9,12 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -/** - * @Description: - * @Author: sui q - * @Time: 2022/10/25 13:47 - * @Classname: SaleApprovalBusiness - * @PackageName: com.hzs.sale.pub.provider - */ @Slf4j @DubboService public class SaleApprovalBusinessProvider implements ISaleApprovalServiceApi { - private ISaleApprovalBusiness saleApprovalBusiness; - @Autowired - public void setSaleApprovalBusiness(ISaleApprovalBusiness saleApprovalBusiness) { - this.saleApprovalBusiness = saleApprovalBusiness; - } + private ISaleApprovalBusiness saleApprovalBusiness; @Override public R approvalCallback(ApprovalBusinessResultDTO approvalBusinessResultDTO) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java index 43debb75..76e5c129 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/mapper/SaRefundMapper.java @@ -2,28 +2,11 @@ package com.hzs.sale.refund.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; -import org.apache.ibatis.annotations.Param; - -import java.util.List; /** * 退款表 Mapper 接口 - * - * @author hzs - * @since 2023-08-25 */ public interface SaRefundMapper extends BaseMapper { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(@Param("param") RefundQueryParam param, - @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java deleted file mode 100644 index ddca73af..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/param/RefundQueryParam.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.sale.refund.param; - -import lombok.Data; - -import java.util.Date; - -/** - * @Description: 退款查询入参 - * @Author: jiang chao - * @Time: 2023/8/28 9:49 - * @Classname: RefundQueryParam - * @PackageName: com.hzs.sale.order.param - */ -@Data -public class RefundQueryParam { - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 订单编号 - */ - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - - /** - * 退款状态 - */ - private Integer refundStatus; - - /** - * 退款编号 - */ - private String refundCode; - - /** - * 产品编号 - */ - private String productCode; - - /** - * 产品名称 - */ - private String productName; - - /** - * 创建时间 - */ - private Date[] creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java deleted file mode 100644 index 2bf37f6e..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/provider/SaRefundServiceProvider.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.hzs.sale.refund.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.sale.refund.ISaRefundServiceApi; -import com.hzs.sale.refund.service.IRefundBusinessService; -import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -/** - * @Description: 订单退款对外服务api - * @Author: jiang chao - * @Time: 2023/8/26 14:45 - * @Classname: SaRefundServiceProvider - * @PackageName: com.hzs.sale.order.provider - */ -@Slf4j -@DubboService -public class SaRefundServiceProvider implements ISaRefundServiceApi { - - @Autowired - private IRefundBusinessService iRefundBusinessService; - - @Override - public R onlinePayRefundCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - try { - String str = iRefundBusinessService.refundOnlineCallback(orderCode, refundCode, refundStatus, refundMsg); - if (null == str) { - return R.ok(); - } - return R.fail("直销订单在线支付退款失败: {}", str); - } catch (Exception e) { - log.error("直销订单在线支付退款异常: ", e); - return R.fail("直销订单在线支付退款异常: {}", e.getMessage()); - } - } - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java deleted file mode 100644 index 965308d3..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/IRefundBusinessService.java +++ /dev/null @@ -1,23 +0,0 @@ -package com.hzs.sale.refund.service; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: IRefundBusinessService - * @PackageName: com.hzs.sale.order.service - */ -public interface IRefundBusinessService { - - /** - * 在线支付订单退款回调 - * - * @param orderCode 订单编号 - * @param refundCode 退款编号 - * @param refundStatus 退款状态 - * @param refundMsg 退款信息 - * @return - */ - String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg); - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java index 003e8255..19ae025d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/ISaRefundService.java @@ -2,26 +2,10 @@ package com.hzs.sale.refund.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.param.RefundQueryParam; -import com.hzs.sale.refund.vo.RefundQueryVO; - -import java.util.List; /** * 退款表 服务类 - * - * @author hzs - * @since 2023-08-25 */ public interface ISaRefundService extends IService { - /** - * 订单退款列表 - * - * @param param 退款查询入参 - * @param pkCountry 所属国家 - * @return - */ - List queryRefundList(RefundQueryParam param, Integer pkCountry); - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java deleted file mode 100644 index fc242c23..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/RefundBusinessServiceImpl.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.sale.refund.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; -import com.hzs.common.core.constant.MagicNumberConstants; -import com.hzs.common.core.enums.EAfterSale; -import com.hzs.common.core.utils.StringUtils; -import com.hzs.common.domain.sale.order.SaRefund; -import com.hzs.sale.refund.service.IRefundBusinessService; -import com.hzs.sale.refund.service.ISaRefundService; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.Date; - -/** - * @Description: 退款业务服务 - * @Author: jiang chao - * @Time: 2023/8/25 15:22 - * @Classname: RefundBusinessServiceImpl - * @PackageName: com.hzs.sale.order.service.impl - */ -@Slf4j -@Service -public class RefundBusinessServiceImpl implements IRefundBusinessService { - - @Autowired - private ISaRefundService iSaRefundService; - - @Transactional(rollbackFor = Exception.class) - @Override - public String refundOnlineCallback(String orderCode, String refundCode, Integer refundStatus, String refundMsg) { - // 存在退款单号处理 - if (StringUtils.isNotEmpty(refundCode)) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(SaRefund::getRefundCode, refundCode); - SaRefund saRefund = iSaRefundService.getOne(queryWrapper); - if (null == saRefund) { - return "订单售后信息已不存在"; - } - if (EAfterSale.PROCESSED.getValue() == saRefund.getRefundStatus()) { - return "订单售后已经完成"; - } - - LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); - updateWrapper.eq(SaRefund::getPkId, saRefund.getPkId()); - updateWrapper.set(SaRefund::getRefundStatus, refundStatus); - updateWrapper.set(SaRefund::getRefundRemark, refundMsg); - updateWrapper.set(SaRefund::getPkModified, MagicNumberConstants.PK_ADMIN); - updateWrapper.set(SaRefund::getModifiedTime, new Date()); - if (!iSaRefundService.update(updateWrapper)) { - return "直销订单在线支付退款,更新退款单失败"; - } - } - return null; - } -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java index 4d8880a5..549db29b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/service/impl/SaRefundServiceImpl.java @@ -3,25 +3,13 @@ package com.hzs.sale.refund.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.sale.order.SaRefund; import com.hzs.sale.refund.mapper.SaRefundMapper; -import com.hzs.sale.refund.param.RefundQueryParam; import com.hzs.sale.refund.service.ISaRefundService; -import com.hzs.sale.refund.vo.RefundQueryVO; import org.springframework.stereotype.Service; -import java.util.List; - /** * 退款表 服务实现类 - * - * @author hzs - * @since 2023-08-25 */ @Service public class SaRefundServiceImpl extends ServiceImpl implements ISaRefundService { - @Override - public List queryRefundList(RefundQueryParam param, Integer pkCountry) { - return baseMapper.queryRefundList(param, pkCountry); - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java deleted file mode 100644 index 143c0b9b..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/refund/vo/RefundQueryVO.java +++ /dev/null @@ -1,129 +0,0 @@ -package com.hzs.sale.refund.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; - -/** - * @Description: 退款查询VO - * @Author: jiang chao - * @Time: 2023/8/28 9:48 - * @Classname: RefundQueryVO - * @PackageName: com.hzs.sale.order.vo - */ -@Data -public class RefundQueryVO { - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - - /** - * 订单编号 - */ - @Excel(name = "订单编号") - private String orderCode; - - /** - * 订单类型 - */ - private Integer orderType; - /** - * 订单类型显示 - */ - @Excel(name = "订单类型") - @Transaction(transactionKey = EnumsPrefixConstants.ORDER_TYPE) - private String orderTypeVal; - - /** - * 退款状态 - */ - private Integer refundStatus; - /** - * 退款状态显示 - */ - @Excel(name = "退款状态") - @Transaction(transactionKey = EnumsPrefixConstants.REFUND_STATUS) - private String refundStatusVal; - - /** - * 退款编号 - */ - @Excel(name = "退款编号") - private String refundCode; - /** - * 退款金额 - */ - @Excel(name = "退款金额") - private BigDecimal refundAmount; - /** - * 退款业绩 - */ - @Excel(name = "退款业绩") - private BigDecimal refundAchieve; - /** - * 退款考核业绩 - */ - private BigDecimal refundAssAchieve; - /** - * 退款邮费 - */ - @Excel(name = "退款邮费") - private BigDecimal postage; - - /** - * 产品编号 - */ - @Excel(name = "产品编号") - private String productCode; - /** - * 产品名称 - */ - @Excel(name = "产品名称") - private String productName; - /** - * 产品规格 - */ - @Excel(name = "产品规格") - private String specsName; - /** - * 产品价格 - */ - @Excel(name = "产品价格") - private BigDecimal price; - /** - * 产品业绩 - */ - @Excel(name = "产品业绩") - private BigDecimal achievement; - /** - * 产品考核业绩 - */ - private BigDecimal ass_achievement; - /** - * 产品数量 - */ - @Excel(name = "产品数量") - private Integer quantity; - - /** - * 创建日期 - */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java index 9fe554e1..c51b8540 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/controller/api/ApiShoppingCartController.java @@ -3,6 +3,7 @@ package com.hzs.sale.shopping.controller.api; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONUtil; import com.hzs.common.core.constant.CacheConstants; +import com.hzs.common.core.enums.ESpecialArea; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; @@ -49,6 +50,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry() || scr.getPkCountry() == 0) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); if (shoppingCartRedisMap == null) { @@ -70,6 +75,7 @@ public class ApiShoppingCartController extends BaseController { for (ProductGroup productGroup : scr.getProductGroup()) { innerKey.append(productGroup.getPkSkuId()).append("_").append(productGroup.getQuantity()); } + innerKey.append("_").append(copyFor41List ? ESpecialArea.RETAIL_UPGRADE.getValue() : scr.getSpecialArea()); if (innerShopMap.containsKey(innerKey.toString())) { // 购物车中存在该商品 @@ -77,6 +83,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(jsonString, ShoppingCartRedis.class); shoppingCartRedis.setNumber(shoppingCartRedis.getNumber() + scr.getNumber()); shoppingCartRedis.setPkMakerSpace(scr.getPkMakerSpace()); + if(copyFor41List){ + shoppingCartRedis.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue()); + } innerShopMap.put(innerKey.toString(), JSONUtil.toJsonStr(shoppingCartRedis)); } else { @@ -97,6 +106,10 @@ public class ApiShoppingCartController extends BaseController { if (shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getPkCountry() == null) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } +// boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); List shoppingCartOld; @@ -104,6 +117,9 @@ public class ApiShoppingCartController extends BaseController { Map innerShopMap; innerShopMap = (Map) shoppingCartRedisMap.get(key); shoppingCartOld = shoppingCartService.getShopping(innerShopMap, shoppingCartVO.getSpecialArea(), shoppingCartVO.getPkCountry(), SecurityUtils.getSystemType()); +// if(copyFor41List){ +// shoppingCartOld.forEach(item -> {item.setSpecialArea(ESpecialArea.RETAIL_UPGRADE.getValue());}); +// } } else { shoppingCartOld = new ArrayList<>(); } @@ -120,6 +136,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int count = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -137,6 +157,9 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; @@ -147,6 +170,7 @@ public class ApiShoppingCartController extends BaseController { if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { count += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } else { iterator.remove(); } @@ -175,6 +199,10 @@ public class ApiShoppingCartController extends BaseController { if (null == shoppingCartVO.getPkCountry()) { shoppingCartVO.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = shoppingCartVO.getSpecialArea() == null || shoppingCartVO.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); +// if(copyFor41List){ +// shoppingCartVO.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); +// } int smallCount = 0; String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + userId; Map shoppingCartRedisMap = redisService.getCacheMap(key); @@ -193,17 +221,21 @@ public class ApiShoppingCartController extends BaseController { ShoppingCartRedis shoppingCartRedis = JSONUtil.toBean(value, ShoppingCartRedis.class); Integer shoppingCartRedisPkCountry = shoppingCartRedis.getPkCountry(); Integer shoppingCartRedisSpecialArea = shoppingCartRedis.getSpecialArea(); +// if(copyFor41List){ +// shoppingCartRedisSpecialArea = (ESpecialArea.RETAIL_REGISTER.getValue()); +// } if (shoppingCartRedisPkCountry == 0) { iterator.remove(); continue; } - if (shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) + if (copyFor41List ? shoppingCartRedisSpecialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue()) : shoppingCartRedisSpecialArea.equals(shoppingCartSpecialArea) && shoppingCartPkCountry.equals(shoppingCartRedisPkCountry)) { if (null != shoppingCartRedis.getWaresCode()) { CuWaresParams cuWaresParams = bdWaresSpecsSkuService.queryWaresSpecsSkuCount(shoppingCartSpecialArea, shoppingCartRedis.getWaresCode(), userId, shoppingCartPkCountry); if (null != cuWaresParams && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams()) && CollectionUtil.isNotEmpty(cuWaresParams.getProductParams().get(0).getWaresItemsParamsList())) { smallCount += shoppingCartRedis.getNumber(); + cuWaresParams.setSpecialArea(shoppingCartVO.getSpecialArea()); } } else { smallCount += shoppingCartRedis.getNumber(); @@ -277,6 +309,10 @@ public class ApiShoppingCartController extends BaseController { if (null == scr.getPkCountry()) { scr.setPkCountry(SecurityUtils.getPkCountry()); } + boolean copyFor41List = scr.getSpecialArea().equals(ESpecialArea.RETAIL_UPGRADE.getValue()); + if(copyFor41List){ + scr.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + } String key = CacheConstants.SHOPPIN_GCART + SecurityUtils.getPkCountry() + "_" + SecurityUtils.getUserId(); Map shoppingCartRedisMap = redisService.getCacheMap(key); CarWaresInfoVo carWaresInfoVo = new CarWaresInfoVo(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java index a82c0739..b2933715 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/shopping/service/impl/ShoppingCartServiceImpl.java @@ -166,6 +166,9 @@ public class ShoppingCartServiceImpl implements IShoppingCartService { **/ private void getShoppingCart(ShoppingCart shoppingCart, Integer specialArea, String waresCode, Long userId, ShoppingCartRedis sst, BigDecimal waresPrice, BigDecimal achieve, BigDecimal assAchieve, R currency, Integer pkCountry, Integer systemType) { + if(specialArea.equals(ESpecialArea.RETAIL_UPGRADE.getValue())){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } CuWaresParams cuWaresParams = iBdWaresSpecsSkuService.queryWaresSpecsSkuShopping(specialArea, waresCode, userId, pkCountry, systemType); if (cuWaresParams == null) { return; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java index a0a885ea..58a5cfaa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/ticket/provider/TicketServiceProvider.java @@ -13,11 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.math.BigDecimal; /** - * @Description: 购票对外dubbo服务 - * @Author: jiang chao - * @Time: 2025/1/14 15:44 - * @Classname: TicketServiceProvider - * @PackageName: com.hzs.sale.ticket.provider + * 购票对外dubbo服务 */ @Slf4j @DubboService diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java index f926b94c..5e14ce30 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/api/ApiBdWaresController.java @@ -1,6 +1,7 @@ package com.hzs.sale.wares.controller.api; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.codec.Base64Decoder; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; @@ -27,6 +28,7 @@ import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; import com.hzs.member.base.IMemberServiceApi; import com.hzs.member.base.dto.ShowWaresDTO; +import com.hzs.retail.wares.param.WaresShareParam; import com.hzs.sale.order.service.ISaOrderService; import com.hzs.sale.shopping.service.IShoppingCartService; import com.hzs.sale.shopping.vo.WaresItemWaresInfo; @@ -87,6 +89,133 @@ public class ApiBdWaresController extends BaseController { @Autowired protected StringRedisTemplate redisTemplate; + /** + * 188分享专区商品列表 + */ + @GetMapping("/list-wares-share") + public AjaxResult listWaresShare(WaresShareParam param) { +// param.setSpecialArea(ESpecialArea.RETAIL_REGISTER.getValue()); + param.setIsMakerGift(EWaresType.ORDINARY.getValue()); + param.setPkCountry(CountryConstants.CHINA_COUNTRY); + + // 返回数据 + List waresParamsList = new ArrayList<>(); + + // 查询商品列表 + List bdWaresExtList = iBdWaresService.listWaresShare(param.getSpecialArea(), param.getIsMakerGift(), param.getPkCountry()); + + if (CollectionUtil.isNotEmpty(bdWaresExtList)) { + // 商品主键列表 + List waresIdList = bdWaresExtList.stream().map(BdWares::getPkId).collect(Collectors.toList()); + + if (StringUtils.isNotEmpty(param.getShareMemberCode())) { + // 分享人ID + Long pkMember = Long.parseLong(new String(Base64Decoder.decode(param.getShareMemberCode()))); + CuMember cuMember = iSaOrderService.getCuMemberByKey(pkMember); + // 当前会员编号 + String memberCode = cuMember.getMemberCode(); + + // 检验商品团队信息 + Map> waresAuthorityMap = iBdWaresService.getWaresAuthority(waresIdList); + List showWaresList = bdWaresExtList.stream().map(we -> getShowWares(we.getPkId(), pkMember, memberCode, waresAuthorityMap)).collect(Collectors.toList()); + R> waresShowMapDto = iMemberServiceApi.checkIsShowWares(showWaresList); + Map waresShowMap = waresShowMapDto.getData(); + + // 商品标签列表 + BdWaresLabel waresLabel = new BdWaresLabel(); + waresLabel.setPkIdList(waresIdList); + List list = iBdWaresLabelService.selectByList(waresLabel); + // 标签 + for (BdWaresExt bdWaresExt : bdWaresExtList) { + // 保证标签 + List ensureLabelList = new ArrayList<>(); + // 卖点标签 + List sellingLabelList = new ArrayList<>(); + + for (BdLabelExt bdLabel : list) { + if (ELabelType.PREFIX.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 前缀标签 + bdWaresExt.setPrefixLabelTarget(bdLabel); + } + if (ELabelType.COOL.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 酷炫标签 + bdWaresExt.setCoolLabelTarget(bdLabel); + } + if (ELabelType.ENSURE.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 保证标签 + ensureLabelList.add(bdLabel); + } + if (ELabelType.SELLING.getValue() == bdLabel.getLabelType() && bdLabel.getPkWares().equals(bdWaresExt.getPkId())) { + // 卖点标签 + sellingLabelList.add(bdLabel); + } + } + bdWaresExt.setEnsureLabelList(ensureLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + bdWaresExt.setSellingLabelList(sellingLabelList.stream().filter(DistinctByKeyUtil.distinctByKey(BdLabel::getPkId)).collect(Collectors.toList())); + } + + // 查询商品sku 最小值 和数量 + List waresSpecsSkuArray = iBdWaresSpecsSkuService.selectByMinWaresSpecsSkuByPkWaresList(waresIdList); + Map> waresSpecsSkuMap = waresSpecsSkuArray.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getPkWares)); + + // 查询默认规格 + List waresSpecsSkuList = iBdWaresSpecsSkuService.selectByWaresSpecsSku(waresIdList); + + for (BdWaresExt waresExt : bdWaresExtList) { + // 校验团队信息 + Boolean isShowWares = waresShowMap.get(waresExt.getPkId()); + if (null == isShowWares || !isShowWares) { + continue; + } + + CuWaresParams waresParams = BeanUtil.copyProperties(waresExt, CuWaresParams.class); + // 价格 + BigDecimal waresPrice = BigDecimal.ZERO; + // 业绩 + BigDecimal waresAchieve = BigDecimal.ZERO; + + List waresSpecsSku = waresSpecsSkuMap.get(waresExt.getPkId()); + waresSpecsSku = waresSpecsSku.stream().peek(a -> a.setProductGift(a.getPkProduct() + "" + a.getIsGift())).collect(Collectors.toList()); + Map> col = waresSpecsSku.stream().collect(Collectors.groupingBy(BdWaresSpecsSkuExt::getProductGift)); + for (Map.Entry> integerListEntry : col.entrySet()) { + // 取得每一个商品价格最小值 + Optional minBdWaresSpecsSkuExt = integerListEntry.getValue().stream().filter(Objects::nonNull).min(Comparator.comparing(BdWaresSpecsSkuExt::getPrice)); + BdWaresSpecsSkuExt bdWaresSpecsSkuExt = minBdWaresSpecsSkuExt.get(); + waresPrice = waresPrice.add(bdWaresSpecsSkuExt.getPrice().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + waresAchieve = waresAchieve.add(bdWaresSpecsSkuExt.getAchieve().multiply(new BigDecimal(bdWaresSpecsSkuExt.getQuantity()))); + } + + // 计算商品列表价格和业绩最小值 + waresParams.setWaresPrice(waresPrice); + waresParams.setWaresAchieve(waresAchieve); + // 商品业绩计算汇率 + if (waresParams.getWaresAchieve() != null) { + waresParams.setWaresAchieve(waresParams.getWaresAchieve()); + waresParams.setWaresPrice(waresParams.getWaresPrice()); + } else { + waresParams.setWaresAchieve(BigDecimal.ZERO); + waresParams.setWaresPrice(BigDecimal.ZERO); + } + + // 查询默认规格 + JSONArray jsonArray = new JSONArray(); + List collect = waresSpecsSkuList.stream().filter(DistinctByKeyUtil.distinctByKey(BdWaresSpecsSku::getPkWaresDetail)).collect(Collectors.toList()); + for (BdWaresSpecsSkuExt bdWaresSpecsSku : collect) { + if (bdWaresSpecsSku.getPkWares().equals(waresExt.getPkId())) { + JSONObject js = new JSONObject(); + js.put("pkProduct", bdWaresSpecsSku.getPkProduct()); + js.put("pkSkuId", bdWaresSpecsSku.getPkId()); + js.put("quantity", bdWaresSpecsSku.getQuantity()); + jsonArray.add(js); + } + } + waresParams.setProductGroup(jsonArray); + waresParamsList.add(waresParams); + } + } + } + return AjaxResult.success(waresParamsList); + } /** * 根据专区查找专区的商品 @@ -180,8 +309,7 @@ public class ApiBdWaresController extends BaseController { List bdWaresRangeList = new ArrayList<>(); if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { // 复购业绩计算 if (waresIdList.size() > 0) { bdWaresRangeList = iBdWaresRangeService.queryWaresRangeByCondition(cuMember, waresIdList); @@ -230,8 +358,7 @@ public class ApiBdWaresController extends BaseController { BigDecimal retailPrice = BigDecimal.ZERO; if (EOrderType.REPURCHASE_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea() - || EOrderType.COOPERATE_ORDER.getValue() == cuWaresParams.getSpecialArea()) { + || EOrderType.MALL_ORDER.getValue() == cuWaresParams.getSpecialArea()) { for (BdWaresRange bdWaresRange : bdWaresRangeList) { if (waresExt.getPkId().equals(bdWaresRange.getPkWares())) { waresPrice = waresPrice.add(bdWaresRange.getPrice()); @@ -293,12 +420,7 @@ public class ApiBdWaresController extends BaseController { waresParamsList.add(waresParams); } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.INTEGRAL.getValue()); - for (CuWaresParams waresParams : waresParamsList) { - waresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(waresParams.getWaresPrice(), deductRatio)); - } - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); for (CuWaresParams waresParams : waresParamsList) { @@ -402,10 +524,7 @@ public class ApiBdWaresController extends BaseController { } // 封装抵扣 - if (ESpecialArea.INTEGRAL_AREA.getValue() == cuWaresParams.getSpecialArea()) { - BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, SecurityUtils.getPkCountry(), EAccount.INTEGRAL.getValue()); - cuWaresParams.setDeductMoney(ComputeUtil.computeBonusMultiply(cuWaresParams.getWaresPrice(), deductRatio)); - } else if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { + if (ESpecialArea.RESCISSION_AREA.getValue() == cuWaresParams.getSpecialArea()) { BigDecimal deductRatio = getSpecialDeductRatio(cuWaresParams, pkCountry, EAccount.REPEAT.getValue()); Set pkCurrencySet = new HashSet<>(); if (cuWaresParams.getPkSpecialCurrency() != null) { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java index 7e4c51c6..f8289c72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/controller/manage/BdWaresController.java @@ -139,7 +139,7 @@ public class BdWaresController extends BaseController { if (CollectionUtil.isNotEmpty(resultList)) { resultList.parallelStream().forEach(waresVo -> { // 所属专区 - waresVo.setSpecialAreaVal(ESpecialArea.getESpecialArea(waresVo.getSpecialArea())); + waresVo.setSpecialAreaVal(ESpecialArea.getLabelByValue(waresVo.getSpecialArea())); // 供应方式 waresVo.setOperateScopeVal(ESupplyWay.getLabelByVal(waresVo.getOperateScope())); // 预售状态 @@ -894,7 +894,7 @@ public class BdWaresController extends BaseController { eo.setWaresPrice(ws.getWaresPrice()); eo.setAmountPrice(eo.getWaresPrice().multiply(new BigDecimal(eo.getQuantity()))); eo.setSpecialArea(ws.getSpecialArea()); - eo.setSpecialAreaStr(ESpecialArea.getESpecialArea(ws.getSpecialArea())); + eo.setSpecialAreaStr(ESpecialArea.getLabelByValue(ws.getSpecialArea())); eo.setIsSingle(ws.getIsSingle()); eo.setProductName(ws.getProductName()); LambdaQueryWrapper qer = new LambdaQueryWrapper<>(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java index 6794bd95..2609eedc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresDetailMapper.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; import org.apache.ibatis.annotations.Param; @@ -54,14 +53,6 @@ public interface BdWaresDetailMapper extends BaseMapper { */ List selectByPkWares(@Param("pkWares") Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProducts - * @return - */ - List listByPkProduct(@Param("pkProducts") List pkProducts); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java index 79d06d00..bce4471f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresMapper.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.retail.wares.param.RetailWaresParam; import com.hzs.sale.wares.param.WaresNoSaleParam; @@ -130,25 +129,6 @@ public interface BdWaresMapper extends BaseMapper { */ List listRetailWaresByCondition(@Param("param") RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProduct(@Param("boxWaresList") List boxWaresList, - @Param("pkProduct") Integer pkProduct, - @Param("specialArea") Integer specialArea); - - /** - * 根据体系获取盒数商品编码 - * - * @param pkVertex - * @return - */ - List listWaresCodeByVertex(@Param("pkVertex") Long pkVertex); /** * 查询非在售商品 @@ -158,4 +138,16 @@ public interface BdWaresMapper extends BaseMapper { */ List listWaresNoSale(@Param("param") WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(@Param("specialArea") Integer specialArea, + @Param("isMakerGift") Integer isMakerGift, + @Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java index beaf1ad5..325c97ec 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/mapper/BdWaresSpecsSkuMapper.java @@ -109,4 +109,12 @@ public interface BdWaresSpecsSkuMapper extends BaseMapper { */ List selectByMinWaresSpecsSkuByPkWaresList(@Param("pkWaresIds") List pkWaresIds); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + List queryWaresSpecsSkuList(@Param("skuIdList") List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java index af6a2524..89e7f68d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/param/CuWaresParams.java @@ -3,7 +3,6 @@ package com.hzs.sale.wares.param; import com.alibaba.fastjson2.JSONArray; import com.hzs.common.core.annotation.BigDecimalFormat; import com.hzs.common.domain.system.config.BdLabel; -import com.hzs.sale.wares.vo.SaTWaresSkuVo; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -232,11 +231,6 @@ public class CuWaresParams implements Serializable { */ private Integer source; - /** - * 商品sku信息 - */ - List waresSkuList; - /** * 入汇率 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java index 903ded33..aa3ebe87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/provider/WaresServiceProvider.java @@ -11,33 +11,19 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.Date; -/** - * @BelongsProject: hzs_cloud - * @BelongsPackage: com.hzs.sale.wares.provider - * @Author: yh - * @CreateTime: 2023-03-02 17:07 - * @Description: TODO - * @Version: 1.0 - */ @DubboService public class WaresServiceProvider implements IWaresServiceApi { @Autowired - private IBdWaresService waresService; + private IBdWaresService iBdWaresService; @Autowired - private IBdWaresLabelService waresLabelService; + private IBdWaresLabelService iBdWaresLabelService; - /** - * 校验标签是否使用 - * - * @param pkLabel 标签主键 - * @return - */ @Override public R checkLabelisUse(Integer pkLabel) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdWaresLabel::getPkLable, pkLabel); - int count = waresLabelService.count(queryWrapper); + int count = iBdWaresLabelService.count(queryWrapper); if (count > 0) { return R.ok(true); } else { @@ -45,37 +31,19 @@ public class WaresServiceProvider implements IWaresServiceApi { } } - /** - * 修改自动上下架状态(自动上架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoStart(Date currentTime) { - waresService.updateByAutoStartAndAutoStart(currentTime); + iBdWaresService.updateByAutoStartAndAutoStart(currentTime); } - /** - * @description: 修改商品预售状态 - * @author: zhang jing - * @date: 2024/10/24 16:09 - * @param: [] - * @return: void - **/ @Override public void waresPreSale() { - waresService.waresPreSale(); + iBdWaresService.waresPreSale(); } - - /** - * 修改自动上下架状态(自动下架) - * - * @param currentTime 当前时间 - */ @Override public void updateByAutoStartAndAutoEnd(Date currentTime) { - waresService.updateByAutoStartAndAutoEnd(currentTime); + iBdWaresService.updateByAutoStartAndAutoEnd(currentTime); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java index 38ec86bb..4eeec840 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresDetailService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.vo.WaresProductDetailVo; @@ -40,14 +39,6 @@ public interface IBdWaresDetailService extends IService { */ List selectByPkWares(Integer pkWares); - /** - * 根据产品主键查询商品列表 - * - * @param pkProduct - * @return - */ - List listByPkProduct(List pkProduct); - /** * 商品下产品查询 * diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java index d1c8f6b4..cb0bee87 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.sale.ext.BdWaresExt; import com.hzs.common.domain.sale.wares.BdWares; import com.hzs.common.domain.sale.wares.BdWaresAuthority; -import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.common.domain.system.config.BdAgreement; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.retail.wares.param.RetailWaresParam; @@ -196,32 +195,6 @@ public interface IBdWaresService extends IService { */ List listRetailWaresByCondition(RetailWaresParam param); - /** - * 查询盒数商品对应产品列表 - * - * @param boxWaresList 盒数商品列表 - * @return - */ - List listBoxProduct(List boxWaresList); - - /** - * 查询盒数商品列表 - * - * @param boxWaresList 盒数商品列表 - * @param pkProduct 查询的产品ID - * @param specialArea 所属专区 - * @return - */ - List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea); - - /** - * 根据体系获取盒数商品编码 - * - * @param pkVertex - * @return - */ - List listWaresCodeByVertex(Long pkVertex); - /** * 查询非在售商品 * @@ -230,4 +203,14 @@ public interface IBdWaresService extends IService { */ List listWaresNoSale(WaresNoSaleParam param); + + /** + * 根据条件查询商品信息 + * + * @param specialArea 专区 + * @param specialArea 专区 + * @param pkCountry 所属国家 + * @return: List + */ + List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java index 5a73299d..1f801491 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/IBdWaresSpecsSkuService.java @@ -13,6 +13,7 @@ import com.hzs.sale.wares.param.CuWaresParams; import com.hzs.sale.wares.param.SpecsSkuParam; import java.util.List; +import java.util.Map; /** * 规格sku表 服务类 @@ -107,4 +108,12 @@ public interface IBdWaresSpecsSkuService extends IService { */ RetailWaresDetailVO queryWaresDetail(RetailWaresDetailParam param, Integer pkGrade); + + /** + * 查询SKU价格等信息 + * + * @param skuIdList skuID列表 + * @return + */ + Map queryWaresSpecsSkuList(List skuIdList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java index 8b9f3cf4..46addcaf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresDetailServiceImpl.java @@ -7,7 +7,6 @@ import com.hzs.common.domain.sale.ext.BdWaresDetailExt; import com.hzs.common.domain.sale.wares.BdWaresDetail; import com.hzs.sale.order.param.OrderItemsParam; import com.hzs.sale.order.param.WaresItemsParam; -import com.hzs.sale.product.vo.WaresDetailVo; import com.hzs.sale.wares.mapper.BdWaresDetailMapper; import com.hzs.sale.wares.param.CuProductParams; import com.hzs.sale.wares.service.IBdWaresDetailService; @@ -70,11 +69,6 @@ public class BdWaresDetailServiceImpl extends ServiceImpl listByPkProduct(List pkProduct) { - return baseMapper.listByPkProduct(pkProduct); - } - @Override public List selectByList(Integer pkWares) { return baseMapper.selectByList(pkWares); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java index 3ecb10ad..cf4f8dd9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresServiceImpl.java @@ -1156,24 +1156,14 @@ public class BdWaresServiceImpl extends ServiceImpl impl return baseMapper.listRetailWaresByCondition(param); } - @Override - public List listBoxProduct(List boxWaresList) { - return baseMapper.listBoxProduct(boxWaresList, null, null).stream().map(BdWaresDetail::getPkProduct).collect(Collectors.toList()); - } - - @Override - public List listBoxProductAndWares(List boxWaresList, Integer pkProduct, Integer specialArea) { - return baseMapper.listBoxProduct(boxWaresList, pkProduct, specialArea); - } - - @Override - public List listWaresCodeByVertex(Long pkVertex) { - return baseMapper.listWaresCodeByVertex(pkVertex); - } - @Override public List listWaresNoSale(WaresNoSaleParam param) { return baseMapper.listWaresNoSale(param); } + + @Override + public List listWaresShare(Integer specialArea, Integer isMakerGift, Integer pkCountry) { + return baseMapper.listWaresShare(specialArea, isMakerGift, pkCountry); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java index c909da84..34a5304a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/service/impl/BdWaresSpecsSkuServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.sale.wares.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.domain.R; @@ -75,8 +76,7 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { int level = cuMember.getPkSettleGrade(); int rangeType = ERangeType.GRADE.getValue(); BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(cuMember.getPkAwards()).getData(); @@ -189,10 +189,14 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl bdWaresSpecsSkuExtList; - + if(ObjectUtil.isEmpty(specialArea)){ + specialArea = -1; + } + if(ESpecialArea.RETAIL_UPGRADE.getValue() == specialArea){ + specialArea = ESpecialArea.RETAIL_REGISTER.getValue(); + } if (EOrderType.REPURCHASE_ORDER.getValue() == specialArea - || EOrderType.MALL_ORDER.getValue() == specialArea - || EOrderType.COOPERATE_ORDER.getValue() == specialArea) { + || EOrderType.MALL_ORDER.getValue() == specialArea) { R memberDate = iMemberServiceApi.getMember(loginMemberId); CuMember cuMember = memberDate.getData(); @@ -580,4 +584,15 @@ public class BdWaresSpecsSkuServiceImpl extends ServiceImpl queryWaresSpecsSkuList(List skuIdList) { + Map resultMap = new HashMap<>(); + + List list = baseMapper.queryWaresSpecsSkuList(skuIdList); + for (BdWaresSpecsSkuExt waresSpecsSku : list) { + resultMap.put(waresSpecsSku.getPkId().longValue(), waresSpecsSku); + } + return resultMap; + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java deleted file mode 100644 index 4d2424f4..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresQueryVO.java +++ /dev/null @@ -1,196 +0,0 @@ -package com.hzs.sale.wares.vo; - -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.utils.StringUtils; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品列表VO - * @Author: jiang chao - * @Time: 2023/5/24 15:57 - * @Classname: SaTWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@AllArgsConstructor -@NoArgsConstructor -@Builder -@Data -public class SaTWaresQueryVO { - - /** - * 主键 - */ - private Long pkId; - /** - * 三方商品表ID - */ - private Long pkTWares; - - /** - * 三方商品SKU表ID - */ - @Excel(name = "直供序号") - private Long pkTWaresSku; - - /** - * 商品名称 - */ - @Excel(name = "商品名称") - private String productName; - - /** - * 分类显示 - */ - @Excel(name = "商品分类") - private String titleCategory; - - public String getTitleCategory() { - if (StringUtils.isNotEmpty(this.titleCategoryOne)) { - titleCategory = this.titleCategoryOne; - } - if (StringUtils.isNotEmpty(this.titleCategoryTwo)) { - titleCategory += "-" + this.titleCategoryTwo; - } - if (StringUtils.isNotEmpty(this.titleCategoryThree)) { - titleCategory += "-" + this.titleCategoryThree; - } - return titleCategory; - } - - /** - * 商品图片 - */ - private String cover; - - /** - * 品牌名称 - */ - private String brandName; - /** - * 规格值冗余 - */ - @Excel(name = "商品规格") - private String specValueNames; - - /** - * 来源渠道 - */ - private Integer source; - /** - * 来源渠道显示 - */ - @Excel(name = "平台") - private String sourceVal; - - /** - * 协议价(供应价) - */ - @Excel(name = "供应价(¥)") - private BigDecimal agreementPrice; - /** - * 商品售价 - */ - @Excel(name = "售价(¥)") - private BigDecimal price; - /** - * 商品pv - */ - @Excel(name = "业绩(¥)") - private BigDecimal achieve; - - /** - * 商品PV(美元) - */ - @Excel(name = "业绩($)") - private BigDecimal achievementDollar; - /** - * 分享pv - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - @Excel(name = "毛利润(¥)") - private BigDecimal grossProfit; - /** - * 净利润 - */ - @Excel(name = "纯利润(¥)") - private BigDecimal netProfit; - - /** - * 是否上架(0=上架,1=下架) - */ - private Integer isPutOn; - - /** - * 是否推荐(0=推荐,1=不推荐) - */ - @Transaction(transactionKey = EnumsPrefixConstants.RECOMMEND_TYPE) - private Integer isRecommend; - /** - * 是否推荐 - */ - private String isRecommendVal; - - /** - * 商品分类(一级分类) - */ - private Long pkCategoryOne; - /** - * 一级分类名称 - */ - private String titleCategoryOne; - - /** - * 商品分类(二级分类) - */ - private Long pkCategoryTwo; - /** - * 一级分类名称 - */ - private String titleCategoryTwo; - - /** - * 商品分类(三级分类) - */ - private Long pkCategoryThree; - /** - * 一级分类名称 - */ - private String titleCategoryThree; - - - /** - * 虚拟销量 - */ - @Excel(name = "虚拟销量") - private Integer sale; - - /** - * 实际销量 - */ - @Excel(name = "实际销量") - private Integer realSale; - - /** - * 销量 - */ - @Excel(name = "销量") - private Integer allSale; - - /** - * 下架备注 - */ - @Excel(name = "下架说明") - private String putOnRemark; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java deleted file mode 100644 index cb29525a..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/SaTWaresSkuVo.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.hzs.sale.wares.vo;/** - * @Description: - * @Author: yuhui - * @Time: 2023/5/19 17:13 - * @Classname: SaTWaresSkuVo - * @PackageName: com.hzs.sale.wares.vo - */ - -import com.alibaba.fastjson2.JSONArray; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import lombok.Data; - -import java.math.BigDecimal; - -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.wares.vo - *@Author: yh - *@CreateTime: 2023-05-19 17:13 - *@Description: TODO - *@Version: 1.0 - */ -@Data -public class SaTWaresSkuVo { - - /** - * 主键 - */ - - private Long pkId; - - /** - * 三方商品表ID - */ - - private Long pkTWares; - - /** - * 同步三方商品规格TID - */ - - private Long pkThWaresSku; - - /** - * 规格ID冗余 - */ - - private String specValueIds; - - /** - * 规格值冗余 - */ - - private String specValueNames; - - /** - * 商品价格 - */ - - private BigDecimal price; - - /** - * 商品pv - */ - - private BigDecimal achieve; - - /** - * 商品bv - */ - - private BigDecimal assAchieve; - - /** - * 规格图片 - */ - - private String image; - - /** - * 是否上架(0=上架,1=下架) - */ - - private Integer isPutOn; - - /** - * 重量 - */ - - private Integer weight; - - - /** - * 默认规格 - */ - private JSONArray productGroup; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java deleted file mode 100644 index 3fd39086..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/wares/vo/TWaresQueryVO.java +++ /dev/null @@ -1,136 +0,0 @@ -package com.hzs.sale.wares.vo; - -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.math.BigDecimal; - -/** - * @Description: 三方商品定价查询VO - * @Author: jiang chao - * @Time: 2023/5/18 10:57 - * @Classname: TWaresQueryVO - * @PackageName: com.hzs.sale.wares.vo - */ -@NoArgsConstructor -@AllArgsConstructor -@Builder -@Data -public class TWaresQueryVO { - - /** - * 产品主键 - */ - private Long pkId; - /** - * 商品主键 - */ - private Long pkTWares; - - /** - * skuId - */ - private Long tId; - /** - * 商品ID - */ - private Long pkThWares; - - /** - * 商品名称 - */ - private String title; - /** - * 商品图片 - */ - private String cover; - /** - * 商品分类(全部级别,需要处理后返回) - */ - private String thirdCategoryName; - - /** - * 商品分类(一级分类) - */ - private String category; - /** - * 商品类目(二级分类) - */ - private String classify; - - /** - * 品牌名称 - */ - private String thirdBrandName; - - /** - * 规格值组合 - */ - private String specValueNames; - - /** - * 来源平台 - */ - private Integer source; - /** - * 来源平台显示 - */ - private String sourceVal; - - /** - * 规格协议价(单位:分) 供应价 - */ - private BigDecimal agreementPrice; - /** - * 规格指导价(单位:分) - */ - private BigDecimal guidePrice; - - /** - * 上下架状态(0=下架,1=上架) -- 三方状态,需要转换成系统状态 - */ - private Integer status; - - /** - * 是否定价(0=是,1=否) - */ - private Integer confirmPrice; - - /** - * 是否显示(0=显示,1=隐藏) - */ - private Integer showFlag; - - /** - * 售价 - */ - private BigDecimal price; - - /** - * 业绩 - */ - private BigDecimal achievement; - - /** - * 业绩(美元) - */ - private BigDecimal achievementDollar; - - /** - * 分享业绩 - */ - private BigDecimal shareAchieve; - - /** - * 毛利润 - */ - private BigDecimal grossProfit; - - /** - * 净利润 - */ - private BigDecimal netProfit; - -} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml index 29ac4929..c1fde690 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/base/AcBaseConfigMapper.xml @@ -96,32 +96,4 @@ and trunc(sysdate) between b.act_start_date and b.act_end_date - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml index 4d6d4ca3..da7f91e4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickLogMapper.xml @@ -2,45 +2,4 @@ - - - merge into AC_RETAIL_PICK_LOG arpl - using (SELECT sum(soi.WARES_QUANTITY) quantity, so.pk_member pk_member - FROM sa_order so - INNER JOIN SA_ORDER_ITEMS soi - ON so.pk_id = soi.pk_order - WHERE so.del_flag = 0 - and so.order_status = 1 - and so.order_type in (41, 42, 43) - and so.system_type = #{systemType} - and soi.del_flag = 0 - and soi.is_gift = 1 - and soi.pk_wares in - - #{item} - - and so.pay_time >= #{startDate, jdbcType=DATE} - and so.pay_time < #{endDate, jdbcType=DATE} - group by so.pk_member - having sum(soi.WARES_QUANTITY) >= #{waresQuantity}) tmp - on (arpl.del_flag = 0 and arpl.PK_MEMBER = tmp.pk_member and arpl.PK_BASE_ID = #{pkBaseId}) - when not matched then - insert ( - PK_ID, - PK_BASE_ID, - PK_MEMBER, - WARES_QUANTITY, - GIFT_QUANTITY, - PK_CREATOR, - CREATION_TIME) - values ( - AC_RETAIL_PICK_LOG_SEQ.Nextval, - #{pkBaseId}, - tmp.pk_member, - tmp.quantity, - trunc(tmp.quantity / #{waresQuantity}) * #{giftQuantity}, - 100000000, - #{createDate}) - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml index 479c8476..51a7a4a0 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcRetailPickMapper.xml @@ -18,27 +18,6 @@ and arp.used_quantity + #{quantity} >= 0
- - - merge into AC_RETAIL_PICK arp - using (select * - from AC_RETAIL_PICK_LOG arpl - where arpl.del_flag = 0 - and arpl.pk_base_id = #{pkBaseId} - and to_char(arpl.creation_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{nowDate}, 'yyyy-mm-dd hh24:mi:ss')) tmp - on (arp.pk_member = tmp.pk_member and arp.del_flag = 0) - when not matched then - insert - (PK_ID, PK_MEMBER, USABLE_QUANTITY, PK_CREATOR, CREATION_TIME) - values (AC_RETAIL_PICK_SEQ.Nextval, - tmp.pk_member, - tmp.gift_quantity, - tmp.PK_CREATOR, - tmp.CREATION_TIME) - when matched then - update set arp.usable_quantity = arp.usable_quantity + tmp.gift_quantity - - - select dr.pk_base_id,dr.order_type,dr.order_amount,dr.order_achieve,dr.ratio_type, - dr.ratio_value,ba.pk_country from ac_base_config ba - inner join AC_REPUR_COUPONS_RULE_CONFIG dr - on dr.pk_base_id = ba.pk_id - where ba.del_flag = 0 and dr.del_flag=0 - and ba.act_start_date <= #{settleDate, jdbcType=DATE} and ba.act_end_date >= #{settleDate, jdbcType=DATE} - order by dr.pk_base_id,dr.ORDER_ACHIEVE desc - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml index e86b6c03..4fa738f3 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRepurSharRuleConfigMapper.xml @@ -2,48 +2,4 @@ - - - - - - - - - - - - - - - - - - - - update ac_repur_shar_rule_config c - set c.del_flag = 1, c.modified_time = sysdate, c.pk_modified = #{pkModifyId} - where c.pk_order_type in (select t.pk_id - from ac_repur_shar_order_type t - where t.del_flag = 0 - and t.pk_base_id = #{activityId} - and t.order_type in - - #{item} - - ) - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml index 6c78b2c4..37194cb7 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderItemsMapper.xml @@ -740,22 +740,6 @@ - - - - - - select so.order_code,so.order_type,so.pk_rate,so.order_amount,so.order_achieve,so.postage, cm.member_code,cm.member_name,par.member_code REFERENCE,par.member_name referenceName,so.rec_name,so.rec_phone, @@ -205,44 +166,6 @@ - - - select so.pk_id, - so.pk_member, - so.order_code, - so.order_type, - so.pk_rate, - so.order_amount, - so.order_achieve, - so.upload_achieve, - so.del_flag, - so.pk_reference, - so.pk_vertex, - so.pk_country, - so.pay_time,bh.pk_corp,so.pk_storehouse, - st.pk_id items_id, - bp.unit pk_unit, - st.pk_product, - st.pk_wares, - st.price, - st.achievement, - st.quantity, - st.pk_grade, - st.pk_awards, - st.pk_wares_specs_sku, - st.pk_wares_detail, - st.wares_quantity, - st.is_gift, - st.specs_name, - st.ass_achievement, - st.is_maker_gift,nvl(st.pk_storehouse,so.pk_storehouse) item_pk_storehouse - from sa_order so - inner join sa_order_items st - on so.pk_id = st.pk_order - inner join bd_product bp - on bp.pk_id=st.pk_product - inner join sa_deliver_items sd - on st.pk_id = sd.pk_order_items - left join bd_storehouse bh - on bh.pk_id=so.pk_storehouse - where so.del_flag=0 and st.del_flag=0 and so.order_status = 1 - and bp.del_flag=0 and st.order_status >= 3 - and sd.pk_id in - - #{item.pkId} - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml index 1b98af63..591cf9e1 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/order/SaOrderWaresLimitMapper.xml @@ -2,90 +2,4 @@ - - - - - - merge into sa_order_wares_limit sowl - using ( - - select #{item.pkMember} PK_MEMBER, - #{item.orderType} ORDER_TYPE, - #{item.pkWares} PK_WARES, - #{item.waresQuantity} WARES_QUANTITY, - #{item.limitDate} LIMIT_DATE, - #{item.pkCountry} PK_COUNTRY - from dual - - ) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - WHEN MATCHED THEN - update set sowl.WARES_QUANTITY = sowl.WARES_QUANTITY + tmp.WARES_QUANTITY - WHEN NOT MATCHED THEN - insert - (PK_ID, - PK_MEMBER, - ORDER_TYPE, - PK_WARES, - WARES_QUANTITY, - LIMIT_DATE, - PK_COUNTRY, - PK_CREATOR) - values - (sa_order_wares_limit_seq.nextval, - tmp.pk_member, - tmp.order_type, - tmp.pk_wares, - tmp.wares_quantity, - tmp.limit_date, - tmp.pk_country, - tmp.pk_member) - - - - - merge into SA_ORDER_WARES_LIMIT sowl - using (select so.pk_member PK_MEMBER, - so.order_type ORDER_TYPE, - soi.pk_wares PK_WARES, - sum(soi.wares_quantity) WARES_QUANTITY, - to_char(so.pay_time, 'yyyymm') LIMIT_DATE - from sa_order so - left join sa_order_items soi - on soi.pk_order = so.pk_id - and soi.is_gift = 1 - and to_char(soi.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - left join bd_wares bw - on bw.pk_id = soi.pk_wares - where so.order_status = 1 - and so.pk_id = #{pkOrder} - and so.pk_member = #{pkMember} - and to_char(so.modified_time, 'yyyy-mm-dd hh24:mi:ss') = to_char(#{modifiedTime}, 'yyyy-mm-dd hh24:mi:ss') - and bw.wares_code in - - #{item} - - group by so.pk_member, so.order_type, soi.pk_wares, so.pay_time) tmp - on (sowl.pk_member = tmp.pk_member and sowl.order_type = tmp.order_type and sowl.pk_wares = tmp.pk_wares and sowl.limit_date = tmp.limit_date and sowl.del_flag = 0) - when matched then - update set sowl.wares_quantity = sowl.wares_quantity - tmp.wares_quantity - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdAreaClassifyMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdAreaClassifyMapper.xml index 1481b00e..57efd4e5 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdAreaClassifyMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdAreaClassifyMapper.xml @@ -4,41 +4,37 @@ - + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + - - - PK_ID, CLASSIFY_NAME, PK_TRANSACTION_KEY, SORT, ENABLE_STATE, PK_PARENT, CLASSIFY_IMG, PK_CREATOR, CREATION_TIME, PK_MODIFIED, MODIFIED_TIME, DEL_FLAG, PK_COUNTRY - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml index 30467ca6..e094cd42 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdClassifyMapper.xml @@ -2,19 +2,4 @@ - - - - - - - - - - - - - PK_ID, NAME, PK_TRANSACTION_KEY, SORT, ENABLE_STATE - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml index 8735eaf3..36c65345 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml @@ -186,22 +186,6 @@ order by bp.product_name - - select st.* ,bc.NAME classifyName from BD_SPECS_TYPE st @@ -43,8 +39,7 @@ and st.PK_COUNTRY = #{pkCountry} - order by st.sort - + order by st.sort diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml index 6e63e48c..12733619 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/refund/SaRefundMapper.xml @@ -2,87 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - - - diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml index 86f5b30e..4d7f25d6 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresDetailMapper.xml @@ -179,19 +179,6 @@ and wd.PK_WARES = #{pkWares} - - - - - - - - + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml index 06418e05..432196b4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/wares/BdWaresSpecsSkuMapper.xml @@ -357,4 +357,23 @@ + + + diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java index 22cfeed1..103ca5ff 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/controller/manage/BdTransactionController.java @@ -29,9 +29,6 @@ import java.util.*; /** * 国际化翻译控制器 - * - * @author hzs - * @since 2022-08-08 */ @Slf4j @RestController @@ -148,11 +145,7 @@ public class BdTransactionController extends BaseController { } /** - * @description: 下载模板 - * @author: zhang jing - * @date: 2023/4/6 11:48 - * @param: [response] - * @return: void + * 下载模板 **/ @PostMapping("/download") public void download(HttpServletResponse response) { @@ -180,22 +173,6 @@ public class BdTransactionController extends BaseController { return AjaxResult.success(iBdTransactionService.importData(ordersList, updateSupport, SecurityUtils.getUserId())); } - /** - * 初始化语种(以中文为准,翻译为其它语种) - * - * @param language 语种 - * @return - */ - @GetMapping("/init-languages") - public AjaxResult initLanguages(@RequestParam("language") Integer language) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - - return toAjax(iBdTransactionService.initToLanguage(eLanguages)); - } - /** * 刷新资源缓存 * @@ -265,20 +242,4 @@ public class BdTransactionController extends BaseController { return AjaxResult.error("翻译刷新处理失败"); } - /** - * 以指定语种为基础初始数据资源 - * - * @param language 基础语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - @GetMapping("/init-other-language/{language}") - public AjaxResult initOtherLanguage(@PathVariable("language") Integer language, @RequestParam List pkIdList) { - ELanguages eLanguages = ELanguages.getLanguagesByValue(language); - if (null == eLanguages) { - return AjaxResult.error("语种不存在"); - } - return toAjax(iBdTransactionService.initOtherLanguage(eLanguages, pkIdList)); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdNoticeMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdNoticeMapper.java index 29ea92d5..9c011ea2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdNoticeMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdNoticeMapper.java @@ -9,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 公告表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-09 */ public interface BdNoticeMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdProductStorehouseMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdProductStorehouseMapper.java index 831850f4..bdb84d31 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdProductStorehouseMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdProductStorehouseMapper.java @@ -2,9 +2,7 @@ package com.hzs.system.base.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.base.BdProductStorehouse; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.system.base.vo.BdProductStorehouseVO; -import org.apache.ibatis.annotations.Param; import java.util.List; @@ -18,8 +16,4 @@ public interface BdProductStorehouseMapper extends BaseMapper getProductStorehouseList(BdProductStorehouseVO productStorehouseVO); - /* - * 查询省绑定的产品仓库 - **/ - List queryBdProductStorehouseByCondition(@Param("productId") List productId, @Param("province") Integer province); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdStorehouseMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdStorehouseMapper.java index cf98f2aa..7988bf6a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdStorehouseMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdStorehouseMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.base.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.system.base.vo.BdStorehouseVO; @@ -8,17 +7,13 @@ import com.hzs.system.base.vo.BdStorehouseVO; import java.util.List; /** - *

- * 仓库信息Mapper 接口 - *

- * - * @author hzs - * @since 2022-08-02 + * 仓库信息Mapper 接口 */ public interface BdStorehouseMapper extends BaseMapper { /** * 查询仓库列表信息 + * * @param bdStorehouse * @return */ @@ -26,6 +21,7 @@ public interface BdStorehouseMapper extends BaseMapper { /** * 获取单条仓库信息 + * * @param bdStorehouse * @return */ @@ -33,6 +29,7 @@ public interface BdStorehouseMapper extends BaseMapper { /** * 校验仓库信息是否重复 + * * @param bdStorehouse * @return */ diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java index 824ca591..a51e75f4 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/mapper/BdTransactionMapper.java @@ -12,9 +12,6 @@ import java.util.Set; /** * 统一翻译表 Mapper 接口 - * - * @author hzs - * @since 2022-08-08 */ public interface BdTransactionMapper extends BaseMapper { @@ -42,16 +39,6 @@ public interface BdTransactionMapper extends BaseMapper { */ int updateTransactionExt(TransactionParam transactionParam); - /** - * 查询国际化指定内容 - * - * @param content 翻译内容 - * @param from 来源字段 - * @param to 返回字段 - * @return - */ - String queryTransactionContent(@Param("content") String content, @Param("from") String from, @Param("to") String to); - /** * 查询国际化指定内容列表 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/AreaServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/AreaServiceProvider.java index 06e1a3d7..cd74331e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/AreaServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/AreaServiceProvider.java @@ -5,11 +5,9 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.base.BdArea; import com.hzs.common.domain.system.base.ext.AreaCache; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.dto.AreaDTO; import com.hzs.system.base.service.IBdAreaService; -import com.hzs.system.base.service.IBdProductStorehouseService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -28,9 +26,6 @@ public class AreaServiceProvider implements IAreaServiceApi { @Autowired private IBdAreaService iBdAreaService; - @Autowired - private IBdProductStorehouseService bdProductStorehouseService; - @Override public R> getAreaMap(Integer pkCountry) { Map resultMap = new HashMap<>(); @@ -74,8 +69,4 @@ public class AreaServiceProvider implements IAreaServiceApi { } } - @Override - public R> queryBdProductStorehouseByCondition(List productId, Integer province) { - return R.ok(bdProductStorehouseService.queryBdProductStorehouseByCondition(productId, province)); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/CurrencyServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/CurrencyServiceProvider.java index 48c25dd3..51ff5c9f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/CurrencyServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/CurrencyServiceProvider.java @@ -1,20 +1,13 @@ package com.hzs.system.base.provider; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.base.BdCurrency; import com.hzs.common.domain.system.base.BdStorehouse; -import com.hzs.common.domain.system.base.ext.BdCubasdocExt; -import com.hzs.common.domain.system.sys.SysCorp; import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; -import com.hzs.system.base.param.BdCubasdocParam; -import com.hzs.system.base.service.IBdCubasdocService; import com.hzs.system.base.service.IBdCurrencyService; import com.hzs.system.base.service.IBdStorehouseAreaMiddleService; -import com.hzs.system.base.service.IBdStorehouseService; -import com.hzs.system.sys.service.ISysCorpService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; @@ -28,12 +21,6 @@ public class CurrencyServiceProvider implements ICurrencyServiceApi { private IBdCurrencyService currencyService; @Autowired private IBdStorehouseAreaMiddleService storehouseAreaMiddleService; - @Autowired - private IBdCubasdocService bdCubasdocService; - @Autowired - private ISysCorpService sysCorpService; - @Autowired - private IBdStorehouseService storehouseService; @Override public R getCurrency(Integer pkCountry) { @@ -76,11 +63,6 @@ public class CurrencyServiceProvider implements ICurrencyServiceApi { return R.ok(storehouseAreaMiddleService.queryBdStorehouseByProvince(province, storeType)); } - @Override - public R queryBdStorehouseById(Integer pkId) { - return R.ok(storehouseService.getById(pkId)); - } - @Override public R> queryBdStorehouseMapByProvince(Collection provinceList) { return R.ok(storehouseAreaMiddleService.queryStorehouseListByProvince(provinceList)); @@ -98,40 +80,4 @@ public class CurrencyServiceProvider implements ICurrencyServiceApi { List currencyDtoList = currencyList.stream().map(currency -> BeanUtil.copyProperties(currency, CurrencyDTO.class)).collect(Collectors.toList()); return R.ok(currencyDtoList); } - - @Override - public R queryBdCubasdocById(Integer pkId, Integer pkCountry) { - BdCubasdocParam cubasdocParam = BdCubasdocParam.builder() - .pkCountry(pkCountry) - .pkId(pkId) - .build(); - List bdCubasdocList = bdCubasdocService.querySupplierByCondition(cubasdocParam); - if (CollectionUtil.isNotEmpty(bdCubasdocList)) { - return R.ok(bdCubasdocList.get(0)); - } - return R.ok(null); - } - - @Override - public R queryBdCustomerById(Integer pkId, Integer pkCountry) { - BdCubasdocParam customerParam = BdCubasdocParam.builder() - .pkCountry(pkCountry) - .pkId(pkId) - .build(); - List bdCubasdocList = bdCubasdocService.queryCustomerByCondition(customerParam); - if (CollectionUtil.isNotEmpty(bdCubasdocList)) { - return R.ok(bdCubasdocList.get(0)); - } - return R.ok(null); - } - - @Override - public R querySysCorp(Integer pkId, Integer pkCountry) { - return R.ok(sysCorpService.getSysCorp(pkId, pkCountry)); - } - - @Override - public R> queryStorehouseByIds(Set storehouseIdSet, Integer pkCountry, Integer pkCorp) { - return R.ok(storehouseService.queryStorehouseByIds(storehouseIdSet, pkCountry, pkCorp)); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/NoticeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/NoticeServiceProvider.java index e9e71d68..b4510dca 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/NoticeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/NoticeServiceProvider.java @@ -18,20 +18,15 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; - /** - * @Description: 会员钱包审核Doubbo服务 - * @Author: ljc - * @Time: 2022/9/24 13:53 - * @Classname: IMemberAccountAuditServiceProvider - * @Package_name: com.hzs.member.account.provider + * 会员钱包审核Doubbo服务 */ @Slf4j @DubboService public class NoticeServiceProvider implements INoticeAuditServiceApi { @Autowired - IBdNoticeService bdNoticeService; + private IBdNoticeService iBdNoticeService; @Override public R noticeAuditProcess(ApprovalBusinessResultDTO approvalBusinessResultDTO) { @@ -51,7 +46,7 @@ public class NoticeServiceProvider implements INoticeAuditServiceApi { if (null != bdNotice && null != bdNotice.getPkId()) { //修改公告、站内信信息,审批通过 则原有的公告逻辑删除、新增的更改审批状态 if (approveOperation.equals(EApproveOperation.AGREE.getValue())) { - bdNoticeService.deleteNoticeById(bdNotice.getPkId(), approvalBusinessResultDTO.getLoginUser().getUserId()); + iBdNoticeService.deleteNoticeById(bdNotice.getPkId(), approvalBusinessResultDTO.getLoginUser().getUserId()); } else { //驳回 原有的公告不处理、新增的公告变为修改状态 } @@ -65,7 +60,7 @@ public class NoticeServiceProvider implements INoticeAuditServiceApi { } if (isDelete) { BdNotice notice = dtoToParam(approvalBusinessResultDTO, approveOperation + 1); - return R.ok(bdNoticeService.updateNoticeByBatch(notice)); + return R.ok(iBdNoticeService.updateNoticeByBatch(notice)); } else { return R.ok(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/PlatformMessageServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/PlatformMessageServiceProvider.java index 0a624120..1098c937 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/PlatformMessageServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/PlatformMessageServiceProvider.java @@ -14,25 +14,19 @@ import java.util.List; /** * 后台站内信服务 - * - * @Description: - * @Author: ljc - * @Time: 2023/4/5 21:34 - * @Classname: PlatformMessageServiceProvider - * @Package_name: com.hzs.system.base.provider */ @Slf4j @DubboService public class PlatformMessageServiceProvider implements IApprovalPushInfo { @Autowired - private IBdPlatformMessageService bdPlatformMessageService; + private IBdPlatformMessageService iBdPlatformMessageService; @Override public R approvalPushInfo(List approvalPushInfoDTOList) { List bdPlatformMessageDetailVOList = BeanUtil.copyToList(approvalPushInfoDTOList, BdPlatformMessageDetailVO.class); try { - Boolean result = bdPlatformMessageService.approvalPushInfo(bdPlatformMessageDetailVOList); + Boolean result = iBdPlatformMessageService.approvalPushInfo(bdPlatformMessageDetailVOList); if (result) { return R.ok(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/SystemConfigServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/SystemConfigServiceProvider.java index 98db36c4..32a55518 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/SystemConfigServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/SystemConfigServiceProvider.java @@ -3,7 +3,6 @@ package com.hzs.system.base.provider; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.ESystemConfig; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.base.ext.BdCubasdocExt; @@ -35,32 +34,6 @@ public class SystemConfigServiceProvider implements ISystemConfigServiceApi { return R.ok(iBdSystemConfigService.getSystemConfig(pkCountry, key)); } - @Override - public R> getBonusSystemConfig(Integer pkCountry) { - return R.ok(iBdSystemConfigService.getSystemConfig(pkCountry)); - } - - @Override - public R> getBonusSystemConfig() { - List countryList = iBdCountryService.getAllCountry(); - Map systemConfigMap = new HashMap<>(ComputeUtil.mapInitCapacity(countryList.size())); - countryList.forEach(bdCountry -> { - Integer pkCountry = bdCountry.getPkId(); - Map systemConfig = iBdSystemConfigService.getSystemConfig(pkCountry); - if (systemConfig.size() > 0) { - systemConfig.forEach((key, value) -> { - if (ESystemConfig.BONUS_RECOMMEND_TYPE.getKey().equals(key) || - ESystemConfig.BONUS_UPGRADE_INCOME_TYPE.getKey().equals(key) || - ESystemConfig.UPGRADE_WAY.getKey().equals(key) || - ESystemConfig.EXPAND_CAP_METHOD.getKey().equals(key)) { - systemConfigMap.put(pkCountry.toString() + key, value); - } - }); - } - }); - return R.ok(systemConfigMap); - } - @Override public R> getSystemConfig() { List countryList = iBdCountryService.getAllCountry(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/TransactionServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/TransactionServiceProvider.java index ff3e315b..7de82e05 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/TransactionServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/provider/TransactionServiceProvider.java @@ -1,9 +1,7 @@ package com.hzs.system.base.provider; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.MagicNumberConstants; @@ -15,13 +13,11 @@ import com.hzs.common.core.enums.ETransactionKey; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ThreadUtils; -import com.hzs.common.core.utils.reflect.ReflectUtils; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.base.BdTransaction; import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; import com.hzs.system.base.ITransactionServiceApi; -import com.hzs.system.base.dto.TransactionDTO; import com.hzs.system.base.service.IBdCountryService; import com.hzs.system.base.service.IBdTransactionService; import lombok.extern.slf4j.Slf4j; @@ -48,60 +44,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { @Autowired private RedisService redisService; - /** - * 根据key读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param content 翻译内容 - * @param toLocal 返回语言 - * @return - */ - @Override - public R readTransactionByDataBase(Integer fromCountry, String content, String toLocal) { - // 获取对应国家 - BdCountry bdCountry = iBdCountryService.getCountry(fromCountry); - if (null == bdCountry) { - return R.fail("国家不存在"); - } - // 获取对应语言 - ELanguages fromLanguage = ELanguages.getLanguagesByValue(bdCountry.getLanguages()); - ELanguages toLanguage = ELanguages.getLanguagesByLocal(toLocal); - if (null == fromLanguage || null == toLanguage) { - return R.fail("语言不存在"); - } - return R.ok(iBdTransactionService.queryTransactionContent(content, fromLanguage.getColumn(), toLanguage.getColumn())); - } - - /** - * 根据key列表读取数据库翻译 - * - * @param fromCountry 来源国家(数据结算国) - * @param contentList 翻译内容列表 - * @param toLocal 返回语言 - * @return - */ - @Override - public R> readTransactionListByDataBase(Integer fromCountry, Set contentList, String toLocal) { - // 获取对应国家 - BdCountry bdCountry = iBdCountryService.getCountry(fromCountry); - if (null == bdCountry) { - return R.fail("国家不存在"); - } - // 获取对应语言 - ELanguages fromLanguage = ELanguages.getLanguagesByValue(bdCountry.getLanguages()); - ELanguages toLanguage = ELanguages.getLanguagesByLocal(toLocal); - if (null == fromLanguage || null == toLanguage) { - return R.fail("语言不存在"); - } - return R.ok(this.queryTransactionListByDataBase(contentList, fromLanguage, toLanguage)); - } - - /** - * 根据key读取缓存翻译 - * - * @param key 翻译key(key规则 + 实际数据ID) - * @return - */ @Override public R readTransactionByCache(String key, String toLocal) { // 获取对应语言 @@ -112,13 +54,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(redisService.getCacheMapValue(CacheConstants.LANGUAGE_KEY + language.getLocal(), key)); } - /** - * 根据key列表读取缓存翻译 - * - * @param keySet 翻译key列表(key规则 + 实际数据ID) - * @param toLocal 返回语言 - * @return - */ @Override public R> readTransactionListByCache(Set keySet, String toLocal) { // 获取对应语言 @@ -129,12 +64,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(this.queryTransactionListByCache(keySet, toLanguage)); } - /** - * 根据key前缀列表读取数据库翻译 - * - * @param keyPrefixSet 翻译key前缀列表(EnumsPrefixConstants中的前缀) - * @return - */ @Override public R> readTransactionListDataBase(Set keyPrefixSet, String toLocal) { // 获取对应语言 @@ -173,14 +102,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(resultMap); } - /** - * 数据库+缓存同时查询 - * - * @param fromCountry 来源国家(数据结算国) - * @param contentList 翻译内容列表 - * @param keyList 翻译key(key规则 + 实际数据ID) - * @return - */ @Override public R> readTransactionAll(Integer fromCountry, Set contentList, Set keyList, String toLocal) { // 获取对应国家 @@ -223,43 +144,11 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(resultMap); } - - /** - * 创建国际化翻译(只写入缓存) - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @return - */ - @Override - public R createTransactionCacheOnly(Integer pkCountry, ETransactionKey key, String content) { - return this.createTransaction(pkCountry, key, content, EYesNo.YES, EYesNo.NO); - } - - /** - * 创建国际化翻译(写入缓存,上传OSS) - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @return - */ @Override public R createTransaction(Integer pkCountry, ETransactionKey key, String content) { return this.createTransaction(pkCountry, key, content, EYesNo.YES, EYesNo.YES); } - /** - * 创建国际化翻译 - * - * @param pkCountry 结算国 - * @param key 翻译key规则 - * @param content 翻译内容 - * @param cacheFlag 是否写入缓存 - * @param uploadFlag 是否上传OSS - * @return - */ @Override public R createTransaction(Integer pkCountry, ETransactionKey key, String content, EYesNo cacheFlag, EYesNo uploadFlag) { // 获取对应国家 @@ -304,18 +193,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(); } - @Override - public R removeTransactionByKey(List keyList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.in("KEY", keyList); - List transactionList = iBdTransactionService.list(queryWrapper); - if (CollectionUtil.isNotEmpty(transactionList)) { - // 删除翻译并清除缓存 - this.removeTransaction(transactionList, true); - } - return R.ok(); - } - /** * 删除翻译并清除缓存 * @@ -404,7 +281,6 @@ public class TransactionServiceProvider implements ITransactionServiceApi { log.info("==========更新翻译传入数据: pkId: {}, content: {}", pkId, content); log.info("==========更新翻译查询数据:{}", JSONUtil.toJsonStr(transaction)); - // 获取对应国家 BdCountry bdCountry = iBdCountryService.getCountry(pkCountry); if (null == bdCountry) { @@ -433,30 +309,4 @@ public class TransactionServiceProvider implements ITransactionServiceApi { return R.ok(); } - - @Override - public R updateTransactionSync(TransactionDTO transactionDTO) { - if (null == transactionDTO.getPkId()) { - return R.fail("缺少翻译主键"); - } - BdTransaction transaction = BeanUtil.copyProperties(transactionDTO, BdTransaction.class); - transaction.setPkModified(MagicNumberConstants.PK_ADMIN); - transaction.setModifiedTime(new Date()); - - if (iBdTransactionService.updateById(transaction)) { - // 更新成功 - transaction = iBdTransactionService.getById(transactionDTO.getPkId()); - - // 判断是否需要更新缓存 - if (EYesNo.YES.getIntValue() == transaction.getIsCache()) { - // 根据目前语种枚举,生成对应数据集合 - for (ELanguages eLanguages : ELanguages.values()) { - redisService.setCacheMapValue(CacheConstants.LANGUAGE_KEY + eLanguages.getLocal(), transaction.getKey(), ReflectUtils.invokeGetter(transaction, eLanguages.getColumn())); - } - } - return R.ok(); - } - return R.fail(); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdCurrencyService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdCurrencyService.java index be79932e..166d9334 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdCurrencyService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdCurrencyService.java @@ -6,22 +6,12 @@ import com.hzs.common.domain.system.base.BdCurrency; import java.math.BigDecimal; import java.util.List; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/8/29 10:59 - * @Classname: IBdCurrencyService - * @PackageName: com.hzs.system.base.service - */ public interface IBdCurrencyService extends IService { /** * 根据国家获得币种 * * @param pkCountry 国家 - * @return: BdCurrency - * @Author: sui q - * @Date: 2022/9/8 15:05 */ BdCurrency getCurrency(Integer pkCountry); @@ -50,10 +40,6 @@ public interface IBdCurrencyService extends IService { /** * 查询所有的币种汇率 - * - * @return: List - * @Author: sui q - * @Date: 2023/3/4 16:06 */ List queryAllBdCurrency(); @@ -61,9 +47,6 @@ public interface IBdCurrencyService extends IService { * 更新汇率根据id * * @param pkId 主键 - * @return: void - * @Author: sui q - * @Date: 2023/3/10 15:37 */ void updateCurrencyById(Integer pkId); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdNoticeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdNoticeService.java index b536683b..42efdb6a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdNoticeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdNoticeService.java @@ -13,9 +13,6 @@ import java.util.Map; /** * 公告表 服务类 - * - * @author hzs - * @since 2022-08-09 */ public interface IBdNoticeService extends IService { @@ -93,7 +90,6 @@ public interface IBdNoticeService extends IService { */ BdNoticeVO showIndexNoticeDetail(Long pkId, Integer pkCountry, Long pkMember); - /** * 管理端显示公告、站内信详情 * @@ -102,22 +98,13 @@ public interface IBdNoticeService extends IService { */ BdNoticeVO showNoticeDetail(Long pkId); - /** - * @description: 获取等级的翻译KEY值 - * @author: zhang jing - * @date: 2023/3/2 12:00 - * @param: [pkId, gradeMap] - * @return: java.lang.Integer + * 获取等级的翻译KEY值 **/ Integer getGradeTranslateValue(Integer pkId, Map gradeMap); /** - * @description: 获取奖衔的翻译KEY值 - * @author: zhang jing - * @date: 2023/3/2 12:00 - * @param: [pkId, awardsMap] - * @return: java.lang.Integer + * 获取奖衔的翻译KEY值 **/ Integer getAwardsTranslateValue(Integer pkId, Map awardsMap); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdProductStorehouseService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdProductStorehouseService.java index 29201261..7e37b145 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdProductStorehouseService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdProductStorehouseService.java @@ -2,7 +2,6 @@ package com.hzs.system.base.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.base.BdProductStorehouse; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.system.base.vo.BdProductStorehouseVO; import java.util.List; @@ -29,8 +28,4 @@ public interface IBdProductStorehouseService extends IService queryBdProductStorehouseByCondition(List productId, Integer province); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdStorehouseService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdStorehouseService.java index a7641c82..cfec8833 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdStorehouseService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdStorehouseService.java @@ -1,20 +1,13 @@ package com.hzs.system.base.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.system.base.vo.BdStorehouseVO; import java.util.List; -import java.util.Set; /** - *

* 仓库服务类 - *

- * - * @author hzs - * @since 2022-08-02 */ public interface IBdStorehouseService extends IService { @@ -36,19 +29,12 @@ public interface IBdStorehouseService extends IService { /** * 校验仓库信息是否重复 + * * @param bdStorehouse * @return */ BdStorehouse checkBdStorehouse(BdStorehouse bdStorehouse); - /* - * @description:根据主键查询仓库 - * @author: sui q - * @date: 2023/11/20 17:56 - * @param: null null - **/ - List queryStorehouseByIds(Set storehouseIds, Integer pkCountry, Integer pkCorp); - /** * 新增仓库信息 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java index 245347d8..23a926ab 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/IBdTransactionService.java @@ -1,7 +1,6 @@ package com.hzs.system.base.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.common.core.enums.ELanguages; import com.hzs.common.domain.system.base.BdTransaction; import com.hzs.common.domain.system.base.ext.TransactionParam; import com.hzs.common.domain.system.base.ext.TransactionResult; @@ -10,9 +9,6 @@ import java.util.*; /** * 统一翻译表 服务类 - * - * @author hzs - * @since 2022-08-08 */ public interface IBdTransactionService extends IService { @@ -51,16 +47,6 @@ public interface IBdTransactionService extends IService { */ Integer initTransaction(BdTransaction bdTransaction); - /** - * 查询国际化指定内容 - * - * @param content 翻译内容 - * @param from 来源字段 - * @param to 返回字段 - * @return - */ - String queryTransactionContent(String content, String from, String to); - /** * 查询国际化指定内容列表 * @@ -108,23 +94,6 @@ public interface IBdTransactionService extends IService { */ List queryListByColumn(String column, boolean isCache, boolean isUpload); - /** - * 初始化指定语种 - * - * @param eLanguages 指定语种 - * @return - */ - boolean initToLanguage(ELanguages eLanguages); - - /** - * 以指定语种为基础初始数据资源 - * - * @param eLanguages 指定语种 - * @param pkIdList 翻译数据ID列表 - * @return - */ - boolean initOtherLanguage(ELanguages eLanguages, List pkIdList); - /** * 刷新资源 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdCurrencyServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdCurrencyServiceImpl.java index bef16cb7..3feaef51 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdCurrencyServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdCurrencyServiceImpl.java @@ -18,10 +18,7 @@ import java.math.RoundingMode; import java.util.List; /** - * Created with IntelliJ IDEA. - * - * @Author: yuhui - * @Description: 币种服务类 + * 币种服务类 */ @Service public class BdCurrencyServiceImpl extends ServiceImpl implements IBdCurrencyService { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdNoticeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdNoticeServiceImpl.java index 0a749390..80a32899 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdNoticeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdNoticeServiceImpl.java @@ -43,9 +43,6 @@ import java.util.stream.Collectors; /** * 公告表 服务实现类 - * - * @author hzs - * @since 2022-08-09 */ @Service public class BdNoticeServiceImpl extends ServiceImpl implements IBdNoticeService { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdProductStorehouseServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdProductStorehouseServiceImpl.java index 33c2256e..190830e2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdProductStorehouseServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdProductStorehouseServiceImpl.java @@ -7,7 +7,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.domain.system.base.BdProductStorehouse; import com.hzs.common.domain.system.base.BdProductStorehouseArea; -import com.hzs.common.domain.system.base.ext.BdProductStorehouseExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.base.mapper.BdProductStorehouseMapper; import com.hzs.system.base.service.IBdProductStorehouseAreaService; @@ -101,8 +100,4 @@ public class BdProductStorehouseServiceImpl extends ServiceImpl queryBdProductStorehouseByCondition(List productId, Integer province) { - return baseMapper.queryBdProductStorehouseByCondition(productId, province); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdStorehouseServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdStorehouseServiceImpl.java index 60cc9628..2913f3a5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdStorehouseServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/base/service/impl/BdStorehouseServiceImpl.java @@ -10,7 +10,6 @@ import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.system.base.BdStorehouse; import com.hzs.common.domain.system.base.BdStorehouseAreaMiddle; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.base.mapper.BdStorehouseMapper; import com.hzs.system.base.service.IBdStorehouseAreaMiddleService; import com.hzs.system.base.service.IBdStorehouseService; @@ -20,92 +19,46 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Set; /** - *

* 仓库信息服务实现类 - *

- * - * @author hzs - * @since 2022-08-02 */ @Service public class BdStorehouseServiceImpl extends ServiceImpl implements IBdStorehouseService { - @Autowired private IBdStorehouseAreaMiddleService iBdStorehouseAreaMiddleService; - /** - * 查询仓库列表信息 - * - * @param bdStorehouse - * @return - */ + @Override public List selectBdStorehouseList(BdStorehouseVO bdStorehouse) { return baseMapper.selectBdStorehouseList(bdStorehouse); } - /** - * 新增仓库信息 - * - * @param bdStorehouseVO - * @return - */ @Transactional(rollbackFor = Exception.class) @Override public boolean intBdStorehouse(BdStorehouseVO bdStorehouseVO) { - BdStorehouse bdStorehouse= BeanUtil.copyProperties(bdStorehouseVO, BdStorehouse.class); + BdStorehouse bdStorehouse = BeanUtil.copyProperties(bdStorehouseVO, BdStorehouse.class); baseMapper.insert(bdStorehouse); - if(CollectionUtil.isNotEmpty(bdStorehouseVO.getProvinceList())){ - BdStorehouseAreaMiddleVO sam=BeanUtil.copyProperties(bdStorehouseVO, BdStorehouseAreaMiddleVO.class); + if (CollectionUtil.isNotEmpty(bdStorehouseVO.getProvinceList())) { + BdStorehouseAreaMiddleVO sam = BeanUtil.copyProperties(bdStorehouseVO, BdStorehouseAreaMiddleVO.class); sam.setPkStorehouse(bdStorehouse.getPkId()); iBdStorehouseAreaMiddleService.intStoArMiddle(sam); } return true; } - /** - * 查询单条仓库信息 - * - * @param bdStorehouse - * @return - */ @Override public BdStorehouse getBdStorehouse(BdStorehouse bdStorehouse) { return baseMapper.getBdStorehouse(bdStorehouse); } - /** - * 校验仓库信息是否重复 - * @param bdStorehouse - * @return - */ @Override public BdStorehouse checkBdStorehouse(BdStorehouse bdStorehouse) { return baseMapper.checkBdStorehouse(bdStorehouse); } - @Override - public List queryStorehouseByIds(Set storehouseIds, Integer pkCountry, Integer pkCorp) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(SystemFieldConstants.ENABLE_STATE, EYesNo.YES.getIntValue()); - queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); - queryWrapper.eq(SystemFieldConstants.PK_CORP, pkCorp); - queryWrapper.in(SystemFieldConstants.PK_ID, storehouseIds); - return baseMapper.selectList(queryWrapper); - } - - /** - * 修改保存仓库信息 - * - * @param bdStorehouse - * @return - */ @Override @Transactional(rollbackFor = Exception.class) public boolean updateBdStorehouse(BdStorehouseVO bdStorehouse) { @@ -116,26 +69,26 @@ public class BdStorehouseServiceImpl extends ServiceImpl updateWrapper1=new UpdateWrapper<>(); - updateWrapper1.eq("PK_STOREHOUSE",bdStorehouse.getPkId()); - updateWrapper1.set("DEL_FLAG",EDelFlag.DELETE.getValue()); + UpdateWrapper updateWrapper1 = new UpdateWrapper<>(); + updateWrapper1.eq("PK_STOREHOUSE", bdStorehouse.getPkId()); + updateWrapper1.set("DEL_FLAG", EDelFlag.DELETE.getValue()); iBdStorehouseAreaMiddleService.update(updateWrapper1); - if(CollectionUtil.isNotEmpty(bdStorehouse.getProvinceList())){ - for(Integer i:bdStorehouse.getProvinceList()){ - BdStorehouseAreaMiddle sa=new BdStorehouseAreaMiddle(); + if (CollectionUtil.isNotEmpty(bdStorehouse.getProvinceList())) { + for (Integer i : bdStorehouse.getProvinceList()) { + BdStorehouseAreaMiddle sa = new BdStorehouseAreaMiddle(); sa.setProvince(i); sa.setPkStorehouse(bdStorehouse.getPkId()); sa.setPkCountry(bdStorehouse.getPkCountry()); @@ -147,13 +100,6 @@ public class BdStorehouseServiceImpl extends ServiceImpl implements IBdTransactionService { - @Autowired - private RabbitTemplate rabbitTemplate; @Autowired private RedisService redisService; - - /** - * @description: 导入统一翻译信息 - * @author: zhang jing - * @date: 2023/4/27 17:17 - * @param: [transactionList, updateSupport, userId] - * @return: java.lang.String - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean importData(List transactionList, @@ -85,16 +68,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey() + transactionParam.getPkId()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - return transactionParam.getPkId(); } return null; @@ -104,17 +77,6 @@ public class BdTransactionServiceImpl extends ServiceImpl 0) { - if (null != updateOther && updateOther) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionParam.getPkId()) - .key(transactionParam.getKey()) - .column(transactionParam.getColumn()) - .columnValue(transactionParam.getColumnValue()) - .isCache(transactionParam.getIsCache()) - .build()); - } return transactionParam.getPkId(); } return null; @@ -137,11 +99,6 @@ public class BdTransactionServiceImpl extends ServiceImpl queryTransactionContentList(Set contentList, String from, String to) { return baseMapper.queryTransactionContentList(contentList, from, to); @@ -167,55 +124,6 @@ public class BdTransactionServiceImpl extends ServiceImpl transactionResultList = baseMapper.queryToColumnList(eLanguages.getColumn()); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(ELanguages.CN.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .toApiKey(eLanguages.getApiKey()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - @Override - public boolean initOtherLanguage(ELanguages eLanguages, List pkIdList) { - List transactionResultList = baseMapper.queryFromColumnList(eLanguages.getColumn(), pkIdList); - if (CollectionUtil.isNotEmpty(transactionResultList)) { - for (TransactionResult transactionResult : transactionResultList) { - // MQ异步补全其它国际化翻译 - rabbitTemplate.convertAndSend(RabbitMqConstants.TRANSLATE_EXCHANGE, RabbitMqConstants.TRANSLATE_KEY, - TransactionMqDTO.builder() - .pkId(transactionResult.getPkId()) - .column(eLanguages.getColumn()) - .columnValue(transactionResult.getFromContent()) - .isCache(EYesNo.YES.getIntValue()) - .build()); - } - } else { - log.error("{} 没有可初始化内容", eLanguages.getLabel()); - } - return true; - } - - /** - * 刷新资源 - * - * @param languages 刷新语种(ELanguages的value) - * @param isCache 是否刷新缓存 - * @param isOss 是否刷新OSS - */ @Override public void flushResources(Integer languages, boolean isCache, boolean isOss) { String column = null; diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/mapper/BdBonusServiceMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/mapper/BdBonusServiceMapper.java index fb25144c..0b60f85a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/mapper/BdBonusServiceMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/mapper/BdBonusServiceMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.bonus.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.bonus.BdBonusService; /** - *

- * Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-01 + * Mapper 接口 */ public interface BdBonusServiceMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/IBdBonusServiceService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/IBdBonusServiceService.java index d97e2f65..bbf5a721 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/IBdBonusServiceService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/IBdBonusServiceService.java @@ -1,18 +1,10 @@ package com.hzs.system.bonus.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.bonus.BdBonusService; -import java.util.List; - /** - *

- * 服务类 - *

- * - * @author hzs - * @since 2022-11-01 + * 服务类 */ public interface IBdBonusServiceService extends IService { @@ -21,11 +13,4 @@ public interface IBdBonusServiceService extends IService { */ BdBonusService getBonusServiceById(Integer pkId); - /** - * 查询所有国家的报单服务费 - * @return: List - * @Author: sui q - * @Date: 2023/2/21 16:05 - */ - List queryBonusService(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/impl/BdBonusServiceServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/impl/BdBonusServiceServiceImpl.java index 7a749320..196a1a5d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/impl/BdBonusServiceServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/bonus/service/impl/BdBonusServiceServiceImpl.java @@ -1,26 +1,16 @@ package com.hzs.system.bonus.service.impl; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.bonus.BdBonusService; -import com.hzs.common.domain.sale.product.BdAreaClassify; import com.hzs.system.bonus.mapper.BdBonusServiceMapper; import com.hzs.system.bonus.service.IBdBonusServiceService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

- * 服务实现类 - *

- * - * @author hzs - * @since 2022-11-01 + * 服务实现类 */ @Service public class BdBonusServiceServiceImpl extends ServiceImpl implements IBdBonusServiceService { @@ -28,9 +18,6 @@ public class BdBonusServiceServiceImpl extends ServiceImpl queryBonusService() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("PK_ID,SERVICE_TYPE,SERVICE_RADIO,ASSESSMENT_TYPE,PK_COUNTRY"); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdBankController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdBankController.java index a69efa1b..83d6227a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdBankController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdBankController.java @@ -2,37 +2,27 @@ package com.hzs.system.config.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.hzs.common.core.domain.R; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdBank; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.config.service.IBdBankService; import com.hzs.system.config.vo.BdBankVo; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; -import java.util.Arrays; import java.util.Date; import java.util.List; /** - * @Description: 银行配置 - * @Author: yuhui - * @Time: 2022/10/25 14:14 - * @Classname: BdBankController - * @PackageName: com.hzs.system.config.controller.manage + * 银行配置 */ @Slf4j @RestController @@ -40,36 +30,28 @@ import java.util.List; public class BdBankController extends BaseController { @Autowired - private IBdBankService bankService; + private IBdBankService iBdBankService; - @DubboReference - ITransactionServiceApi transactionServiceApi; - - /** - * @return - */ - @GetMapping("list") + @GetMapping("/list") public TableDataInfo list(BdBank bank) { - QueryWrapper queryWrapper = new QueryWrapper(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (StringUtils.isNotBlank(bank.getBankName())) { - queryWrapper.eq("BANK_NAME", bank.getBankName()); + queryWrapper.eq(BdBank::getBankName, bank.getBankName()); } - queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + queryWrapper.eq(BdBank::getPkCountry, SecurityUtils.getPkCountry()); startPage(); - List list = bankService.list(queryWrapper); + List list = iBdBankService.list(queryWrapper); return getDataTable(list); } /** * 银行下拉选列表 - * - * @return */ - @GetMapping("listNoPage") - public TableDataInfo listNoPage(BdBank bank) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); - List list = bankService.list(queryWrapper); + @GetMapping("/listNoPage") + public TableDataInfo listNoPage() { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdBank::getPkCountry, SecurityUtils.getPkCountry()); + List list = iBdBankService.list(queryWrapper); List listVo = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { list.forEach(item -> listVo.add(BeanUtil.copyProperties(item, BdBankVo.class))); @@ -82,14 +64,12 @@ public class BdBankController extends BaseController { * * @return */ - @PostMapping("save") + @PostMapping("/save") public AjaxResult save(@RequestBody BdBank bdBank) { bdBank.setPkCreator(SecurityUtils.getUserId()); bdBank.setCreationTime(new Date()); bdBank.setPkCountry(SecurityUtils.getPkCountry()); - R transaction = transactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.BANK, bdBank.getBankName(), EYesNo.NO, EYesNo.NO); - bdBank.setPkTransaction(transaction.getData()); - return AjaxResult.success(bankService.save(bdBank)); + return AjaxResult.success(iBdBankService.save(bdBank)); } /** @@ -97,14 +77,13 @@ public class BdBankController extends BaseController { * * @return */ - @PostMapping("update") + @PostMapping("/update") public AjaxResult update(@RequestBody BdBank bdBank) { - BdBank bank = bankService.getById(bdBank.getPkId()); + BdBank bank = iBdBankService.getById(bdBank.getPkId()); BeanUtil.copyProperties(bdBank, bank); bank.setPkModified(SecurityUtils.getUserId()); bank.setModifiedTime(new Date()); - transactionServiceApi.updateTransaction(SecurityUtils.getPkCountry(), bdBank.getBankName(), bank.getPkTransaction(), true); - return AjaxResult.success(bankService.updateById(bank)); + return AjaxResult.success(iBdBankService.updateById(bank)); } /** @@ -113,39 +92,32 @@ public class BdBankController extends BaseController { * @param bdBank * @return */ - @PostMapping("delete") + @PostMapping("/delete") public AjaxResult delete(@RequestBody BdBank bdBank) { - BdBank bank = bankService.getById(bdBank.getPkId()); - // 校验是否有用到银行卡的地方 如已使用则无法删除 - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_ID", bdBank.getPkId()); - updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); - updateWrapper.set("MODIFIED_TIME", new Date()); - updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - bankService.update(updateWrapper); - // 删除翻译 - transactionServiceApi.removeTransactionByPkId(Arrays.asList(bank.getPkTransaction().longValue())); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(BdBank::getPkId, bdBank.getPkId()); + updateWrapper.set(BdBank::getPkModified, SecurityUtils.getUserId()); + updateWrapper.set(BdBank::getModifiedTime, new Date()); + updateWrapper.set(BdBank::getDelFlag, EDelFlag.DELETE.getValue()); + iBdBankService.update(updateWrapper); return AjaxResult.success(); } /** * 详情 - * - * @return */ - @GetMapping("detail") + @GetMapping("/detail") public AjaxResult detail(Integer pkId) { - return AjaxResult.success(bankService.getCurrency(pkId)); + return AjaxResult.success(iBdBankService.getCurrency(pkId)); } /** * 查询全部 - * - * @return */ - @GetMapping("find-all") + @GetMapping("/find-all") public AjaxResult findAll() { - List list = bankService.list(); + List list = iBdBankService.list(); return AjaxResult.success(list); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdLabelController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdLabelController.java index ea198b53..f43486a5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdLabelController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdLabelController.java @@ -2,10 +2,8 @@ package com.hzs.system.config.controller.manage; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; @@ -14,9 +12,7 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdLabel; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.common.service.ITransactionCommonService; import com.hzs.sale.wares.IWaresServiceApi; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.config.service.IBdLabelService; import com.hzs.system.config.vo.BdLabelVO; import lombok.extern.slf4j.Slf4j; @@ -25,55 +21,37 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; -import java.util.Collections; import java.util.Date; import java.util.List; -import java.util.Map; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/10/20 14:55 - * @Classname: BdLabelController - * @PackageName: com.hzs.sale.wares.controller.manage - */ @Slf4j @RestController @RequestMapping("/manage/label") public class BdLabelController extends BaseController { @Autowired - private IBdLabelService labelService; + private IBdLabelService iBdLabelService; @DubboReference - private IWaresServiceApi waresServiceApi; - - @DubboReference - private ITransactionServiceApi iTransactionServiceApi; - - @Autowired - ITransactionCommonService iTransactionCommonService; + IWaresServiceApi iWaresServiceApi; @GetMapping("detail") public AjaxResult getBdLabelDetail(Integer labelId) { - BdLabelVO bdLabelVO = BeanUtil.copyProperties(labelService.getByPkId(labelId), BdLabelVO.class); + BdLabelVO bdLabelVO = BeanUtil.copyProperties(iBdLabelService.getByPkId(labelId), BdLabelVO.class); bdLabelVO.setLabelTransaction(bdLabelVO.getPkTransaction()); return AjaxResult.success(bdLabelVO); - } /** * 商品标签列表 - * - * @return AjaxResult */ @PostMapping("list") @Log(module = EOperationModule.LABEL_LIST, method = EOperationMethod.SELECT) public TableDataInfo list(@RequestBody BdLabelVO bdLabelVO) { Integer pkCountry = SecurityUtils.getPkCountry(); bdLabelVO.setPkCountry(pkCountry); - List bdLabels = labelService.getLabelByPkCountry(bdLabelVO); + List bdLabels = iBdLabelService.getLabelByPkCountry(bdLabelVO); TableDataInfo dataTable = getDataTable(bdLabels); List labelVOList = BeanUtil.copyToList(bdLabels, BdLabelVO.class); dataTable.setRows(labelVOList); @@ -82,9 +60,6 @@ public class BdLabelController extends BaseController { /** * 新增标签 - * - * @param bdLabelVO - * @return AjaxResult */ @PostMapping("save") @Log(module = EOperationModule.LABEL_SAVE, method = EOperationMethod.INSERT) @@ -104,36 +79,25 @@ public class BdLabelController extends BaseController { BdLabel bdLabel = BeanUtil.copyProperties(bdLabelVO, BdLabel.class); bdLabel.setPkCountry(SecurityUtils.getPkCountry()); bdLabel.setPkCreator(SecurityUtils.getUserId()); - R pkTransactionKey = iTransactionServiceApi.createTransaction(SecurityUtils.getPkCountry(), ETransactionKey.LABEL, - label, EYesNo.NO, EYesNo.NO); - bdLabel.setPkTransaction(pkTransactionKey.getData()); - return toAjax(labelService.save(bdLabel)); + return toAjax(iBdLabelService.save(bdLabel)); } /** * 删除标签 - * - * @param pkId - * @return */ @GetMapping("delete") @Log(module = EOperationModule.LABEL_DELETE, method = EOperationMethod.DELETE) public AjaxResult delete(Integer pkId) { - Boolean isBind = waresServiceApi.checkLabelisUse(pkId).getData(); + Boolean isBind = iWaresServiceApi.checkLabelisUse(pkId).getData(); if (isBind) { return AjaxResult.error("已绑定商品,不允许删除!"); } - BdLabel label = labelService.getByPkId(pkId); - //移除缓存 - iTransactionServiceApi.removeTransactionByPkId(Collections.singletonList(label.getPkTransaction().longValue())); - return toAjax(labelService.deleteLabelById(pkId)); + BdLabel label = iBdLabelService.getByPkId(pkId); + return toAjax(iBdLabelService.deleteLabelById(pkId)); } - /** * 编辑标签信息 - * - * @return */ @PostMapping("update") @Log(module = EOperationModule.LABEL_DELETE, method = EOperationMethod.UPDATE) @@ -151,7 +115,7 @@ public class BdLabelController extends BaseController { return AjaxResult.error("标签图片不能为空!"); } - BdLabel checkBdLabel = labelService.getById(bdLabelVO.getPkId()); + BdLabel checkBdLabel = iBdLabelService.getById(bdLabelVO.getPkId()); if (null == checkBdLabel) { return AjaxResult.error("标签不存在"); } @@ -159,30 +123,24 @@ public class BdLabelController extends BaseController { BdLabel bdLabel = BeanUtil.copyProperties(bdLabelVO, BdLabel.class); bdLabel.setPkModified(SecurityUtils.getUserId()); bdLabel.setModifiedTime(new Date()); - // 更新翻译 - iTransactionServiceApi.updateTransaction(SecurityUtils.getPkCountry(), label, checkBdLabel.getPkTransaction(), true); - return AjaxResult.success(labelService.updateLabelById(bdLabel)); + return AjaxResult.success(iBdLabelService.updateLabelById(bdLabel)); } /** * 导出 - * - * @param response - * @param bdLabelVO */ @PostMapping("/export") @Log(module = EOperationModule.LABEL_DELETE, method = EOperationMethod.EXPORT) public void export(HttpServletResponse response, BdLabelVO bdLabelVO) { Integer pkCountry = SecurityUtils.getPkCountry(); bdLabelVO.setPkCountry(pkCountry); - List bdLabels = labelService.getLabelByPkCountry(bdLabelVO); + List bdLabels = iBdLabelService.getLabelByPkCountry(bdLabelVO); List labelVOList = BeanUtil.copyToList(bdLabels, BdLabelVO.class); //枚举翻译 - Map transactionMap = iTransactionCommonService.exportEnumTransaction(ELabelType.values()); if (CollUtil.isNotEmpty(labelVOList)) { for (BdLabelVO labelVO : labelVOList) { - labelVO.setLabelTypeVal(transactionMap.get(EnumsPrefixConstants.TAG_TYPE + labelVO.getLabelType())); + labelVO.setLabelTypeVal(ELabelType.getLabelByValue(labelVO.getLabelType())); } } ExcelUtil util = new ExcelUtil<>(BdLabelVO.class); @@ -194,12 +152,12 @@ public class BdLabelController extends BaseController { */ @GetMapping("find-all") public AjaxResult findAll(BdLabel bdLabel) { - QueryWrapper queryWrapper = new QueryWrapper<>(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); if (bdLabel.getLabelType() != null) { - queryWrapper.eq("LABEL_TYPE", bdLabel.getLabelType()); + queryWrapper.eq(BdLabel::getLabelType, bdLabel.getLabelType()); } - queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); - List list = labelService.list(queryWrapper); + queryWrapper.eq(BdLabel::getPkCountry, SecurityUtils.getPkCountry()); + List list = iBdLabelService.list(queryWrapper); return AjaxResult.success(list); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java index e70e9872..6acd0155 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdMemberSpecialCurrencyController.java @@ -29,11 +29,7 @@ import java.util.ArrayList; import java.util.List; /** - * @Description: 会员特殊支付配置 - * @Author: jiang chao - * @Time: 2025/2/20 16:39 - * @Classname: BdMemberSpecialCurrencyController - * @PackageName: com.hzs.system.config.controller.manage + * 会员特殊支付配置 */ @RestController @RequestMapping("/manage/member-special-currency") @@ -64,7 +60,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { if (CollectionUtil.isNotEmpty(list)) { for (BdMemberSpecialCurrencyExt memberSpecialCurrency : list) { BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); resultList.add(vo); } } @@ -116,7 +112,7 @@ public class BdMemberSpecialCurrencyController extends BaseController { // 查询配置数据 BdMemberSpecialCurrencyExt memberSpecialCurrency = iBdMemberSpecialCurrencyService.getData(pkId); BdMemberSpecialCurrencyVO vo = BeanUtil.copyProperties(memberSpecialCurrency, BdMemberSpecialCurrencyVO.class); - vo.setSpecialAreaVal(ESpecialArea.getESpecialArea(vo.getSpecialArea())); + vo.setSpecialAreaVal(ESpecialArea.getLabelByValue(vo.getSpecialArea())); return AjaxResult.success(vo); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRangeController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRangeController.java index 999ef590..98daf147 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRangeController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRangeController.java @@ -6,26 +6,22 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.msg.ConfigMsgConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.core.web.page.TableDataInfo; -import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdRange; import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.base.service.IBdNoticeService; import com.hzs.system.config.service.IBdRangeDetailsService; import com.hzs.system.config.service.IBdRangeService; import com.hzs.system.config.vo.RangeVo; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -36,9 +32,6 @@ import java.util.List; /** * 极差配置 前端控制器 - * - * @author zhangjing - * @since 2022-09-09 */ @Slf4j @RestController @@ -46,21 +39,14 @@ import java.util.List; public class BdRangeController extends BaseController { @Autowired - private IBdRangeService rangeService; + private IBdRangeService iBdRangeService; @Autowired - private IBdRangeDetailsService rangeDetailsService; + private IBdRangeDetailsService iBdRangeDetailsService; @Autowired - private IBdNoticeService noticeService; - - @DubboReference - ITransactionServiceApi iTransactionServiceApi; + private IBdNoticeService iBdNoticeService; /** - * @description: 查询极差配置列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [range] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询极差配置列表 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -72,7 +58,7 @@ public class BdRangeController extends BaseController { queryWrapper.eq(BdRange::getRangeName, range.getRangeName()); } queryWrapper.orderByDesc(BdRange::getRangeValue, BdRange::getCreationTime); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); startPage(); List listExt = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { @@ -82,18 +68,18 @@ public class BdRangeController extends BaseController { rangeDetailsExt.setPkRange(bdRange.getPkId()); List rangeDetailsGradeList = new ArrayList<>(); List rangeDetailsAwardList = new ArrayList<>(); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt brde : bdRangeDetailsList) { if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.GRADE.getValue()) { //等级key - Integer pkRegisterGrade = noticeService.getGradeTranslateValue(brde.getPkLevel(), null); + Integer pkRegisterGrade = iBdNoticeService.getGradeTranslateValue(brde.getPkLevel(), null); brde.setPkGrade(pkRegisterGrade); rangeDetailsGradeList.add(brde); } if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.AWARDS.getValue()) { //奖衔key - Integer pkAward = noticeService.getAwardsTranslateValue(brde.getPkLevel(), null); + Integer pkAward = iBdNoticeService.getAwardsTranslateValue(brde.getPkLevel(), null); brde.setPkAward(pkAward); rangeDetailsAwardList.add(brde); } @@ -104,16 +90,11 @@ public class BdRangeController extends BaseController { listExt.add(rangeExt); } } - return getDataTable(listExt); } /** - * @description: 导出复购极差 - * @author: zhang jing - * @date: 2023/3/9 15:47 - * @param: [response, range] - * @return: void + * 导出复购极差 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.EXPORT) @PostMapping("/export") @@ -125,7 +106,7 @@ public class BdRangeController extends BaseController { queryWrapper.eq(BdRange::getRangeName, range.getRangeName()); } queryWrapper.orderByDesc(BdRange::getCreationTime); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); startPage(); List listExt = new ArrayList<>(); for (BdRange bdRange : list) { @@ -134,18 +115,18 @@ public class BdRangeController extends BaseController { rangeDetailsExt.setPkRange(bdRange.getPkId()); List rangeDetailsGradeList = new ArrayList<>(); List rangeDetailsAwardList = new ArrayList<>(); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt brde : bdRangeDetailsList) { if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.GRADE.getValue()) { //等级key - Integer pkRegisterGrade = noticeService.getGradeTranslateValue(brde.getPkLevel(), null); + Integer pkRegisterGrade = iBdNoticeService.getGradeTranslateValue(brde.getPkLevel(), null); brde.setPkGrade(pkRegisterGrade); rangeDetailsGradeList.add(brde); } if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.AWARDS.getValue()) { //奖衔key - Integer pkAward = noticeService.getAwardsTranslateValue(brde.getPkLevel(), null); + Integer pkAward = iBdNoticeService.getAwardsTranslateValue(brde.getPkLevel(), null); brde.setPkAward(pkAward); rangeDetailsAwardList.add(brde); } @@ -159,13 +140,8 @@ public class BdRangeController extends BaseController { util.exportExcel(response, listExt, "复购极差"); } - /** - * @description: 新增极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [range] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.INSERT) @PostMapping("/generate") @@ -191,7 +167,7 @@ public class BdRangeController extends BaseController { queryWrapper.eq(BdRange::getPkCountry, SecurityUtils.getPkCountry()); queryWrapper.eq(BdRange::getRangeValue, rangeExt.getRangeValue()); queryWrapper.eq(BdRange::getSystemType, ESystemType.DEFAULT.getValue()); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.RANGE_VALUE_REPEAT)); } @@ -201,17 +177,13 @@ public class BdRangeController extends BaseController { rangeExt.setPkCreator(SecurityUtils.getUserId()); rangeExt.setCreationTime(new Date()); rangeExt.setSystemType(ESystemType.DEFAULT.getValue()); - rangeService.saveRange(rangeExt); + iBdRangeService.saveRange(rangeExt); } return AjaxResult.success(); } /** - * @description: 修改极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [range] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -231,41 +203,25 @@ public class BdRangeController extends BaseController { if (CollectionUtil.isEmpty(gradeList) && CollectionUtil.isEmpty(awardsList)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.PK_GRADE_AWARDS_NOT_NULL)); } - - //字段翻译保存到数据库 - if (null != rangeExt.getPkTransaction()) { - R b = iTransactionServiceApi.updateTransaction(pkCountry, - rangeExt.getRangeName(), rangeExt.getPkTransaction(), true); - } else { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.RANGE, - rangeExt.getRangeName(), EYesNo.YES, EYesNo.NO); - rangeExt.setPkTransaction(pkTransaction.getData()); - } rangeExt.setPkModified(SecurityUtils.getUserId()); rangeExt.setPkCountry(pkCountry); rangeExt.setModifiedTime(new Date()); - return toAjax(rangeService.updateRange(rangeExt)); + return toAjax(iBdRangeService.updateRange(rangeExt)); } - /** - * @description: 查询单条极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { - BdRange range = rangeService.getById(pkId); + BdRange range = iBdRangeService.getById(pkId); BdRangeExt rangeExt = BeanUtil.copyProperties(range, BdRangeExt.class); BdRangeDetailsExt rangeDetailsExt = new BdRangeDetailsExt(); List gradeList = new ArrayList<>(); List awardsList = new ArrayList<>(); rangeDetailsExt.setPkRange(pkId.intValue()); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt bdRangeDetailsExt : bdRangeDetailsList) { if (StringUtils.isNotNull(bdRangeDetailsExt.getRangeType()) && ERangeType.GRADE.getValue() == bdRangeDetailsExt.getRangeType()) { @@ -282,13 +238,8 @@ public class BdRangeController extends BaseController { return AjaxResult.success(rangeExt); } - /** - * @description: 删除极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") @@ -298,18 +249,11 @@ public class BdRangeController extends BaseController { updateWrapper.set(BdRange::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(BdRange::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdRange::getModifiedTime, new Date()); - BdRange bdRange = rangeService.getById(pkId); - //删除翻译 - List pkIdList = new ArrayList<>(); - pkIdList.add(bdRange.getPkTransaction().longValue()); - R b = iTransactionServiceApi.removeTransactionByPkId(pkIdList); - return toAjax(rangeService.update(updateWrapper)); + return toAjax(iBdRangeService.update(updateWrapper)); } /** * 查询全部 - * - * @return */ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("find-all") @@ -318,11 +262,12 @@ public class BdRangeController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdRange::getPkCountry, SecurityUtils.getPkCountry()); queryWrapper.eq(BdRange::getSystemType, ESystemType.DEFAULT.getValue()); - for (BdRange range : rangeService.list(queryWrapper)) { + for (BdRange range : iBdRangeService.list(queryWrapper)) { RangeVo rangeVo = BeanUtil.copyProperties(range, RangeVo.class); rangeVo.setPkRange(range.getPkId()); resultList.add(rangeVo); } return AjaxResult.success(resultList); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailAwardsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailAwardsController.java index 0f2562a7..a5e9b35f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailAwardsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailAwardsController.java @@ -68,10 +68,10 @@ public class BdRetailAwardsController extends BaseController { if (CollectionUtil.isNotEmpty(listExt)) { for (BdAwardsExt ae : listExt) { if (StringUtils.isNotNull(ae.getPkCheckAwardsLeft())) { - ae.setPkCheckAwardsLeft(iBdNoticeService.getAwardsTranslateValue(ae.getPkCheckAwardsLeft(), null)); + ae.setPkCheckAwardsLeftVal(iBdAwardsService.getById(ae.getPkCheckAwardsLeft()).getAwardsName()); } if (StringUtils.isNotNull(ae.getPkCheckAwardsRight())) { - ae.setPkCheckAwardsRight(iBdNoticeService.getAwardsTranslateValue(ae.getPkCheckAwardsRight(), null)); + ae.setPkCheckAwardsRightVal(iBdAwardsService.getById(ae.getPkCheckAwardsRight()).getAwardsName()); } } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailRangeController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailRangeController.java index 47983f05..18e9581b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailRangeController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdRetailRangeController.java @@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.constant.msg.ConfigMsgConstants; -import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.*; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; @@ -18,13 +17,11 @@ import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; import com.hzs.common.domain.system.config.ext.BdRangeExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.base.service.IBdNoticeService; import com.hzs.system.config.service.IBdRangeDetailsService; import com.hzs.system.config.service.IBdRangeService; import com.hzs.system.config.vo.RangeVo; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -35,9 +32,6 @@ import java.util.List; /** * 新零售极差配置 前端控制器 - * - * @author zhangjing - * @since 2022-09-09 */ @Slf4j @RestController @@ -45,21 +39,14 @@ import java.util.List; public class BdRetailRangeController extends BaseController { @Autowired - private IBdRangeService rangeService; + private IBdRangeService iBdRangeService; @Autowired - private IBdRangeDetailsService rangeDetailsService; + private IBdRangeDetailsService iBdRangeDetailsService; @Autowired - private IBdNoticeService noticeService; - - @DubboReference - ITransactionServiceApi iTransactionServiceApi; + private IBdNoticeService iBdNoticeService; /** - * @description: 查询极差配置列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [range] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询极差配置列表 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("/list") @@ -71,7 +58,7 @@ public class BdRetailRangeController extends BaseController { queryWrapper.eq(BdRange::getRangeName, range.getRangeName()); } queryWrapper.orderByDesc(BdRange::getRangeValue, BdRange::getCreationTime); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); startPage(); List listExt = new ArrayList<>(); if (CollectionUtil.isNotEmpty(list)) { @@ -81,18 +68,18 @@ public class BdRetailRangeController extends BaseController { rangeDetailsExt.setPkRange(bdRange.getPkId()); List rangeDetailsGradeList = new ArrayList<>(); List rangeDetailsAwardList = new ArrayList<>(); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt brde : bdRangeDetailsList) { if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.GRADE.getValue()) { //等级key - Integer pkRegisterGrade = noticeService.getGradeTranslateValue(brde.getPkLevel(), null); + Integer pkRegisterGrade = iBdNoticeService.getGradeTranslateValue(brde.getPkLevel(), null); brde.setPkGrade(pkRegisterGrade); rangeDetailsGradeList.add(brde); } if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.AWARDS.getValue()) { //奖衔key - Integer pkAward = noticeService.getAwardsTranslateValue(brde.getPkLevel(), null); + Integer pkAward = iBdNoticeService.getAwardsTranslateValue(brde.getPkLevel(), null); brde.setPkAward(pkAward); rangeDetailsAwardList.add(brde); } @@ -103,16 +90,11 @@ public class BdRetailRangeController extends BaseController { listExt.add(rangeExt); } } - return getDataTable(listExt); } /** - * @description: 导出复购极差 - * @author: zhang jing - * @date: 2023/3/9 15:47 - * @param: [response, range] - * @return: void + * 导出复购极差 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.EXPORT) @PostMapping("/export") @@ -124,7 +106,7 @@ public class BdRetailRangeController extends BaseController { queryWrapper.eq(BdRange::getRangeName, range.getRangeName()); } queryWrapper.orderByDesc(BdRange::getCreationTime); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); startPage(); List listExt = new ArrayList<>(); for (BdRange bdRange : list) { @@ -133,18 +115,18 @@ public class BdRetailRangeController extends BaseController { rangeDetailsExt.setPkRange(bdRange.getPkId()); List rangeDetailsGradeList = new ArrayList<>(); List rangeDetailsAwardList = new ArrayList<>(); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt brde : bdRangeDetailsList) { if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.GRADE.getValue()) { //等级key - Integer pkRegisterGrade = noticeService.getGradeTranslateValue(brde.getPkLevel(), null); + Integer pkRegisterGrade = iBdNoticeService.getGradeTranslateValue(brde.getPkLevel(), null); brde.setPkGrade(pkRegisterGrade); rangeDetailsGradeList.add(brde); } if (StringUtils.isNotNull(brde.getRangeType()) && brde.getRangeType() == ERangeType.AWARDS.getValue()) { //奖衔key - Integer pkAward = noticeService.getAwardsTranslateValue(brde.getPkLevel(), null); + Integer pkAward = iBdNoticeService.getAwardsTranslateValue(brde.getPkLevel(), null); brde.setPkAward(pkAward); rangeDetailsAwardList.add(brde); } @@ -160,11 +142,7 @@ public class BdRetailRangeController extends BaseController { /** - * @description: 新增极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [range] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.INSERT) @PostMapping("/generate") @@ -190,7 +168,7 @@ public class BdRetailRangeController extends BaseController { queryWrapper.eq(BdRange::getPkCountry, SecurityUtils.getPkCountry()); queryWrapper.eq(BdRange::getRangeValue, rangeExt.getRangeValue()); queryWrapper.eq(BdRange::getSystemType, ESystemType.DEFAULT.getValue()); - List list = rangeService.list(queryWrapper); + List list = iBdRangeService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.RANGE_VALUE_REPEAT)); } @@ -200,17 +178,13 @@ public class BdRetailRangeController extends BaseController { rangeExt.setPkCreator(SecurityUtils.getUserId()); rangeExt.setCreationTime(new Date()); rangeExt.setSystemType(ESystemType.DEFAULT.getValue()); - rangeService.saveRange(rangeExt); + iBdRangeService.saveRange(rangeExt); } return AjaxResult.success(); } /** - * @description: 修改极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [range] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.UPDATE) @PostMapping("/update") @@ -230,41 +204,26 @@ public class BdRetailRangeController extends BaseController { if (CollectionUtil.isEmpty(gradeList) && CollectionUtil.isEmpty(awardsList)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.PK_GRADE_AWARDS_NOT_NULL)); } - - //字段翻译保存到数据库 - if (null != rangeExt.getPkTransaction()) { - R b = iTransactionServiceApi.updateTransaction(pkCountry, - rangeExt.getRangeName(), rangeExt.getPkTransaction(), true); - } else { - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.RANGE, - rangeExt.getRangeName(), EYesNo.YES, EYesNo.NO); - rangeExt.setPkTransaction(pkTransaction.getData()); - } rangeExt.setPkModified(SecurityUtils.getUserId()); rangeExt.setPkCountry(pkCountry); rangeExt.setModifiedTime(new Date()); - return toAjax(rangeService.updateRange(rangeExt)); + return toAjax(iBdRangeService.updateRange(rangeExt)); } /** - * @description: 查询单条极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { - BdRange range = rangeService.getById(pkId); + BdRange range = iBdRangeService.getById(pkId); BdRangeExt rangeExt = BeanUtil.copyProperties(range, BdRangeExt.class); BdRangeDetailsExt rangeDetailsExt = new BdRangeDetailsExt(); List gradeList = new ArrayList<>(); List awardsList = new ArrayList<>(); rangeDetailsExt.setPkRange(pkId.intValue()); - List bdRangeDetailsList = rangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); + List bdRangeDetailsList = iBdRangeDetailsService.getBdRangeDetailsList(rangeDetailsExt); if (CollectionUtil.isNotEmpty(bdRangeDetailsList)) { for (BdRangeDetailsExt bdRangeDetailsExt : bdRangeDetailsList) { if (StringUtils.isNotNull(bdRangeDetailsExt.getRangeType()) && ERangeType.GRADE.getValue() == bdRangeDetailsExt.getRangeType()) { @@ -281,13 +240,8 @@ public class BdRetailRangeController extends BaseController { return AjaxResult.success(rangeExt); } - /** - * @description: 删除极差配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除极差配置 **/ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") @@ -297,18 +251,11 @@ public class BdRetailRangeController extends BaseController { updateWrapper.set(BdRange::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(BdRange::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdRange::getModifiedTime, new Date()); - BdRange bdRange = rangeService.getById(pkId); - //删除翻译 - List pkIdList = new ArrayList<>(); - pkIdList.add(bdRange.getPkTransaction().longValue()); - R b = iTransactionServiceApi.removeTransactionByPkId(pkIdList); - return toAjax(rangeService.update(updateWrapper)); + return toAjax(iBdRangeService.update(updateWrapper)); } /** * 查询全部 - * - * @return */ @Log(module = EOperationModule.LEVEL_CONFIG, business = EOperationBusiness.REPURCHASE_RANGE, method = EOperationMethod.SELECT) @GetMapping("find-all") @@ -317,7 +264,7 @@ public class BdRetailRangeController extends BaseController { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdRange::getPkCountry, SecurityUtils.getPkCountry()); queryWrapper.eq(BdRange::getSystemType, ESystemType.DEFAULT.getValue()); - for (BdRange range : rangeService.list(queryWrapper)) { + for (BdRange range : iBdRangeService.list(queryWrapper)) { RangeVo rangeVo = BeanUtil.copyProperties(range, RangeVo.class); rangeVo.setPkRange(range.getPkId()); resultList.add(rangeVo); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShareController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShareController.java index e6e7d132..d4aa13bf 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShareController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShareController.java @@ -1,16 +1,13 @@ package com.hzs.system.config.controller.manage; - import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.enums.EDelFlag; import com.hzs.common.core.enums.EOperationMethod; import com.hzs.common.core.enums.EOperationModule; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -18,10 +15,8 @@ import com.hzs.common.core.web.page.TableDataInfo; import com.hzs.common.domain.system.config.BdShare; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.config.service.IBdShareService; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -29,178 +24,138 @@ import java.util.Date; import java.util.List; /** - *

* 分红配置 前端控制器 - *

- * - * @author zhangjing - * @since 2022-09-22 */ @Slf4j @RestController @RequestMapping("/manage/share") public class BdShareController extends BaseController { - @Autowired - private IBdShareService shareService; - @DubboReference - private ITransactionServiceApi iTransactionServiceApi; - private RedisService redisService; @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - + private IBdShareService iBdShareService; /** - * @description: 查询分红配置列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [share] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询分红配置列表 **/ @Log(module = EOperationModule.SHARE, method = EOperationMethod.SELECT) @GetMapping("/list") public TableDataInfo list(BdShare share) { startPage(); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); - if(StringUtils.isNotEmpty(share.getMonth())){ - queryWrapper.eq("MONTH",share.getMonth()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdShare::getPkCountry, SecurityUtils.getPkCountry()); + if (StringUtils.isNotEmpty(share.getMonth())) { + queryWrapper.eq(BdShare::getMonth, share.getMonth()); } - if(StringUtils.isNotNull(share.getIsGrant())){ - queryWrapper.eq("IS_GRANT",share.getIsGrant()); + if (StringUtils.isNotNull(share.getIsGrant())) { + queryWrapper.eq(BdShare::getIsGrant, share.getIsGrant()); } - queryWrapper.orderByDesc("CREATION_TIME"); - List list = shareService.list(queryWrapper); + queryWrapper.orderByDesc(BdShare::getCreationTime); + List list = iBdShareService.list(queryWrapper); return getDataTable(list); } - /** - * @description: 新增分红配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [share] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增分红配置 **/ @Log(module = EOperationModule.SHARE, method = EOperationMethod.INSERT) @PostMapping("/save") public AjaxResult save(@RequestBody BdShare share) { - Integer pkCountry =SecurityUtils.getPkCountry(); - if(StringUtils.isEmpty(share.getMonth())){ + Integer pkCountry = SecurityUtils.getPkCountry(); + if (StringUtils.isEmpty(share.getMonth())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MONTH_NOT_NULL)); } - if(StringUtils.isNull(share.getTotalAmount())){ + if (StringUtils.isNull(share.getTotalAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.TOTAL_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getAddAmount())){ + if (StringUtils.isNull(share.getAddAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.ADD_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getUsedAmount())){ + if (StringUtils.isNull(share.getUsedAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.USED_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getBalanceAmount())){ + if (StringUtils.isNull(share.getBalanceAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.BALANCE_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getBaseAmount())){ + if (StringUtils.isNull(share.getBaseAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.BASE_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getIsGrant())){ + if (StringUtils.isNull(share.getIsGrant())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_GRANT_NOT_NULL)); } - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY", pkCountry); - if(StringUtils.isNotNull(share.getMonth())){ - queryWrapper.eq("MONTH",share.getMonth()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdShare::getPkCountry, pkCountry); + if (StringUtils.isNotNull(share.getMonth())) { + queryWrapper.eq(BdShare::getMonth, share.getMonth()); } - List list = shareService.list(queryWrapper); - if(CollectionUtil.isNotEmpty(list)){ + List list = iBdShareService.list(queryWrapper); + if (CollectionUtil.isNotEmpty(list)) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.SHARE_REPEAT)); } share.setPkCountry(pkCountry); share.setPkCreator(SecurityUtils.getUserId()); share.setCreationTime(new Date()); - return toAjax(shareService.save(share)); + return toAjax(iBdShareService.save(share)); } - /** - * @description: 修改分红配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [share] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改分红配置 **/ @Log(module = EOperationModule.SHARE, method = EOperationMethod.UPDATE) @PostMapping("/update") public AjaxResult update(@RequestBody BdShare share) { - Integer pkCountry=SecurityUtils.getPkCountry(); - if(StringUtils.isNull(share.getPkId())){ + Integer pkCountry = SecurityUtils.getPkCountry(); + if (StringUtils.isNull(share.getPkId())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.PKID_NOT_NULL)); } - if(StringUtils.isEmpty(share.getMonth())){ + if (StringUtils.isEmpty(share.getMonth())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MONTH_NOT_NULL)); } - if(StringUtils.isNull(share.getTotalAmount())){ + if (StringUtils.isNull(share.getTotalAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.TOTAL_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getAddAmount())){ + if (StringUtils.isNull(share.getAddAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.ADD_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getUsedAmount())){ + if (StringUtils.isNull(share.getUsedAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.USED_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getBalanceAmount())){ + if (StringUtils.isNull(share.getBalanceAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.BALANCE_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getBaseAmount())){ + if (StringUtils.isNull(share.getBaseAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.BASE_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(share.getIsGrant())){ + if (StringUtils.isNull(share.getIsGrant())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_GRANT_NOT_NULL)); } - share.setPkCountry(pkCountry); share.setPkModified(SecurityUtils.getUserId()); share.setModifiedTime(new Date()); - redisService.deleteObject(CacheConstants.BD_SHARE + share.getPkId()); - return toAjax(shareService.updateById(share)); + return toAjax(iBdShareService.updateById(share)); } - /** - * @description: 查询单条分红配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条分红配置 **/ @Log(module = EOperationModule.SHARE, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { - BdShare share = shareService.getById(pkId); + BdShare share = iBdShareService.getById(pkId); return AjaxResult.success(share); } - /** - * @description: 删除分红配置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除分红配置 **/ @Log(module = EOperationModule.SHARE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Long pkId) { - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_ID", pkId); - updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); - updateWrapper.set("MODIFIED_TIME", new Date()); - redisService.deleteObject(CacheConstants.BD_SHARE + pkId); - return toAjax(shareService.update(updateWrapper)); + LambdaUpdateWrapper updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(BdShare::getPkId, pkId); + updateWrapper.set(BdShare::getDelFlag, EDelFlag.DELETE.getValue()); + updateWrapper.set(BdShare::getPkModified, SecurityUtils.getUserId()); + updateWrapper.set(BdShare::getModifiedTime, new Date()); + return toAjax(iBdShareService.update(updateWrapper)); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShopController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShopController.java index bea5f46c..b68d0f96 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShopController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdShopController.java @@ -5,7 +5,6 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.enums.*; import com.hzs.common.core.service.RedisService; @@ -46,9 +45,6 @@ public class BdShopController extends BaseController { @Autowired private IBdCountryService iBdCountryService; - @Autowired - private RedisService redisService; - /** * 查询店铺配置列表 **/ @@ -198,7 +194,6 @@ public class BdShopController extends BaseController { shop.setPkCountry(pkCountry); shop.setPkModified(SecurityUtils.getUserId()); shop.setModifiedTime(new Date()); - redisService.deleteObjectByKey(CacheConstants.BD_SHOP + pkCountry); return toAjax(iBdShopService.updateById(shop)); } @@ -220,7 +215,6 @@ public class BdShopController extends BaseController { updateWrapper.set(BdShop::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdShop::getModifiedTime, new Date()); iBdShopService.update(updateWrapper); - redisService.deleteObjectByKey(CacheConstants.BD_SHOP + SecurityUtils.getPkCountry()); return AjaxResult.success(); } @@ -248,7 +242,6 @@ public class BdShopController extends BaseController { updateWrapper.set(BdShop::getDelFlag, EDelFlag.DELETE.getValue()); updateWrapper.set(BdShop::getPkModified, SecurityUtils.getUserId()); updateWrapper.set(BdShop::getModifiedTime, new Date()); - redisService.deleteObjectByKey(CacheConstants.BD_SHOP + SecurityUtils.getPkCountry()); return toAjax(iBdShopService.update(updateWrapper)); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalAutoController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalAutoController.java index 4c2b2a12..e820760f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalAutoController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalAutoController.java @@ -1,11 +1,8 @@ package com.hzs.system.config.controller.manage; - import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; import com.hzs.common.core.web.domain.AjaxResult; @@ -21,12 +18,7 @@ import java.util.Date; import java.util.List; /** - *

* 自动提现明细表 前端控制器 - *

- * - * @author zhangjing - * @since 2022-08-31 */ @Slf4j @RestController @@ -34,89 +26,61 @@ import java.util.List; public class BdWithdrawalAutoController extends BaseController { @Autowired - private IBdWithdrawalAutoService withdrawalAutoService; - private RedisService redisService; - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } + private IBdWithdrawalAutoService iBdWithdrawalAutoService; /** - * @description: 查询自动提现设置列表 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [bdWithdrawal] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询自动提现设置列表 **/ @GetMapping("/list") public TableDataInfo list(BdWithdrawalAuto withdrawalAuto) { startPage(); withdrawalAuto.setPkCountry(SecurityUtils.getPkCountry()); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); - if(StringUtils.isNotNull(withdrawalAuto.getPkWithdrawal())){ - queryWrapper.eq("PK_WITHDRAWAL",withdrawalAuto.getPkWithdrawal()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + if (StringUtils.isNotNull(withdrawalAuto.getPkWithdrawal())) { + queryWrapper.eq("PK_WITHDRAWAL", withdrawalAuto.getPkWithdrawal()); } queryWrapper.orderByDesc("CREATION_TIME"); - List list = withdrawalAutoService.list(queryWrapper); + List list = iBdWithdrawalAutoService.list(queryWrapper); return getDataTable(list); } /** - * @description: 新增自动提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [bdWithdrawal] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增自动提现设置 **/ @PostMapping("/save") public AjaxResult save(@RequestBody BdWithdrawalAuto withdrawalAuto) { withdrawalAuto.setPkCountry(SecurityUtils.getPkCountry()); withdrawalAuto.setPkCreator(SecurityUtils.getUserId()); withdrawalAuto.setCreationTime(new Date()); - redisService.deleteObject(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); - return toAjax(withdrawalAutoService.save(withdrawalAuto)); + return toAjax(iBdWithdrawalAutoService.save(withdrawalAuto)); } /** - * @description: 修改自动提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [bdWithdrawal] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改自动提现设置 **/ @PostMapping("/update") public AjaxResult update(@RequestBody BdWithdrawalAuto withdrawalAuto) { withdrawalAuto.setPkModified(SecurityUtils.getUserId()); withdrawalAuto.setModifiedTime(new Date()); - redisService.deleteObject(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); - return toAjax(withdrawalAutoService.updateById(withdrawalAuto)); + return toAjax(iBdWithdrawalAutoService.updateById(withdrawalAuto)); } /** - * @description: 查询单条自动提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条自动提现设置 **/ @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Long pkId) { - BdWithdrawalAuto withdrawalAuto = withdrawalAutoService.getById(pkId); + BdWithdrawalAuto withdrawalAuto = iBdWithdrawalAutoService.getById(pkId); return AjaxResult.success(withdrawalAuto); } /** - * @description: 删除自动提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除自动提现设置 **/ @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Long pkId) { @@ -125,7 +89,6 @@ public class BdWithdrawalAutoController extends BaseController { updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); updateWrapper.set("MODIFIED_TIME", new Date()); - redisService.deleteObject(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); - return toAjax(withdrawalAutoService.update(updateWrapper)); + return toAjax(iBdWithdrawalAutoService.update(updateWrapper)); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalController.java index 887056ed..16123824 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalController.java @@ -1,15 +1,12 @@ package com.hzs.system.config.controller.manage; - import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.hzs.common.core.annotation.Log; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.constant.msg.ConfigMsgConstants; import com.hzs.common.core.enums.*; -import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.utils.poi.ExcelUtil; import com.hzs.common.core.web.controller.BaseController; @@ -21,13 +18,10 @@ import com.hzs.common.domain.system.config.ext.BdWithdrawalAutoExt; import com.hzs.common.domain.system.config.ext.BdWithdrawalExt; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.common.util.TransactionUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.base.service.IBdCurrencyService; -import com.hzs.system.config.IWithdrawalServiceApi; import com.hzs.system.config.service.IBdWithdrawalAutoService; import com.hzs.system.config.service.IBdWithdrawalService; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -38,12 +32,7 @@ import java.util.Date; import java.util.List; /** - *

* 提现设置主表 前端控制器 - *

- * - * @author zhangjing - * @since 2022-08-29 */ @Slf4j @RestController @@ -51,58 +40,42 @@ import java.util.List; public class BdWithdrawalController extends BaseController { @Autowired - private IBdWithdrawalService withdrawalService; - @DubboReference - private ITransactionServiceApi iTransactionServiceApi; - private RedisService redisService; - @DubboReference - private IWithdrawalServiceApi withdrawalServiceApi; + private IBdWithdrawalService iBdWithdrawalService; @Autowired - private IBdWithdrawalAutoService withdrawalAutoService; + private IBdWithdrawalAutoService iBdWithdrawalAutoService; @Autowired - IBdCurrencyService currencyService; - - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - + private IBdCurrencyService iBdCurrencyService; /** - * @description: 查询提现设置列表 理论每个国家只有一个提现配置 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询提现设置列表 理论每个国家只有一个提现配置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.SELECT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.SELECT) @GetMapping("/list") public TableDataInfo list(BdWithdrawalExt withdrawalExt) { startPage(); withdrawalExt.setPkCountry(SecurityUtils.getPkCountry()); - List listExt = withdrawalService.listExt(withdrawalExt); - for(BdWithdrawalExt bwd: listExt){ - //暂时使用中国 - if(StringUtils.isNotNull(bwd.getMinAmount())){ - bwd.setMinAmountUsa(currencyService.getDollar(bwd.getMinAmount(),SecurityUtils.getPkCountry())); + List listExt = iBdWithdrawalService.listExt(withdrawalExt); + for (BdWithdrawalExt bwd : listExt) { + //暂时使用中国 + if (StringUtils.isNotNull(bwd.getMinAmount())) { + bwd.setMinAmountUsa(iBdCurrencyService.getDollar(bwd.getMinAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getMaxAmount())){ - bwd.setMaxAmountUsa(currencyService.getDollar(bwd.getMaxAmount(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getMaxAmount())) { + bwd.setMaxAmountUsa(iBdCurrencyService.getDollar(bwd.getMaxAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getLowerBound())){ - bwd.setLowerBoundUsa(currencyService.getDollar(bwd.getLowerBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getLowerBound())) { + bwd.setLowerBoundUsa(iBdCurrencyService.getDollar(bwd.getLowerBound(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getUpperBound())){ - bwd.setUpperBoundUsa(currencyService.getDollar(bwd.getUpperBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getUpperBound())) { + bwd.setUpperBoundUsa(iBdCurrencyService.getDollar(bwd.getUpperBound(), SecurityUtils.getPkCountry())); } - QueryWrapper queryWrapperAuto = new QueryWrapper(); - queryWrapperAuto.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); - if(StringUtils.isNotNull(bwd.getPkId())){ - queryWrapperAuto.eq("PK_WITHDRAWAL",bwd.getPkId()); + QueryWrapper queryWrapperAuto = new QueryWrapper<>(); + queryWrapperAuto.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + if (StringUtils.isNotNull(bwd.getPkId())) { + queryWrapperAuto.eq("PK_WITHDRAWAL", bwd.getPkId()); } - List listAuto = withdrawalAutoService.list(queryWrapperAuto); + List listAuto = iBdWithdrawalAutoService.list(queryWrapperAuto); List watExtList = new ArrayList<>(); listAuto.forEach(item -> watExtList.add(BeanUtil.copyProperties(item, BdWithdrawalAutoExt.class))); bwd.setWithdrawalAutoList(watExtList); @@ -111,42 +84,38 @@ public class BdWithdrawalController extends BaseController { } /** - * @description: 导出提现配置 - * @author: zhang jing - * @date: 2023/3/3 16:19 - * @param: [response, withdrawalExt] - * @return: void + * 导出提现配置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.EXPORT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, BdWithdrawalExt withdrawalExt) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); + public void export(HttpServletResponse response) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); queryWrapper.orderByDesc("CREATION_TIME"); - List list = withdrawalService.list(queryWrapper); - List listExt=new ArrayList<>(); - for(BdWithdrawal bwd: list){ - BdWithdrawalExt withdrawalExtNew= BeanUtil.copyProperties(bwd, BdWithdrawalExt.class); + List list = iBdWithdrawalService.list(queryWrapper); + List listExt = new ArrayList<>(); + for (BdWithdrawal bwd : list) { + BdWithdrawalExt withdrawalExtNew = BeanUtil.copyProperties(bwd, BdWithdrawalExt.class); //暂时使用中国 - if(StringUtils.isNotNull(bwd.getMinAmount())){ - withdrawalExtNew.setMinAmountUsa(currencyService.getDollar(bwd.getMinAmount(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getMinAmount())) { + withdrawalExtNew.setMinAmountUsa(iBdCurrencyService.getDollar(bwd.getMinAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getMaxAmount())){ - withdrawalExtNew.setMaxAmountUsa(currencyService.getDollar(bwd.getMaxAmount(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getMaxAmount())) { + withdrawalExtNew.setMaxAmountUsa(iBdCurrencyService.getDollar(bwd.getMaxAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getLowerBound())){ - withdrawalExtNew.setLowerBoundUsa(currencyService.getDollar(bwd.getLowerBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getLowerBound())) { + withdrawalExtNew.setLowerBoundUsa(iBdCurrencyService.getDollar(bwd.getLowerBound(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getUpperBound())){ - withdrawalExtNew.setUpperBoundUsa(currencyService.getDollar(bwd.getUpperBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getUpperBound())) { + withdrawalExtNew.setUpperBoundUsa(iBdCurrencyService.getDollar(bwd.getUpperBound(), SecurityUtils.getPkCountry())); } - QueryWrapper queryWrapperAuto = new QueryWrapper(); - queryWrapperAuto.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); - if(StringUtils.isNotNull(bwd.getPkId())){ - queryWrapperAuto.eq("PK_WITHDRAWAL",bwd.getPkId()); + QueryWrapper queryWrapperAuto = new QueryWrapper<>(); + queryWrapperAuto.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + if (StringUtils.isNotNull(bwd.getPkId())) { + queryWrapperAuto.eq("PK_WITHDRAWAL", bwd.getPkId()); } - List listAuto = withdrawalAutoService.list(queryWrapperAuto); + List listAuto = iBdWithdrawalAutoService.list(queryWrapperAuto); List watExtList = new ArrayList<>(); listAuto.forEach(item -> watExtList.add(BeanUtil.copyProperties(item, BdWithdrawalAutoExt.class))); withdrawalExtNew.setWithdrawalAutoList(watExtList); @@ -157,43 +126,39 @@ public class BdWithdrawalController extends BaseController { } /** - * @description: 提现手续费配置,理论每个国家只有一个提现配置 - * @author: zhang jing - * @date: 2022/11/2 11:38 - * @param: [withdrawalExt] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 提现手续费配置,理论每个国家只有一个提现配置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.SELECT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.SELECT) @GetMapping("/serviceChargelist") - public TableDataInfo serviceChargelist(BdWithdrawalExt withdrawalExt) { + public TableDataInfo serviceChargelist() { startPage(); - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); queryWrapper.orderByDesc("CREATION_TIME"); - List list = withdrawalService.list(queryWrapper); - List listExt=new ArrayList<>(); - for(BdWithdrawal bwd: list){ - BdWithdrawalExt withdrawalExtNew= BeanUtil.copyProperties(bwd, BdWithdrawalExt.class); + List list = iBdWithdrawalService.list(queryWrapper); + List listExt = new ArrayList<>(); + for (BdWithdrawal bwd : list) { + BdWithdrawalExt withdrawalExtNew = BeanUtil.copyProperties(bwd, BdWithdrawalExt.class); //暂时使用中国 - if(StringUtils.isNotNull(bwd.getMinAmount())){ - withdrawalExtNew.setMinAmountUsa(currencyService.getDollar(bwd.getMinAmount(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getMinAmount())) { + withdrawalExtNew.setMinAmountUsa(iBdCurrencyService.getDollar(bwd.getMinAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getMaxAmount())){ - withdrawalExtNew.setMaxAmountUsa(currencyService.getDollar(bwd.getMaxAmount(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getMaxAmount())) { + withdrawalExtNew.setMaxAmountUsa(iBdCurrencyService.getDollar(bwd.getMaxAmount(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getLowerBound())){ - withdrawalExtNew.setLowerBoundUsa(currencyService.getDollar(bwd.getLowerBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getLowerBound())) { + withdrawalExtNew.setLowerBoundUsa(iBdCurrencyService.getDollar(bwd.getLowerBound(), SecurityUtils.getPkCountry())); } - if(StringUtils.isNotNull(bwd.getUpperBound())){ - withdrawalExtNew.setUpperBoundUsa(currencyService.getDollar(bwd.getUpperBound(),SecurityUtils.getPkCountry())); + if (StringUtils.isNotNull(bwd.getUpperBound())) { + withdrawalExtNew.setUpperBoundUsa(iBdCurrencyService.getDollar(bwd.getUpperBound(), SecurityUtils.getPkCountry())); } - QueryWrapper queryWrapperAuto = new QueryWrapper(); - queryWrapperAuto.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); - if(StringUtils.isNotNull(bwd.getPkId())){ - queryWrapperAuto.eq("PK_WITHDRAWAL",bwd.getPkId()); + QueryWrapper queryWrapperAuto = new QueryWrapper<>(); + queryWrapperAuto.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + if (StringUtils.isNotNull(bwd.getPkId())) { + queryWrapperAuto.eq("PK_WITHDRAWAL", bwd.getPkId()); } - List listAuto = withdrawalAutoService.list(queryWrapperAuto); + List listAuto = iBdWithdrawalAutoService.list(queryWrapperAuto); List watExtList = new ArrayList<>(); listAuto.forEach(item -> watExtList.add(BeanUtil.copyProperties(item, BdWithdrawalAutoExt.class))); withdrawalExtNew.setWithdrawalAutoList(watExtList); @@ -204,125 +169,113 @@ public class BdWithdrawalController extends BaseController { /** - * @description: 新增提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增提现设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.INSERT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.INSERT) @PostMapping("/save") public AjaxResult save(@RequestBody @Valid BdWithdrawalExt withdrawalExt) { - if(StringUtils.isNull(withdrawalExt.getMinAmount())){ + if (StringUtils.isNull(withdrawalExt.getMinAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MIN_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getMaxAmount())){ + if (StringUtils.isNull(withdrawalExt.getMaxAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MAX_AMOUNT_NOT_NULL)); } - if (withdrawalExt.getMaxAmount().compareTo(withdrawalExt.getMinAmount()) <0) { + if (withdrawalExt.getMaxAmount().compareTo(withdrawalExt.getMinAmount()) < 0) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.COMPARISON_OF_SIZE)); } - if(StringUtils.isNull(withdrawalExt.getIsAuto())){ + if (StringUtils.isNull(withdrawalExt.getIsAuto())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_AUTO_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getIsRounding())){ + if (StringUtils.isNull(withdrawalExt.getIsRounding())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_ROUNDING_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getWithdrawalNumber())){ + if (StringUtils.isNull(withdrawalExt.getWithdrawalNumber())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.WITHDRAWAL_NUMBER_NOT_NULL)); } - if(EYesNo.YES.getIntValue()==withdrawalExt.getIsAuto()){ - if(StringUtils.isNull(withdrawalExt.getLowerBound())){ + if (EYesNo.YES.getIntValue() == withdrawalExt.getIsAuto()) { + if (StringUtils.isNull(withdrawalExt.getLowerBound())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.LOWER_BOUND_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getUpperBound())){ + if (StringUtils.isNull(withdrawalExt.getUpperBound())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.UPPER_BOUND_NOT_NULL)); } - if(CollectionUtil.isEmpty(withdrawalExt.getWithdrawalAutoList())){ + if (CollectionUtil.isEmpty(withdrawalExt.getWithdrawalAutoList())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.WITHDRAWAL_CYCLE_NOT_NULL)); } } - if(StringUtils.isNull(withdrawalExt.getEffectiveDate())){ + if (StringUtils.isNull(withdrawalExt.getEffectiveDate())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.EFFECTIVE_DATE_NOT_NULL)); } withdrawalExt.setPkCountry(SecurityUtils.getPkCountry()); withdrawalExt.setPkCreator(SecurityUtils.getUserId()); withdrawalExt.setCreationTime(new Date()); - return toAjax(withdrawalService.saveWithdrawal(withdrawalExt)); + return toAjax(iBdWithdrawalService.saveWithdrawal(withdrawalExt)); } /** - * @description: 修改提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改提现设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.UPDATE) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.UPDATE) @PostMapping("/update") public AjaxResult update(@RequestBody BdWithdrawalExt withdrawalExt) { - if(StringUtils.isNull(withdrawalExt.getMinAmount())){ + if (StringUtils.isNull(withdrawalExt.getMinAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MIN_AMOUNT_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getMaxAmount())){ + if (StringUtils.isNull(withdrawalExt.getMaxAmount())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.MAX_AMOUNT_NOT_NULL)); } - if (withdrawalExt.getMaxAmount().compareTo(withdrawalExt.getMinAmount()) <0) { + if (withdrawalExt.getMaxAmount().compareTo(withdrawalExt.getMinAmount()) < 0) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.COMPARISON_OF_SIZE)); } - if(StringUtils.isNull(withdrawalExt.getIsAuto())){ + if (StringUtils.isNull(withdrawalExt.getIsAuto())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_AUTO_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getIsRounding())){ + if (StringUtils.isNull(withdrawalExt.getIsRounding())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.IS_ROUNDING_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getWithdrawalNumber())){ + if (StringUtils.isNull(withdrawalExt.getWithdrawalNumber())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.WITHDRAWAL_NUMBER_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getEffectiveDate())){ + if (StringUtils.isNull(withdrawalExt.getEffectiveDate())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.EFFECTIVE_DATE_NOT_NULL)); } - if(EYesNo.YES.getIntValue()==withdrawalExt.getIsAuto()){ - if(StringUtils.isNull(withdrawalExt.getLowerBound())){ + if (EYesNo.YES.getIntValue() == withdrawalExt.getIsAuto()) { + if (StringUtils.isNull(withdrawalExt.getLowerBound())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.LOWER_BOUND_NOT_NULL)); } - if(StringUtils.isNull(withdrawalExt.getUpperBound())){ + if (StringUtils.isNull(withdrawalExt.getUpperBound())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.UPPER_BOUND_NOT_NULL)); } - if(CollectionUtil.isEmpty(withdrawalExt.getWithdrawalAutoList())){ + if (CollectionUtil.isEmpty(withdrawalExt.getWithdrawalAutoList())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.WITHDRAWAL_CYCLE_NOT_NULL)); } } - if(StringUtils.isNull(withdrawalExt.getEffectiveDate())){ + if (StringUtils.isNull(withdrawalExt.getEffectiveDate())) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.EFFECTIVE_DATE_NOT_NULL)); } withdrawalExt.setPkModified(SecurityUtils.getUserId()); withdrawalExt.setModifiedTime(new Date()); - return toAjax(withdrawalService.updateWithdrawal(withdrawalExt)); + return toAjax(iBdWithdrawalService.updateWithdrawal(withdrawalExt)); } /** - * @description: 查询单条提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条提现设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.SELECT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Integer pkId) { - BdWithdrawal withdrawalParam = withdrawalService.getById(pkId); + BdWithdrawal withdrawalParam = iBdWithdrawalService.getById(pkId); BdWithdrawalExt withdrawalExt = BeanUtil.copyProperties(withdrawalParam, BdWithdrawalExt.class); - BdWithdrawalAutoExt withdrawalAutoExt=new BdWithdrawalAutoExt(); + BdWithdrawalAutoExt withdrawalAutoExt = new BdWithdrawalAutoExt(); withdrawalAutoExt.setPkWithdrawal(pkId); - List withdrawalAutoList =withdrawalService.getWithdrawalAutoList(withdrawalAutoExt); - if(CollectionUtil.isNotEmpty(withdrawalAutoList)){ + List withdrawalAutoList = iBdWithdrawalService.getWithdrawalAutoList(withdrawalAutoExt); + if (CollectionUtil.isNotEmpty(withdrawalAutoList)) { withdrawalExt.setWithdrawalAutoList(withdrawalAutoList); - }else{ - List withdrawalAutoListNew=new ArrayList<>(); + } else { + List withdrawalAutoListNew = new ArrayList<>(); withdrawalExt.setWithdrawalAutoList(withdrawalAutoListNew); } return AjaxResult.success(withdrawalExt); @@ -330,19 +283,15 @@ public class BdWithdrawalController extends BaseController { /** - * @description: 删除提现设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除提现设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_CONFIG,method = EOperationMethod.DELETE) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_CONFIG, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Long pkId) { - BdWithdrawalAutoExt withdrawalAutoExt =new BdWithdrawalAutoExt(); + BdWithdrawalAutoExt withdrawalAutoExt = new BdWithdrawalAutoExt(); withdrawalAutoExt.setPkCountry(SecurityUtils.getPkCountry()); - Integer count= withdrawalService.checkWithdraw(withdrawalAutoExt); - if(count>0){ + Integer count = iBdWithdrawalService.checkWithdraw(withdrawalAutoExt); + if (count > 0) { return AjaxResult.error(TransactionUtils.getContent(ConfigMsgConstants.ENABLE_STATE_NOT_DELETE)); } UpdateWrapper updateWrapper = new UpdateWrapper<>(); @@ -350,9 +299,6 @@ public class BdWithdrawalController extends BaseController { updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); updateWrapper.set("MODIFIED_TIME", new Date()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_IS_AUTO + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); - return toAjax(withdrawalService.update(updateWrapper)); + return toAjax(iBdWithdrawalService.update(updateWrapper)); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalProcessController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalProcessController.java index 9b2f0f7e..1aa5d0ac 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalProcessController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/controller/manage/BdWithdrawalProcessController.java @@ -1,6 +1,5 @@ package com.hzs.system.config.controller.manage; - import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -21,12 +20,8 @@ import com.hzs.common.domain.system.config.BdWithdrawalProcess; import com.hzs.common.domain.system.config.ext.BdWithdrawalAutoExt; import com.hzs.common.domain.system.config.ext.BdWithdrawalProcessExt; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.system.base.ITransactionServiceApi; -import com.hzs.system.base.service.IBdCurrencyService; -import com.hzs.system.config.IWithdrawalServiceApi; import com.hzs.system.config.service.IBdWithdrawalProcessService; import com.hzs.system.config.service.IBdWithdrawalService; -import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -37,12 +32,7 @@ import java.util.Date; import java.util.List; /** - *

* 提现手续费手续费配置 前端控制器 - *

- * - * @author zhangjing - * @since 2022-11-02 */ @RestController @RequestMapping("/manage/bd-withdrawal-process") @@ -50,86 +40,62 @@ public class BdWithdrawalProcessController extends BaseController { @Autowired private IBdWithdrawalProcessService withdrawalProcessService; - @DubboReference - private ITransactionServiceApi iTransactionServiceApi; + @Autowired private RedisService redisService; - @DubboReference - private IWithdrawalServiceApi withdrawalProcessServiceApi; @Autowired private IBdWithdrawalService withdrawalService; - @Autowired - IBdCurrencyService currencyService; - - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - /** - * @description: 查询提现手续费设置列表 理论每个国家只有一个提现手续费配置 - * @author: zhang jing - * @date: 2022/8/30 10:20 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 查询提现手续费设置列表 理论每个国家只有一个提现手续费配置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.SELECT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.SELECT) @GetMapping("/list") - public TableDataInfo list(BdWithdrawalProcess withdrawalProcess) { + public TableDataInfo list() { startPage(); - QueryWrapper queryWrapper = new QueryWrapper(); + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); queryWrapper.orderByDesc("CREATION_TIME"); List list = withdrawalProcessService.list(queryWrapper); - List listExt=new ArrayList<>(); + List listExt = new ArrayList<>(); list.forEach(item -> listExt.add(BeanUtil.copyProperties(item, BdWithdrawalProcessExt.class))); return getDataTable(listExt); } /** - * @description: 导出提现手续费配置 - * @author: zhang jing - * @date: 2023/3/3 17:07 - * @param: [response, withdrawalProcess] - * @return: void + * 导出提现手续费配置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.EXPORT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.EXPORT) @PostMapping("/export") - public void export(HttpServletResponse response, BdWithdrawalProcess withdrawalProcess) { - QueryWrapper queryWrapper = new QueryWrapper(); + public void export(HttpServletResponse response) { + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); queryWrapper.orderByDesc("CREATION_TIME"); List list = withdrawalProcessService.list(queryWrapper); - List listExt=new ArrayList<>(); + List listExt = new ArrayList<>(); list.forEach(item -> listExt.add(BeanUtil.copyProperties(item, BdWithdrawalProcessExt.class))); ExcelUtil util = new ExcelUtil<>(BdWithdrawalProcessExt.class); util.exportExcel(response, listExt, "提现手续费配置"); } /** - * @description: 新增提现手续费设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 新增提现手续费设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.INSERT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.INSERT) @PostMapping("/save") public AjaxResult save(@RequestBody @Valid BdWithdrawalProcess withdrawalProcess) { - if(StringUtils.isNull(withdrawalProcess.getServiceType())){ + if (StringUtils.isNull(withdrawalProcess.getServiceType())) { return AjaxResult.error(ConfigMsgConstants.SERVICE_TYPE_NOT_NULL); } - if(StringUtils.isNull(withdrawalProcess.getServiceRatio())){ + if (StringUtils.isNull(withdrawalProcess.getServiceRatio())) { return AjaxResult.error(ConfigMsgConstants.SERVICE_RATIO_NOT_NULL); } - if(StringUtils.isNull(withdrawalProcess.getEffectiveDate())){ + if (StringUtils.isNull(withdrawalProcess.getEffectiveDate())) { return AjaxResult.error(ConfigMsgConstants.EFFECTIVE_DATE_NOT_NULL); } - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",SecurityUtils.getPkCountry()); - BdWithdrawalProcess withdrawalProcessCheck=withdrawalProcessService.getOne(queryWrapper); - if(StringUtils.isNotNull(withdrawalProcessCheck)){ + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); + BdWithdrawalProcess withdrawalProcessCheck = withdrawalProcessService.getOne(queryWrapper); + if (StringUtils.isNotNull(withdrawalProcessCheck)) { return AjaxResult.error(ConfigMsgConstants.SERVICE_TYPE_REPEAT); } withdrawalProcess.setPkCountry(SecurityUtils.getPkCountry()); @@ -141,22 +107,18 @@ public class BdWithdrawalProcessController extends BaseController { /** - * @description: 修改提现手续费设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [withdrawalParam] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 修改提现手续费设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.UPDATE) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.UPDATE) @PostMapping("/update") public AjaxResult update(@RequestBody BdWithdrawalProcess withdrawalProcess) { - if(StringUtils.isNull(withdrawalProcess.getServiceType())){ + if (StringUtils.isNull(withdrawalProcess.getServiceType())) { return AjaxResult.error(ConfigMsgConstants.SERVICE_TYPE_NOT_NULL); } - if(StringUtils.isNull(withdrawalProcess.getServiceRatio())){ + if (StringUtils.isNull(withdrawalProcess.getServiceRatio())) { return AjaxResult.error(ConfigMsgConstants.SERVICE_RATIO_NOT_NULL); } - if(StringUtils.isNull(withdrawalProcess.getEffectiveDate())){ + if (StringUtils.isNull(withdrawalProcess.getEffectiveDate())) { return AjaxResult.error(ConfigMsgConstants.EFFECTIVE_DATE_NOT_NULL); } withdrawalProcess.setPkCountry(SecurityUtils.getPkCountry()); @@ -168,13 +130,9 @@ public class BdWithdrawalProcessController extends BaseController { /** - * @description: 查询单条提现手续费设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 查询单条提现手续费设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.SELECT) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.SELECT) @GetMapping("/getOne/{pkId}") public AjaxResult getOne(@PathVariable Integer pkId) { BdWithdrawalProcess withdrawalProcess = withdrawalProcessService.getById(pkId); @@ -184,19 +142,15 @@ public class BdWithdrawalProcessController extends BaseController { /** - * @description: 删除提现手续费设置 - * @author: zhang jing - * @date: 2022/8/30 10:21 - * @param: [pkId] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 删除提现手续费设置 **/ - @Log(module = EOperationModule.WALLET_CONFIG,business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE,method = EOperationMethod.DELETE) + @Log(module = EOperationModule.WALLET_CONFIG, business = EOperationBusiness.WITHDRAWAL_SERVICE_CHARGE, method = EOperationMethod.DELETE) @DeleteMapping("/{pkId}") public AjaxResult delete(@PathVariable Long pkId) { - BdWithdrawalAutoExt withdrawalAutoExt =new BdWithdrawalAutoExt(); + BdWithdrawalAutoExt withdrawalAutoExt = new BdWithdrawalAutoExt(); withdrawalAutoExt.setPkCountry(SecurityUtils.getPkCountry()); - Integer count= withdrawalService.checkWithdraw(withdrawalAutoExt); - if(count>0){ + Integer count = withdrawalService.checkWithdraw(withdrawalAutoExt); + if (count > 0) { return AjaxResult.error(ConfigMsgConstants.ENABLE_STATE_NOT_DELETE); } UpdateWrapper updateWrapper = new UpdateWrapper<>(); @@ -204,7 +158,6 @@ public class BdWithdrawalProcessController extends BaseController { updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); updateWrapper.set("MODIFIED_TIME", new Date()); - redisService.deleteObject(CacheConstants.BD_WITHDRAWAL + SecurityUtils.getPkCountry()); return toAjax(withdrawalProcessService.update(updateWrapper)); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBarCodeMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBarCodeMapper.java index 65e310f4..ce6ee7f4 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBarCodeMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBarCodeMapper.java @@ -9,23 +9,11 @@ import java.util.List; /** * 条码配置 Mapper 接口 - * - * @author hzs - * @since 2022-10-17 */ public interface BdBarCodeMapper extends BaseMapper { List queryBarCodeList(BdBarCodeExt barCodeExt); - /** - * @description: 追溯码查询特殊产品 - * @author: zhang jing - * @date: 2023/8/14 9:45 - * @param: [barCodeExt] - * @return: com.hzs.common.domain.system.config.ext.BdBarCodeExt - **/ - BdBarCodeExt querySpecialProduct(BdBarCode barCode); - BdBarCode getOneBarCode(Long pkId); /** diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDifferenceMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDifferenceMapper.java index 6182fc27..2f6d876f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDifferenceMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDifferenceMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdBonusDifference; /** - *

* 一次性补差升级配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-11-02 */ public interface BdBonusDifferenceMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDirectLoopMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDirectLoopMapper.java index 5c594847..37d59b0e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDirectLoopMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdBonusDirectLoopMapper.java @@ -1,27 +1,11 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdBonusDirectLoop; -import com.hzs.common.domain.system.config.ext.BdBonusDirectLoopExt; - -import java.util.List; /** - *

* 直推循环配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-11-03 */ public interface BdBonusDirectLoopMapper extends BaseMapper { - /** - * 查询奖金推荐明细 - * @return: List - * @Author: sui q - * @Date: 2023/2/17 17:34 - */ - List queryBonusDirectLoop(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdLabelMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdLabelMapper.java index f5180d4e..8078c3c1 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdLabelMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdLabelMapper.java @@ -1,22 +1,16 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdLabel; import com.hzs.system.config.vo.BdLabelVO; -import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 商品标签数据 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-20 */ public interface BdLabelMapper extends BaseMapper { + /** * 根据国家查询标签 * @@ -25,13 +19,4 @@ public interface BdLabelMapper extends BaseMapper { */ List getLabelByPkCountry(BdLabelVO bdLabelVO); - - /** - * 根据标签类型查询标签信息 - * - * @param labelType 标签类型 - * @return List - */ - List findLabelByType(@Param("labelType") Integer labelType, @Param("pkCountry") Integer pkCountry); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeDetailsMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeDetailsMapper.java index a2f6f681..fe61d351 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeDetailsMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRangeDetailsMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdRangeDetails; import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; @@ -8,21 +7,13 @@ import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; import java.util.List; /** - *

* 极差详细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface BdRangeDetailsMapper extends BaseMapper { /** - * @description: 查询极差详情 - * @author: zhang jing - * @date: 2022/10/28 11:34 - * @param: [rangeDetailsExt] - * @return: java.util.List + * 查询极差详情 **/ List getBdRangeDetailsList(BdRangeDetailsExt rangeDetailsExt); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRepoDirectPushMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRepoDirectPushMapper.java index 81ed63d1..6a8724de 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRepoDirectPushMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdRepoDirectPushMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdRepoDirectPush; /** - *

* 复购直推配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2023-06-29 */ public interface BdRepoDirectPushMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShareMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShareMapper.java index a2f27c17..eb016e30 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShareMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShareMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdShare; /** - *

* 分红配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-09-22 */ public interface BdShareMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShopMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShopMapper.java index 7afa7b31..71cb1e6a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShopMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdShopMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdShop; /** - *

- * 店铺配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-09-15 + * 店铺配置 Mapper 接口 */ public interface BdShopMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java index e8f6c9f7..9cd8d0e1 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTradeWhiteConfigMapper.java @@ -28,12 +28,4 @@ public interface BdTradeWhiteConfigMapper extends BaseMapper */ BdTradeWhiteConfig selectTradeWhiteConfigByCondition(BdTradeWhiteConfigVO tradeWhiteConfigVO); - /** - * 查询配置伞下白名单的会员 - * - * @param tradeWhiteConfigVO 入参 - * @return List - */ - List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTransferMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTransferMapper.java index f9074206..2311c8a6 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTransferMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdTransferMapper.java @@ -1,26 +1,16 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdTransfer; /** - *

* 转账设置主表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-09-07 */ public interface BdTransferMapper extends BaseMapper { /** - * @description: 查询会员是否有转账数据 - * @author: zhang jing - * @date: 2023/3/15 19:42 - * @param: [transfer] - * @return: java.lang.Integer + * 查询会员是否有转账数据 **/ Integer checkTransfer(BdTransfer transfer); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalAutoMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalAutoMapper.java index cfa78b6c..bb27ce5d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalAutoMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalAutoMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdWithdrawalAuto; /** - *

* 自动提现明细表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-08-31 */ public interface BdWithdrawalAutoMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalMapper.java index 86217bb0..84183be8 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalMapper.java @@ -1,6 +1,5 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdWithdrawal; import com.hzs.common.domain.system.config.ext.BdWithdrawalAutoExt; @@ -9,44 +8,26 @@ import org.apache.ibatis.annotations.Param; import java.util.List; - /** - *

* 提现设置主表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-08-29 */ public interface BdWithdrawalMapper extends BaseMapper { List getWithdrawalAutoList(BdWithdrawalAutoExt withdrawalAutoExt); /** - * @description: 查询会员提价表是否有数据 - * @author: zhang jing - * @date: 2023/3/16 11:06 - * @param: [withdrawalAutoExt] - * @return: java.lang.Integer + * 查询会员提价表是否有数据 **/ - Integer checkWithdraw (BdWithdrawalAutoExt withdrawalAutoExt); - /** - * @description: 根据国家查询提现配置列表 - * @author: zhang jing - * @date: 2023/12/13 13:57 - * @param: [pkCountry] - * @return: java.util.List - **/ - List queryWithdrawal(@Param("pkCountry") Integer pkCountry,@Param("pkAccount") Integer pkAccount); + Integer checkWithdraw(BdWithdrawalAutoExt withdrawalAutoExt); /** - * @description: 查询提现配置列表 - * @author: zhang jing - * @date: 2024/6/17 16:27 - * @param: [withdrawalExt] - * @return: java.util.List + * 根据国家查询提现配置列表 + **/ + List queryWithdrawal(@Param("pkCountry") Integer pkCountry, @Param("pkAccount") Integer pkAccount); + + /** + * 查询提现配置列表 **/ List listExt(BdWithdrawalExt withdrawalExt); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalProcessMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalProcessMapper.java index 16763b28..3ea0ac08 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalProcessMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalProcessMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdWithdrawalProcess; /** - *

* 提现手续费配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-11-02 */ public interface BdWithdrawalProcessMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalSpecialMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalSpecialMapper.java index 09cc4714..12840daf 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalSpecialMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalSpecialMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdWithdrawalSpecial; /** - *

* 提现设置特殊配置 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-09-06 */ public interface BdWithdrawalSpecialMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalTaxMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalTaxMapper.java index 88a90a4c..072e687b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalTaxMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/mapper/BdWithdrawalTaxMapper.java @@ -1,16 +1,10 @@ package com.hzs.system.config.mapper; - import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.system.config.BdWithdrawalTax; /** - *

* 个税明细表 Mapper 接口 - *

- * - * @author zhangjing - * @since 2022-09-06 */ public interface BdWithdrawalTaxMapper extends BaseMapper { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyDetailParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyDetailParam.java deleted file mode 100644 index e6c2dc36..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyDetailParam.java +++ /dev/null @@ -1,113 +0,0 @@ -package com.hzs.system.config.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -/** - *

- * 消费配置详情表 - *

- * - * @author zhangjing - * @since 2022-08-26 - */ -@EqualsAndHashCode(callSuper = true) -@Data -public class BdAreaCurrencyDetailParam extends BaseEntity { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - private Long pkId; - - /** - * 消费配置主键 - */ - private Integer pkAreaCurrency; - - /** - * 账户类型 - */ - private Integer pkAccount; - /** - * 账户类型 - */ - private String pkAccountStr; - - /** - * 扣除顺序 - */ - private Integer deductSort; - - /** - * 扣除比例 - */ - private BigDecimal deductRatio; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 修改人 - */ - private Long pkModified; - - /** - * 修改时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date modifiedTime; - - /** - * 逻辑删除 (0=未删除,1已删除) - */ - @JsonIgnore - private Integer delFlag; - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 请求参数 - */ - @JsonIgnore - @TableField(exist = false) - private Map params; - - @Override - public Map getParams() { - if (params == null) { - params = new HashMap<>(); - } - return params; - } - - @Override - public void setParams(Map params) { - this.params = params; - } - - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyParam.java deleted file mode 100644 index 1bc63c3d..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdAreaCurrencyParam.java +++ /dev/null @@ -1,96 +0,0 @@ -package com.hzs.system.config.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonIgnore; -import lombok.Data; - -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -/** - *

- * 消费配置表 - *

- * - * @author zhangjing - * @since 2022-08-26 - */ -@Data -public class BdAreaCurrencyParam { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - private Integer pkId; - - /** - * 所属专区 - */ - private Integer specialArea; - - /** - * 所属专区名称 - */ - private String specialAreaName; - - /** - * 生效日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date effectiveDate; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 修改人 - */ - private Long pkModified; - - /** - * 修改时间 - */ - private Date modifiedTime; - - /** - * 所属国家 - */ - private Integer pkCountry; - - /** - * 删除标志(0代表存在 1代表删除) - */ - private Integer delFlag; - - - /** - * 请求参数 - */ - @JsonIgnore - @TableField(exist = false) - private Map params; - - public Map getParams() { - if (params == null) { - params = new HashMap<>(); - } - return params; - } - - public void setParams(Map params) { - this.params = params; - } - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdBarCodeParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdBarCodeParam.java deleted file mode 100644 index 9218b86e..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdBarCodeParam.java +++ /dev/null @@ -1,86 +0,0 @@ -package com.hzs.system.config.param; - -import lombok.Data; - -/** - *

- * 条形码配置参数类 - *

- * - * @author zhangjing - * @since 2022-08-29 - */ -@Data -public class BdBarCodeParam { - - private static final long serialVersionUID = 1L; - - private Long pkId; - - /** - * 产品编号 - */ - private Integer pkProduct; - - /** - * 前缀 - */ - private String prefix; - - /** - * 是否年 - */ - private Integer isYear; - - /** - * 是否月 - */ - private Integer isMonth; - - /** - * 尾号位数 - */ - private Integer tailNumber; - - /** - * 是否初始化 是则通过定时任务初始化当前尾号 - */ - private Integer isInitialize; - - /** - * 初始化尾号 当前尾号为空时,当前尾号变为初始化尾号 - */ - private Long endNumber; - - /** - * 当前尾号 已经生成的条形码最新的尾号 - */ - private Long currentNumber; - - /** - * 条码总数 - */ - private int totalBarCode; - - /** - * 已使用总数 - */ - private int usedBarCode; - - /** - * 是否启用 - */ - private Integer enableState; - /** - * 产品名称 - */ - private String productName; - /** - * 产品名称 - */ - private String productCode; - - - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdWithdrawalParam.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdWithdrawalParam.java deleted file mode 100644 index adc091c6..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/param/BdWithdrawalParam.java +++ /dev/null @@ -1,137 +0,0 @@ -package com.hzs.system.config.param; - -import com.baomidou.mybatisplus.annotation.TableField; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.fasterxml.jackson.annotation.JsonIgnore; -import lombok.Data; - -import java.math.BigDecimal; -import java.util.Date; -import java.util.HashMap; -import java.util.Map; - -/** - *

- * 提现设置主表 - *

- * - * @author zhangjing - * @since 2022-08-29 - */ -@Data - -public class BdWithdrawalParam { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - private Integer pkId; - - /** - * 最低提现金额 - */ - private BigDecimal minAmount; - - /** - * 最高提现金额 - */ - private BigDecimal maxAmount; - - /** - * 是否整取 0是 1否 - */ - private Integer isRounding; - /** - * 是否整取 0是 1否 - */ - private String isRoundingStr; - - /** - * 是否自动提现 0是 1否 - */ - private Integer isAuto; - /** - * 是否自动提现 0是 1否 - */ - private String isAutoStr; - - /** - * 手续费比例 - */ - private BigDecimal serviceRatio; - - /** - * 是否有个税 0是 1否 - */ - private Integer isIncomeTax; - /** - * 是否有个税 0是 1否 - */ - private String isIncomeTaxStr; - - /** - * 生效日期 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date effectiveDate; - - /** - * 创建人 - */ - private Long pkCreator; - - /** - * 创建时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 修改人 - */ - private Long pkModified; - - /** - * 修改时间 - */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - private Date modifiedTime; - - /** - * 逻辑删除 (0=未删除,1已删除) - */ - @JsonIgnore - private Integer delFlag; - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 整取类型 1、向上取整 2 、向下取整 3 、四舍五入 来源枚举 ERoundingType - */ - private Integer roundingType; - /** - * 请求参数 - */ - @JsonIgnore - @TableField(exist = false) - private Map params; - - public Map getParams() { - if (params == null) { - params = new HashMap<>(); - } - return params; - } - - public void setParams(Map params) { - this.params = params; - } - - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaCurrencyServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaCurrencyServiceProvider.java index 62253581..40c9747c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaCurrencyServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaCurrencyServiceProvider.java @@ -23,11 +23,7 @@ import java.util.List; import java.util.Set; /** - * @Description: 专区币种配置提供的公共api服务 - * @Author: sui q - * @Time: 2022/9/6 10:41 - * @Classname: AreaCurrencyServiceProvider - * @PackageName: com.hzs.system.config.provider + * 专区币种配置提供的公共api服务 */ @DubboService public class AreaCurrencyServiceProvider implements IAreaCurrencyServiceApi { @@ -52,15 +48,6 @@ public class AreaCurrencyServiceProvider implements IAreaCurrencyServiceApi { return R.ok(areaCurrencyDTOList); } - /** - * 根据条件查找对应的币种配置 - * - * @param specialArea 所属专区 - * @param pkCountry 国家 - * @return: R> - * @Author: sui q - * @Date: 2022/9/6 10:37 - */ @Override public R> queryAreaCurrencyByCondition(Integer specialArea, Integer pkCountry) { List areaCurrencyExtList = bdAccountService.queryAreaCurrencyByCondition(specialArea, pkCountry); @@ -92,13 +79,6 @@ public class AreaCurrencyServiceProvider implements IAreaCurrencyServiceApi { return R.ok(null); } - /** - * 批量查询重销的扣除比例 - * - * @param pkCurrencySet - * @param account - * @return - */ @Override public List queryAreaCurrencyBySpecialArea(Set pkCurrencySet, Integer account) { List resultList = new ArrayList<>(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaFreePostageProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaFreePostageProvider.java index 3ff107a1..dbc58cd9 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaFreePostageProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AreaFreePostageProvider.java @@ -1,8 +1,7 @@ package com.hzs.system.config.provider; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.hzs.common.core.constant.SystemFieldConstants; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.system.config.BdAreaFreePostage; @@ -14,11 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** - * @Description: 专区免邮服务 - * @Author: jiang chao - * @Time: 2023/12/1 11:22 - * @Classname: AreaFreePostageProvider - * @PackageName: com.hzs.system.config.provider + * 专区免邮服务 */ @DubboService public class AreaFreePostageProvider implements IAreaFreePostageServiceApi { @@ -30,11 +25,11 @@ public class AreaFreePostageProvider implements IAreaFreePostageServiceApi { public R queryAreaFreePostage(Integer specialArea, Integer pkCountry) { BdAreaFreePostage areaFreePostage = null; - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); - queryWrapper.eq("SPECIAL_AREA", specialArea); - queryWrapper.eq("ENABLE_STATE", EYesNo.YES.getIntValue()); - queryWrapper.orderByDesc(SystemFieldConstants.CREATION_TIME); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdAreaFreePostage::getPkCountry, pkCountry); + queryWrapper.eq(BdAreaFreePostage::getSpecialArea, specialArea); + queryWrapper.eq(BdAreaFreePostage::getEnableState, EYesNo.YES.getIntValue()); + queryWrapper.orderByDesc(BdAreaFreePostage::getCreationTime); List list = iBdAreaFreePostageService.list(queryWrapper); if (CollectionUtil.isNotEmpty(list)) { areaFreePostage = list.get(0); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java index db0e926b..0d5b9091 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/AwardsServiceProvider.java @@ -40,8 +40,4 @@ public class AwardsServiceProvider implements IAwardsServiceApi { return R.ok(countryAwardsMap); } - @Override - public R> queryByPkCountryAwards(Integer pkCountry) { - return R.ok(iBdAwardsService.queryByPkCountryAwards(pkCountry)); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BdBarCodeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BdBarCodeServiceProvider.java deleted file mode 100644 index d26df948..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BdBarCodeServiceProvider.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.system.config.provider; - -import cn.hutool.core.bean.BeanUtil; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.ext.BdAwardsExt; -import com.hzs.system.base.service.IBdCountryService; -import com.hzs.system.config.IAwardsServiceApi; -import com.hzs.system.config.IBdBarCodeServiceApi; -import com.hzs.system.config.service.IBdAwardsService; -import com.hzs.system.config.service.IBdBarCodeService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -@DubboService -public class BdBarCodeServiceProvider implements IBdBarCodeServiceApi { - - @Autowired - private IBdBarCodeService iBdBarCodeService; - - /** - * @description: 定时初始化条形码配置 - * @author: zhang jing - * @date: 2024/5/8 11:18 - * @param: [] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R updatWarehouseLog() { - return R.ok(iBdBarCodeService.updatWarehouseLog()); - } - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BonusItemsServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BonusItemsServiceProvider.java index 79c1df9c..b20a6750 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BonusItemsServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/BonusItemsServiceProvider.java @@ -2,19 +2,15 @@ package com.hzs.system.config.provider; import cn.hutool.core.bean.BeanUtil; import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.ERangeType; import com.hzs.common.core.utils.ComputeUtil; import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.bonus.BdBonusService; import com.hzs.common.domain.system.base.BdCountry; import com.hzs.common.domain.system.base.BdCurrency; import com.hzs.common.domain.system.config.*; -import com.hzs.common.domain.system.config.ext.BdBonusDirectLoopExt; import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; import com.hzs.system.base.service.IBdCountryService; import com.hzs.system.base.service.IBdCurrencyService; import com.hzs.system.bonus.service.IBdBonusDeductService; -import com.hzs.system.bonus.service.IBdBonusServiceService; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.*; import com.hzs.system.config.service.*; @@ -32,37 +28,17 @@ public class BonusItemsServiceProvider implements IBonusItemsServiceApi { @Autowired private IBdBonusItemsService bonusItemsService; - - @Autowired - private IBdBonusDirectLoopService bdBonusDirectLoopService; - @Autowired private IBdBonusDirectService bdBonusDirectService; - @Autowired - private IBdBonusDifferenceService bdBonusDifferenceService; - - @Autowired - private IBdGradeService gradeService; - - @Autowired - private IBdAwardsService awardsService; - + private IBdAwardsService iBdAwardsService; @Autowired private IBdBonusDeductService bdBonusDeductService; - - @Autowired - private IBdBonusServiceService bdBonusServiceService; - @Autowired private IBdCurrencyService bdCurrencyService; - @Autowired private IBdCountryService bdCountryService; - @Autowired - private IBdRepoDirectPushService bdRepoDirectPushService; - @Override public R> queryBonusItems(Integer pkCountry) { return R.ok(bonusItemsService.queryBonusItems(pkCountry)); @@ -90,27 +66,12 @@ public class BonusItemsServiceProvider implements IBonusItemsServiceApi { countrySet.add(bdCountry.getPkId())); bonusConfigDTO.setBonusItemsExtMap(getBdBonusItemsExtMap(countrySet)); // 根据奖金项验证参数,没有配置参数的,需要提醒 - // 查询循环配置参数 - bonusConfigDTO.setBonusDirectLoopDtoMap(getBonusLoopConfig()); // 查询直推奖励配置 bonusConfigDTO.setBonusDirectDtoMap(getBonusDirectConfig()); - // 一次性补差 - bonusConfigDTO.setBonusDifferenceDtoMap(getBonusDifferenceConfig()); - // 复购直推配置 - bonusConfigDTO.setBonusRepurchasePushMap(getRepurchasePushMap()); - // 拓展奖跟辅导奖需要查询所有国家的配置 - // 拓展奖配置 - bonusConfigDTO.setGradeMap(getBonusExpandGradeConfig()); - bonusConfigDTO.setRetaiGradeList(getRetailBonusGradeConfig()); - // 辅导奖配置 - Map awardsValueMap = new HashMap<>(); - bonusConfigDTO.setAwardsMap(getBonusCoachConfig(awardsValueMap)); - bonusConfigDTO.setAwardsValueMap(awardsValueMap); - bonusConfigDTO.setAwardsList(awardsService.queryRetailAwards()); // 奖金扣项 bonusConfigDTO.setBonusDeductsMap(getBonusDeductConfig()); - // 报单服务费 - bonusConfigDTO.setBonusServiceMap(getBonusServiceConfig()); + // 奖衔列表 + bonusConfigDTO.setAwardsList(iBdAwardsService.queryAwards()); return R.ok(bonusConfigDTO); } @@ -134,39 +95,6 @@ public class BonusItemsServiceProvider implements IBonusItemsServiceApi { return bonusItemsMap; } - /** - * 复购直推奖励 - */ - private Map> getRepurchasePushMap() { - List bdRepoDirectPushList = bdRepoDirectPushService.queryRepoDirectPush(); - Map> repurchasePushMap = new HashMap<>(ComputeUtil.mapInitCapacity(bdRepoDirectPushList.size())); - bdRepoDirectPushList.forEach(bdRepoDirectPush -> { - BonusRepurchasePushDTO bonusRepurchasePushDTO = BeanUtil.copyProperties(bdRepoDirectPush, BonusRepurchasePushDTO.class); - if (repurchasePushMap.containsKey(bonusRepurchasePushDTO.getPkCountry())) { - repurchasePushMap.get(bonusRepurchasePushDTO.getPkCountry()).put(bonusRepurchasePushDTO.getAlgebra(), bonusRepurchasePushDTO); - } else { - Map map = new HashMap<>(); - map.put(bonusRepurchasePushDTO.getAlgebra(), bonusRepurchasePushDTO); - repurchasePushMap.put(bonusRepurchasePushDTO.getPkCountry(), map); - } - }); - return repurchasePushMap; - } - - /** - * 获得奖金循环配置的参数 - */ - private Map getBonusLoopConfig() { - List bonusDirectLoopList = bdBonusDirectLoopService.queryBonusDirectLoop(); - Map bonusDirectLoopDtoMap = new HashMap<>(4); - bonusDirectLoopList.forEach(bdBonusDirectLoop -> { - BonusDirectLoopDTO bonusDirectLoopDTO = BeanUtil.copyProperties(bdBonusDirectLoop, BonusDirectLoopDTO.class); - bonusDirectLoopDtoMap.put(bonusDirectLoopDTO.getPkCountry().toString() + bonusDirectLoopDTO.getBonusType() - + bonusDirectLoopDTO.getPkGrade(), bonusDirectLoopDTO); - }); - return bonusDirectLoopDtoMap; - } - /** * 获得奖金 推荐什么等级 直推奖励配置 */ @@ -180,50 +108,6 @@ public class BonusItemsServiceProvider implements IBonusItemsServiceApi { return directDtoHashMap; } - /** - * 获得奖金 推荐什么等级 直推奖励配置 - */ - private Map getBonusDifferenceConfig() { - List bdBonusDifferenceList = bdBonusDifferenceService.queryBonusDifference(); - Map bonusDifferenceDtoMap = new HashMap<>(ComputeUtil.mapInitCapacity(bdBonusDifferenceList.size())); - bdBonusDifferenceList.forEach(bonusDirectDTO -> { - BonusDifferenceDTO bonusDifferenceDTO = BeanUtil.copyProperties(bonusDirectDTO, BonusDifferenceDTO.class); - bonusDifferenceDtoMap.put(bonusDifferenceDTO.getPkCountry(), bonusDifferenceDTO); - }); - return bonusDifferenceDtoMap; - } - - /** - * 获取等级对应的拓展奖对应参数 - */ - private Map getBonusExpandGradeConfig() { - List bdGradeList = gradeService.queryBdGrade(); - Map bdGradeMap = new HashMap<>(ComputeUtil.mapInitCapacity(bdGradeList.size())); - bdGradeList.forEach(bdGrade -> - bdGradeMap.put(bdGrade.getPkCountry().toString() + "_" + bdGrade.getPkId(), bdGrade)); - return bdGradeMap; - } - - /** - * 获取等级对应的拓展奖对应参数 - */ - private List getRetailBonusGradeConfig() { - return gradeService.queryRetailGrade(); - } - - /** - * 获取奖衔对应的辅导奖对应参数 - */ - private Map getBonusCoachConfig(Map awardsValueMap) { - List bdAwardsList = awardsService.queryAwards(); - Map bdAwardsMap = new LinkedHashMap<>(ComputeUtil.mapInitCapacity(bdAwardsList.size())); - bdAwardsList.forEach(bdAwards -> { - bdAwardsMap.put(bdAwards.getPkCountry().toString() + ERangeType.AWARDS.getValue() + bdAwards.getPkId(), bdAwards); - awardsValueMap.put(bdAwards.getPkCountry().toString() + ERangeType.AWARDS.getValue() + bdAwards.getAwardsValue(), bdAwards); - }); - return bdAwardsMap; - } - /** * 获取每个国家奖金项对应的扣项 */ @@ -235,15 +119,4 @@ public class BonusItemsServiceProvider implements IBonusItemsServiceApi { return bdBonusDeductMap; } - /** - * 获取每个国家奖金项对应的扣项 - */ - private Map getBonusServiceConfig() { - List bdBonusServiceList = bdBonusServiceService.queryBonusService(); - Map bdBonusDeductMap = new HashMap<>(ComputeUtil.mapInitCapacity(bdBonusServiceList.size())); - bdBonusServiceList.forEach(bdBonusService -> - bdBonusDeductMap.put(bdBonusService.getPkCountry().toString() + bdBonusService.getServiceType(), bdBonusService)); - return bdBonusDeductMap; - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java index 02e35d81..16060320 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/GradeServiceProvider.java @@ -45,13 +45,6 @@ public class GradeServiceProvider implements IGradeServiceApi { return R.ok(gradeDTOList); } - @Override - public R> queryHaiFunGradeConfigByCondition(Integer pkCountry) { - List gradeList = iBdGradeService.queryHaiFunGradeConfigByCondition(pkCountry); - List gradeDTOList = getGradeDTOS(pkCountry, gradeList); - return R.ok(gradeDTOList); - } - private List getGradeDTOS(Integer pkCountry, List gradeList) { List gradeDTOList = new ArrayList<>(); Map> gradeScopeMap = new HashMap<>(); @@ -116,11 +109,6 @@ public class GradeServiceProvider implements IGradeServiceApi { return R.ok(gradeDTOList); } - @Override - public R> queryGrowUpFootmarkGrade(Integer pkCountry) { - return R.ok(iBdGradeService.queryGrowUpFootmarkGrade(pkCountry)); - } - @Override public R> findAll() { List gradeList = iBdGradeService.list(); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java index 5fcd15ef..457d8373 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ITradeConfigServiceProvider.java @@ -41,9 +41,4 @@ public class ITradeConfigServiceProvider implements ITradeConfigServiceApi { return R.ok(iCuMemberTransferWhiteService.selectTransferWhiteByPkMember(pkMember, pkCountry)); } - @Override - public R> selectTradeWhiteConfigByUnderBlood(TradeConfigDTO tradeConfigDTO) { - return R.ok(iBdTradeWhiteConfigService.selectTradeWhiteConfigByUnderBlood(BeanUtil.copyProperties(tradeConfigDTO, BdTradeWhiteConfigVO.class))); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/IVertexServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/IVertexServiceProvider.java index c1dd55de..92c5a08b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/IVertexServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/IVertexServiceProvider.java @@ -1,10 +1,9 @@ package com.hzs.system.config.provider; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.common.core.domain.R; import com.hzs.common.domain.vertex.BdVertex; - import com.hzs.common.domain.vertex.ext.BdVertexExt; import com.hzs.system.config.IVertexServiceApi; import com.hzs.system.config.dto.VertexDTO; @@ -15,18 +14,11 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.ArrayList; import java.util.List; -/** - * @Description: - * @Author: yuhui - * @Time: 2022/11/16 15:58 - * @Classname: IVertexServiceProvider - * @PackageName: com.hzs.sale.vertex.provider - */ @DubboService public class IVertexServiceProvider implements IVertexServiceApi { @Autowired - private IBdVertexService vertexService; + private IBdVertexService iBdVertexService; /** * 查询所有体系配置 @@ -35,7 +27,7 @@ public class IVertexServiceProvider implements IVertexServiceApi { */ @Override public R> findAll() { - List list = vertexService.list(); + List list = iBdVertexService.list(); List resultList = new ArrayList<>(); for (BdVertex bdVertex : list) { VertexDTO vertexDTO = BeanUtil.copyProperties(bdVertex, VertexDTO.class); @@ -51,9 +43,9 @@ public class IVertexServiceProvider implements IVertexServiceApi { */ @Override public R> findAllByPkCountry(Integer pkCountry) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_COUNTRY", pkCountry); - List list = vertexService.list(queryWrapper); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdVertex::getPkCountry, pkCountry); + List list = iBdVertexService.list(queryWrapper); List resultList = new ArrayList<>(); for (BdVertex bdVertex : list) { VertexDTO vertexDTO = BeanUtil.copyProperties(bdVertex, VertexDTO.class); @@ -64,7 +56,7 @@ public class IVertexServiceProvider implements IVertexServiceApi { @Override public R findById(Long pkVertex) { - BdVertexExt bdVertex = vertexService.queryVertexAndMember(pkVertex); + BdVertexExt bdVertex = iBdVertexService.queryVertexAndMember(pkVertex); if (null != bdVertex) { VertexDTO vertexDTO = BeanUtil.copyProperties(bdVertex, VertexDTO.class); return R.ok(vertexDTO); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/LabelServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/LabelServiceProvider.java index f6dd49f7..273d1a9c 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/LabelServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/LabelServiceProvider.java @@ -8,29 +8,18 @@ import com.hzs.system.config.service.IBdLabelService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.List; - /** - * @Description: 标签配置 dubbo服务 - * @Author: ljc - * @Time: 2023/2/1 19:07 - * @Classname: LabelServiceProvider - * @Package_name: com.hzs.system.config.provider + * 标签配置 dubbo服务 */ @DubboService public class LabelServiceProvider implements ILabelServiceApi { + @Autowired - IBdLabelService bdLabelService; + private IBdLabelService iBdLabelService; @Override public R getByPkId(Integer labelId) { - return R.ok(BeanUtil.copyProperties(bdLabelService.getByPkId(labelId), LabelConfigDTO.class)); + return R.ok(BeanUtil.copyProperties(iBdLabelService.getByPkId(labelId), LabelConfigDTO.class)); } - @Override - public R> getLabelByType(Integer labelType, Integer pkCountry) { - return R.ok(BeanUtil.copyToList(bdLabelService.findLabelByType(labelType,pkCountry),LabelConfigDTO.class)); - } - - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java index 7a6f778c..425ff154 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RangeServiceProvider.java @@ -25,11 +25,6 @@ public class RangeServiceProvider implements IRangeServiceApi { return R.ok(iBdRangeService.queryRange(pkCountry)); } - @Override - public R> queryRangeDto() { - return R.ok(iBdRangeService.queryRangeDto()); - } - @Override public R queryRangeDtoByCondition(Integer pkCountry, Integer rangeType, Integer pkLevel) { return R.ok(iBdRangeService.getRangeDTO(pkCountry, rangeType, pkLevel)); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RetailRangeServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RetailRangeServiceProvider.java deleted file mode 100644 index 5476af90..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/RetailRangeServiceProvider.java +++ /dev/null @@ -1,15 +0,0 @@ -package com.hzs.system.config.provider; - -import com.hzs.system.config.IRetailRangeServiceApi; -import org.apache.dubbo.config.annotation.DubboService; - -/** - * @Description: 新零售极差dubbo服务接口 - * @Author: jiang chao - * @Time: 2025/2/17 9:46 - * @Classname: RetailRangeServiceProvider - * @PackageName: com.hzs.system.config.provider - */ -@DubboService -public class RetailRangeServiceProvider implements IRetailRangeServiceApi { -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShareServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShareServiceProvider.java deleted file mode 100644 index 78bb8b14..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShareServiceProvider.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.system.config.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAccount; -import com.hzs.common.domain.system.config.BdShare; -import com.hzs.system.config.IAccountServiceApi; -import com.hzs.system.config.IShareServiceApi; -import com.hzs.system.config.service.IBdAccountService; -import com.hzs.system.config.service.IBdShareService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @Description: 分红配置的dubbo服务类 - * @Author: zhang jing - * @Time: 2022/9/9 14:11 - * @Classname: GradeServiceProvider - * @PackageName: com.hzs.system.config.provider - */ -@DubboService -public class ShareServiceProvider implements IShareServiceApi { - - @Autowired - private IBdShareService shareService; - - /** - * @description: 根据ID查询分红配置 - * @author: zhang jing - * @date: 2022/9/22 10:04 - * @param: [accountProperty, pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - @Override - public R getBdShareById(Integer id) { - return R.ok(shareService.getBdShareById(id)); - } -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShopServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShopServiceProvider.java deleted file mode 100644 index 62beafe5..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/ShopServiceProvider.java +++ /dev/null @@ -1,40 +0,0 @@ -package com.hzs.system.config.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.ext.BdBonusItemsExt; -import com.hzs.common.domain.system.config.ext.BdShopExt; -import com.hzs.system.config.IBonusItemsServiceApi; -import com.hzs.system.config.IShopServiceApi; -import com.hzs.system.config.service.IBdBonusItemsService; -import com.hzs.system.config.service.IBdShopService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @description: 奖项配置 - * @author: zhang jing - * @date: 2022/11/10 17:02 - * @param: - * @return: - **/ -@DubboService -public class ShopServiceProvider implements IShopServiceApi { - - @Autowired - private IBdShopService shopService; - - /** - * @description: 根据国家查询奖项配置列表 - * @author: zhang jing - * @date: 2022/9/29 15:17 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - @Override - public R> queryShop(Integer pkCountry) { - return R.ok(shopService.queryShop(pkCountry)); - } - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/TransferServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/TransferServiceProvider.java index 5fafcb5d..b9495d99 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/TransferServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/TransferServiceProvider.java @@ -3,19 +3,12 @@ package com.hzs.system.config.provider; import com.hzs.common.core.domain.R; import com.hzs.common.domain.system.config.BdTransfer; import com.hzs.system.config.ITransferServiceApi; -import com.hzs.system.config.ITransferServiceApi; import com.hzs.system.config.service.IBdTransferService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.List; - /** - * @description: 转账配置的dubbo服务类 - * @author: zhang jing - * @date: 2022/9/28 15:26 - * @param: - * @return: + * 转账配置的dubbo服务类 **/ @DubboService public class TransferServiceProvider implements ITransferServiceApi { @@ -23,15 +16,9 @@ public class TransferServiceProvider implements ITransferServiceApi { @Autowired private IBdTransferService withdrawalService; - /** - * @description: 根据国家查询转账配置列表 - * @author: zhang jing - * @date: 2022/9/28 10:34 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R queryTransfer(Integer pkCountry) { return R.ok(withdrawalService.queryTransfer(pkCountry)); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalAutoServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalAutoServiceProvider.java deleted file mode 100644 index c418d8bb..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalAutoServiceProvider.java +++ /dev/null @@ -1,36 +0,0 @@ -package com.hzs.system.config.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalAuto; -import com.hzs.system.config.IWithdrawalAutoServiceApi; -import com.hzs.system.config.service.IBdWithdrawalAutoService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - -/** - * @Description: 提现配置的dubbo服务类 - * @Author: zhang jing - * @Time: 2022/9/9 14:11 - * @Classname: GradeServiceProvider - * @PackageName: com.hzs.system.config.provider - */ -@DubboService -public class WithdrawalAutoServiceProvider implements IWithdrawalAutoServiceApi { - - @Autowired - private IBdWithdrawalAutoService withdrawalAutoService; - - /** - * @description: 根据国家查询自动提现明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:20 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - @Override - public R> queryWithdrawalAuto(Integer pkCountry) { - return R.ok(withdrawalAutoService.queryWithdrawalAuto(pkCountry)); - } -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalProcessServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalProcessServiceProvider.java index 5fb97272..2b49e550 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalProcessServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalProcessServiceProvider.java @@ -10,28 +10,17 @@ import org.springframework.beans.factory.annotation.Autowired; import java.util.List; /** - * @Description: 提现配置的dubbo服务类 - * @Author: zhang jing - * @Time: 2022/9/9 14:11 - * @Classname: GradeServiceProvider - * @PackageName: com.hzs.system.config.provider + * 提现配置的dubbo服务类 */ @DubboService public class WithdrawalProcessServiceProvider implements IWithdrawalProcessServiceApi { @Autowired - private IBdWithdrawalProcessService withdrawalProcessService; + private IBdWithdrawalProcessService iBdWithdrawalProcessService; - - /** - * @description: 根据国家查询提现手续费配置 - * @author: zhang jing - * @date: 2022/11/2 17:22 - * @param: [pkCountry]国家 - * @return: java.util.List> - **/ @Override public R queryBdWithdrawalProcess(Integer pkCountry) { - return R.ok(withdrawalProcessService.queryBdWithdrawalProcess(pkCountry)); + return R.ok(iBdWithdrawalProcessService.queryBdWithdrawalProcess(pkCountry)); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalServiceProvider.java index 392b9558..a199ef1f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalServiceProvider.java @@ -1,53 +1,24 @@ package com.hzs.system.config.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdAccount; import com.hzs.common.domain.system.config.BdWithdrawal; -import com.hzs.common.domain.system.config.BdWithdrawalAuto; -import com.hzs.system.config.IAccountServiceApi; import com.hzs.system.config.IWithdrawalServiceApi; -import com.hzs.system.config.service.IBdAccountService; -import com.hzs.system.config.service.IBdWithdrawalAutoService; import com.hzs.system.config.service.IBdWithdrawalService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.List; - /** - * @Description: 提现配置的dubbo服务类 - * @Author: zhang jing - * @Time: 2022/9/9 14:11 - * @Classname: GradeServiceProvider - * @PackageName: com.hzs.system.config.provider + * 提现配置的dubbo服务类 */ @DubboService public class WithdrawalServiceProvider implements IWithdrawalServiceApi { @Autowired - private IBdWithdrawalService withdrawalService; + private IBdWithdrawalService iBdWithdrawalService; - /** - * @description: 根据国家查询提现配置明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:08 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ @Override - public R queryWithdrawal(Integer pkCountry,Integer pkAccount) { - return R.ok(withdrawalService.queryWithdrawal(pkCountry,pkAccount)); + public R queryWithdrawal(Integer pkCountry, Integer pkAccount) { + return R.ok(iBdWithdrawalService.queryWithdrawal(pkCountry, pkAccount)); } - /** - * @description: 查询所有自动提现的配置 - * @author: zhang jing - * @date: 2022/11/1 19:43 - * @param: [] - * @return: com.hzs.common.core.domain.R> - **/ - @Override - public R> queryWithdrawalByIsAuto() { - return R.ok(withdrawalService.queryWithdrawalByIsAuto()); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalSpecialServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalSpecialServiceProvider.java deleted file mode 100644 index 7793de5c..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalSpecialServiceProvider.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.hzs.system.config.provider; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalSpecial; -import com.hzs.system.config.IWithdrawalSpecialServiceApi; -import com.hzs.system.config.service.IBdWithdrawalSpecialService; -import org.apache.dubbo.config.annotation.DubboService; -import org.springframework.beans.factory.annotation.Autowired; - -import java.util.List; - - -@DubboService -public class WithdrawalSpecialServiceProvider implements IWithdrawalSpecialServiceApi { - - @Autowired - private IBdWithdrawalSpecialService withdrawalSpecialService; - - /** - * @description: 根据国家查询提现设置特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:24 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ - @Override - public R> queryWithdrawalSpecial(Integer pkCountry) { - return R.ok(withdrawalSpecialService.queryWithdrawalSpecial(pkCountry)); - } - - /** - * @description: 根据会员编号查询提现特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:34 - * @param: [pkCountry, memberCode] - * @return: com.hzs.common.core.domain.R - **/ - @Override - public R getWithdrawalSpecial(Integer pkCountry, String memberCode) { - return R.ok(withdrawalSpecialService.getWithdrawalSpecial(pkCountry,memberCode)); - } - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalTaxServiceProvider.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalTaxServiceProvider.java index b65736df..aca36f2b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalTaxServiceProvider.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/provider/WithdrawalTaxServiceProvider.java @@ -1,37 +1,24 @@ package com.hzs.system.config.provider; import com.hzs.common.core.domain.R; -import com.hzs.common.domain.system.config.BdWithdrawalTax; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; import com.hzs.system.config.IWithdrawalTaxServiceApi; import com.hzs.system.config.service.IBdWithdrawalTaxService; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; -import java.util.List; - /** - * @Description: 提现配置的dubbo服务类 - * @Author: zhang jing - * @Time: 2022/9/9 14:11 - * @Classname: GradeServiceProvider - * @PackageName: com.hzs.system.config.provider + * 提现配置的dubbo服务类 */ @DubboService public class WithdrawalTaxServiceProvider implements IWithdrawalTaxServiceApi { @Autowired - private IBdWithdrawalTaxService withdrawalTaxService; + private IBdWithdrawalTaxService iBdWithdrawalTaxService; - /** - * @description: 根据国家查询个税明细 - * @author: zhang jing - * @date: 2022/9/27 16:14 - * @param: [pkCountry] - * @return: com.hzs.common.core.domain.R> - **/ @Override public R queryWithdrawalTax(Integer pkCountry) { - return R.ok(withdrawalTaxService.queryWithdrawalTax(pkCountry)); + return R.ok(iBdWithdrawalTaxService.queryWithdrawalTax(pkCountry)); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java index 08a0fb90..a8acbd6b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdAwardsService.java @@ -55,21 +55,9 @@ public interface IBdAwardsService extends IService { */ List queryAwards(); - /* - * 查询新零售奖衔 - **/ - List queryRetailAwards(); - /** * 查询等级或奖衔是否被使用 **/ Integer checkGradeAwards(Long pkRegisterGrade, Long pkSettleGrade, Long pkAwards); - /** - * 根据所属国家查询奖衔 - * - * @param pkCountry - * @return - */ - List queryByPkCountryAwards(Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBankService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBankService.java index fe9e028a..d66a19c3 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBankService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBankService.java @@ -5,9 +5,6 @@ import com.hzs.common.domain.system.config.BdBank; /** * 银行卡表 服务类 - * - * @author hzs - * @since 2022-10-25 */ public interface IBdBankService extends IService { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBarCodeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBarCodeService.java index 8a88407a..5c70a02a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBarCodeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBarCodeService.java @@ -3,45 +3,24 @@ package com.hzs.system.config.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdBarCode; import com.hzs.common.domain.system.config.ext.BdBarCodeExt; -import com.hzs.system.config.param.BdBarCodeParam; import java.util.List; /** * 条码配置 服务类 - * - * @author hzs - * @since 2022-10-17 */ public interface IBdBarCodeService extends IService { /** - * @description: 查询条形码配置表 - * @author: zhang jing - * @date: 2022/10/18 15:40 - * @param: [barCode] - * @return: java.util.List + * 查询条形码配置表 **/ List queryBarCodeList(BdBarCodeExt barCodeExt); /** - * @description: 查询单条条形码配置信息 - * @author: zhang jing - * @date: 2022/10/18 17:37 - * @param: [barCode] - * @return: com.hzs.common.domain.system.config.BdBarCode + * 查询单条条形码配置信息 **/ BdBarCode getOneBarCode(Long pkId); - /** - * @description: 定时初始化条形码配置 - * @author: zhang jing - * @date: 2024/5/8 11:08 - * @param: [] - * @return: void - **/ - Boolean updatWarehouseLog(); - /** * 更新条码使用数量 * @@ -53,13 +32,4 @@ public interface IBdBarCodeService extends IService { */ int updateUsedBarCode(List idList, Integer type, Long userId, Integer pkCountry); - /** - * @description: 追溯码查询特殊产品 - * @author: zhang jing - * @date: 2023/8/14 9:46 - * @param: [barCodeExt] - * @return: com.hzs.common.domain.system.config.ext.BdBarCodeExt - **/ - BdBarCodeExt querySpecialProduct(BdBarCode barCode); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDifferenceService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDifferenceService.java index 82dcc24b..a5aafe24 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDifferenceService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDifferenceService.java @@ -1,26 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdBonusDifference; -import java.util.List; - /** - *

* 一次性补差升级配置 服务类 - *

- * - * @author zhangjing - * @since 2022-11-02 */ public interface IBdBonusDifferenceService extends IService { - /** - * 查询固定升级降级,用于海外累计升级 - * @return: List - * @Author: sui q - * @Date: 2023/2/21 11:09 - */ - List queryBonusDifference(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDirectLoopService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDirectLoopService.java index 3225b96a..5e07214b 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDirectLoopService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdBonusDirectLoopService.java @@ -1,39 +1,18 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdBonusDirectLoop; -import com.hzs.common.domain.system.config.ext.BdBonusDirectLoopExt; import com.hzs.system.config.vo.BdBonusDirectVo; -import java.util.List; - /** - *

* 直推循环配置 服务类 - *

- * - * @author zhangjing - * @since 2022-11-03 */ public interface IBdBonusDirectLoopService extends IService { - /** * 新增直推奖励循环配置、直推奖励配置、嗨粉直推配置奖励、一次性补差升级配置 - * @author: zhang jing - * @date: 2022/11/4 10:46 - * @param: [bonusDirectVo] - * @return: boolean **/ - boolean saveBonusDirectVo(BdBonusDirectVo bonusDirectVo,Integer pkCountry,String addAttribute); + boolean saveBonusDirectVo(BdBonusDirectVo bonusDirectVo, Integer pkCountry, String addAttribute); - /** - * 查询奖金推荐明细 - * @return: List - * @Author: sui q - * @Date: 2023/2/17 17:34 - */ - List queryBonusDirectLoop(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java index eed7c15a..3f14503e 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdGradeService.java @@ -31,13 +31,6 @@ public interface IBdGradeService extends IService { */ List queryGradeConfigByCondition(Integer pkCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - List queryHaiFunGradeConfigByCondition(Integer pkCountry); - /** * 生成等级配置 **/ @@ -63,8 +56,6 @@ public interface IBdGradeService extends IService { */ List queryBdGrade(); - List queryRetailGrade(); - /** * 删除等级配置 * @@ -82,13 +73,6 @@ public interface IBdGradeService extends IService { */ List selectGradeAll(Integer pkCountry); - /** - * 根据国家查询等级配置列表 - * - * @param pkCountry 国家 - */ - List queryGrowUpFootmarkGrade(Integer pkCountry); - /** * 获取小于等于业绩最合适的等级 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdLabelService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdLabelService.java index 2e2d197b..986487d1 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdLabelService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdLabelService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdLabel; import com.hzs.system.config.vo.BdLabelVO; @@ -8,12 +7,7 @@ import com.hzs.system.config.vo.BdLabelVO; import java.util.List; /** - *

* 商品标签数据 服务类 - *

- * - * @author hzs - * @since 2022-10-20 */ public interface IBdLabelService extends IService { @@ -33,14 +27,6 @@ public interface IBdLabelService extends IService { */ List getLabelByPkCountry(BdLabelVO bdLabelVO); - /** - * 根据标签类型查询标签信息 - * - * @param labelType 标签类型 - * @return List - */ - List findLabelByType(Integer labelType, Integer pkCountry); - /** * 根据ID删除 * diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeDetailsService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeDetailsService.java index 488e2825..2f45284f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeDetailsService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRangeDetailsService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdRangeDetails; import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; @@ -8,20 +7,13 @@ import com.hzs.common.domain.system.config.ext.BdRangeDetailsExt; import java.util.List; /** - *

* 极差详细表 服务类 - *

- * - * @author hzs - * @since 2022-10-28 */ public interface IBdRangeDetailsService extends IService { + /** - * @description: 查询极差详情 - * @author: zhang jing - * @date: 2022/10/28 11:36 - * @param: [rangeDetailsExt] - * @return: java.util.List + * 查询极差详情 **/ List getBdRangeDetailsList(BdRangeDetailsExt rangeDetailsExt); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRepoDirectPushService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRepoDirectPushService.java index 18c16fa3..7dc33107 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRepoDirectPushService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdRepoDirectPushService.java @@ -1,26 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdRepoDirectPush; -import java.util.List; - /** - *

* 复购直推配置 服务类 - *

- * - * @author zhangjing - * @since 2023-06-29 */ public interface IBdRepoDirectPushService extends IService { - /* - * @description: 查询复购直推配置的参数 - * @author: sui q - * @date: 2023/6/29 15:21 - * @param: null null - **/ - List queryRepoDirectPush(); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShareService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShareService.java index c56935d1..619fd3f1 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShareService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShareService.java @@ -1,25 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdShare; /** - *

* 分红配置 服务类 - *

- * - * @author zhangjing - * @since 2022-09-22 */ public interface IBdShareService extends IService { - /** - * @description: 根据分红pkid查询分配配置 - * @author: zhang jing - * @date: 2022/9/28 15:23 - * @param: [id] - * @return: com.hzs.common.domain.system.config.BdShare - **/ - BdShare getBdShareById(Integer id); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShopService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShopService.java index 1199e132..dc2cc18a 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShopService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdShopService.java @@ -1,39 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdShop; -import com.hzs.common.domain.system.config.ext.BdShopExt; - -import java.util.List; /** - *

* 店铺配置 服务类 - *

- * - * @author zhangjing - * @since 2022-09-15 */ public interface IBdShopService extends IService { - /** - * @description: 生成店铺(配送中心) - * @author: zhang jing - * @date: 2022/10/28 18:37 - * @param: [shop] - * @return: boolean - **/ - boolean generate(BdShop shop); - - /** - * @description: 根据国家查询配送中心列表 - * @author: zhang jing - * @date: 2022/11/11 19:41 - * @param: [pkCountry] - * @return: java.util.List - **/ - List queryShop(Integer pkCountry); - - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java index 2325e3b5..ea703c87 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTradeWhiteConfigService.java @@ -4,8 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTradeWhiteConfig; import com.hzs.system.config.vo.BdTradeWhiteConfigVO; -import java.util.List; - /** * 交易白名单配置表 服务类 */ @@ -60,12 +58,4 @@ public interface IBdTradeWhiteConfigService extends IService */ BdTradeWhiteConfig selectTradeWhiteConfigByPkMember(Long pkMember); - /** - * 查询配置伞下白名单的会员 - * - * @param tradeWhiteConfigVO 入参 - * @return List - */ - List selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO); - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTransferService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTransferService.java index 8f46d984..fdb12f52 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTransferService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdTransferService.java @@ -1,37 +1,22 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdTransfer; -import java.util.List; - /** - *

- * 转账设置主表 - 服务类 - *

- * - * @author zhangjing - * @since 2022-09-07 + * 转账设置主表 + * 服务类 */ public interface IBdTransferService extends IService { /** - * @description: 根据国家查询转账配置列表 - * @author: zhang jing - * @date: 2022/9/28 10:34 - * @param: [pkCountry] - * @return: java.util.List + * 根据国家查询转账配置列表 **/ BdTransfer queryTransfer(Integer pkCountry); /** - * @description: 查询会员是否存在转账数据 - * @author: zhang jing - * @date: 2023/3/15 19:27 - * @param: [transfer] - * @return: java.lang.Integer + * 查询会员是否存在转账数据 **/ Integer checkTransfer(BdTransfer transfer); + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalAutoService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalAutoService.java index 0784818c..71db90d2 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalAutoService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalAutoService.java @@ -1,20 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdWithdrawalAuto; -import java.util.List; - /** - *

* 自动提现明细表 服务类 - *

- * - * @author zhangjing - * @since 2022-08-31 */ public interface IBdWithdrawalAutoService extends IService { - List queryWithdrawalAuto(Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalProcessService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalProcessService.java index 1d2db7b5..535592df 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalProcessService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalProcessService.java @@ -1,27 +1,15 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdWithdrawalProcess; -import java.util.List; - /** - *

* 提现手续费配置 服务类 - *

- * - * @author zhangjing - * @since 2022-11-02 */ public interface IBdWithdrawalProcessService extends IService { /** - * @description: 根据国家查询提现手续费配置 - * @author: zhang jing - * @date: 2022/11/2 17:14 - * @param: [pkCountry] - * @return: java.util.List + * 根据国家查询提现手续费配置 **/ BdWithdrawalProcess queryBdWithdrawalProcess(Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalService.java index 8aa71112..be8fdda0 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalService.java @@ -1,6 +1,5 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdWithdrawal; import com.hzs.common.domain.system.config.ext.BdWithdrawalAutoExt; @@ -9,76 +8,37 @@ import com.hzs.common.domain.system.config.ext.BdWithdrawalExt; import java.util.List; /** - *

* 提现设置主表 服务类 - *

- * - * @author zhangjing - * @since 2022-08-29 */ public interface IBdWithdrawalService extends IService { - /** - * @description: 根据国家查询提现配置明细列表 - * @author: zhang jing - * @date: 2022/9/27 15:08 - * @param: [pkCountry] - * @return: java.util.List + * 根据国家查询提现配置明细列表 **/ - BdWithdrawal queryWithdrawal(Integer pkCountry,Integer pkAccount); + BdWithdrawal queryWithdrawal(Integer pkCountry, Integer pkAccount); /** - * @description: 新增提现 - * @author: zhang jing - * @date: 2022/10/31 15:11 - * @param: [withdrawalExt] - * @return: boolean + * 新增提现 **/ boolean saveWithdrawal(BdWithdrawalExt withdrawalExt); /** - * @description: 修改提现 - * @author: zhang jing - * @date: 2022/10/31 15:11 - * @param: [withdrawalExt] - * @return: boolean + * 修改提现 **/ boolean updateWithdrawal(BdWithdrawalExt withdrawalExt); /** - * @description: 查询自动提现明细 - * @author: zhang jing - * @date: 2022/10/31 15:12 - * @param: [withdrawalAutoExt] - * @return: java.util.List + * 查询自动提现明细 **/ List getWithdrawalAutoList(BdWithdrawalAutoExt withdrawalAutoExt); /** - * @description: 查询配置自动提现的配置 - * @author: zhang jing - * @date: 2022/11/1 19:41 - * @param: - * @return: + * 查询会员提价表是否有数据 **/ - List queryWithdrawalByIsAuto(); + Integer checkWithdraw(BdWithdrawalAutoExt withdrawalAutoExt); /** - * @description: 查询会员提价表是否有数据 - * @author: zhang jing - * @date: 2023/3/16 11:06 - * @param: [withdrawalAutoExt] - * @return: java.lang.Integer - **/ - Integer checkWithdraw (BdWithdrawalAutoExt withdrawalAutoExt); - - /** - * @description: 查询提现配置列表 - * @author: zhang jing - * @date: 2024/6/17 16:27 - * @param: [withdrawalExt] - * @return: java.util.List + * 查询提现配置列表 **/ List listExt(BdWithdrawalExt withdrawalExt); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalSpecialService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalSpecialService.java index 3beb9a8f..8039d464 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalSpecialService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalSpecialService.java @@ -1,35 +1,11 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdWithdrawalSpecial; -import java.util.List; - /** - *

* 提现设置特殊配置 服务类 - *

- * - * @author zhangjing - * @since 2022-09-06 */ public interface IBdWithdrawalSpecialService extends IService { - /** - * @description: 根据国家查询提现设置特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:24 - * @param: [pkCountry] - * @return: java.util.List - **/ - List queryWithdrawalSpecial(Integer pkCountry); - /** - * @description: 根据会员编号查询提现特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:34 - * @param: [pkCountry, memberCode] - * @return: com.hzs.common.domain.system.config.BdWithdrawalSpecial - **/ - BdWithdrawalSpecial getWithdrawalSpecial(Integer pkCountry, String memberCode); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalTaxService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalTaxService.java index 9e2e204e..bb3c7ea5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalTaxService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/IBdWithdrawalTaxService.java @@ -1,28 +1,16 @@ package com.hzs.system.config.service; - import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.common.domain.system.config.BdWithdrawalTax; import com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt; -import java.util.List; - /** - *

* 个税明细表 服务类 - *

- * - * @author zhangjing - * @since 2022-09-06 */ public interface IBdWithdrawalTaxService extends IService { /** - * @description: 根据国家查询个税明细 - * @author: zhang jing - * @date: 2022/9/27 16:12 - * @param: [pkCountry] - * @return: java.util.List + * 根据国家查询个税明细 **/ BdWithdrawalTaxExt queryWithdrawalTax(Integer pkCountry); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java index 18f7154a..a846ea0f 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdAwardsServiceImpl.java @@ -20,7 +20,6 @@ import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -110,14 +109,7 @@ public class BdAwardsServiceImpl extends ServiceImpl i @Override public List queryAwards() { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdAwards::getSystemType, 0); - return baseMapper.selectList(queryWrapper); - } - - @Override - public List queryRetailAwards() { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdAwards::getSystemType, 2); + queryWrapper.orderByAsc(BdAwards::getAwardsValue); return baseMapper.selectList(queryWrapper); } @@ -126,12 +118,4 @@ public class BdAwardsServiceImpl extends ServiceImpl i return baseMapper.checkGradeAwards(pkRegisterGrade, pkSettleGrade, pkAwards); } - @Override - public List queryByPkCountryAwards(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdAwards::getPkCountry, pkCountry); - queryWrapper.eq(BdAwards::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.orderByAsc(BdAwards::getAwardsValue); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBankServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBankServiceImpl.java index e57aca23..1aa3b3c3 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBankServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBankServiceImpl.java @@ -8,9 +8,6 @@ import org.springframework.stereotype.Service; /** * 银行卡表 服务实现类 - * - * @author hzs - * @since 2022-10-25 */ @Service public class BdBankServiceImpl extends ServiceImpl implements IBdBankService { diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBarCodeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBarCodeServiceImpl.java index c5d3ab5c..ceb2c363 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBarCodeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBarCodeServiceImpl.java @@ -1,88 +1,33 @@ package com.hzs.system.config.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.enums.EYesNo; import com.hzs.common.domain.system.config.BdBarCode; import com.hzs.common.domain.system.config.ext.BdBarCodeExt; import com.hzs.system.config.mapper.BdBarCodeMapper; import com.hzs.system.config.service.IBdBarCodeService; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; import java.util.List; /** * 条码配置 服务实现类 - * - * @author hzs - * @since 2022-10-17 */ @Service public class BdBarCodeServiceImpl extends ServiceImpl implements IBdBarCodeService { - /** - * @description: 查询条形码配置列表 - * @author: zhang jing - * @date: 2022/10/18 17:37 - * @param: [barCode] - * @return: java.util.List - **/ @Override public List queryBarCodeList(BdBarCodeExt barCodeExt) { return baseMapper.queryBarCodeList(barCodeExt); } - /** - * @description: 查询单条条形码配置信息 - * @author: zhang jing - * @date: 2022/10/18 17:37 - * @param: [barCode] - * @return: com.hzs.common.domain.system.config.BdBarCode - **/ + @Override public BdBarCode getOneBarCode(Long pkId) { return baseMapper.getOneBarCode(pkId); } - /** - * 定时初始化条形码配置 - */ - @Override - @Transactional(rollbackFor = Exception.class) - public Boolean updatWarehouseLog() { - /** - * 查询初始化条形码配置,将当前尾号初始化为初始尾号 - */ - try { - BdBarCodeExt barCode = new BdBarCodeExt(); - barCode.setIsInitialize(EYesNo.YES.getIntValue()); - List list = baseMapper.queryBarCodeList(barCode); - if (!CollectionUtils.isEmpty(list)) { - for (BdBarCodeExt bbc : list) { - bbc.setCurrentNumber(bbc.getEndNumber()); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - return true; - } - @Override public int updateUsedBarCode(List idList, Integer type, Long userId, Integer pkCountry) { return baseMapper.updateUsedBarCode(idList, type, userId, pkCountry); } - /** - * @description: 追溯码查询特殊产品 - * @author: zhang jing - * @date: 2023/8/14 9:46 - * @param: [barCodeExt] - * @return: com.hzs.common.domain.system.config.ext.BdBarCodeExt - **/ - @Override - public BdBarCodeExt querySpecialProduct(BdBarCode barCode) { - return baseMapper.querySpecialProduct(barCode); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDifferenceServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDifferenceServiceImpl.java index 4b9686d4..a0961f2d 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDifferenceServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDifferenceServiceImpl.java @@ -1,27 +1,15 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.system.config.BdBonusDifference; import com.hzs.system.config.mapper.BdBonusDifferenceMapper; import com.hzs.system.config.service.IBdBonusDifferenceService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 一次性补差升级配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-11-02 */ @Service public class BdBonusDifferenceServiceImpl extends ServiceImpl implements IBdBonusDifferenceService { - @Override - public List queryBonusDifference() { - return baseMapper.selectList(new QueryWrapper<>()); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDirectLoopServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDirectLoopServiceImpl.java index 79bac638..5e9074a5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDirectLoopServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdBonusDirectLoopServiceImpl.java @@ -1,7 +1,5 @@ package com.hzs.system.config.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EDelFlag; @@ -9,7 +7,6 @@ import com.hzs.common.core.enums.ERangeType; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.system.config.*; import com.hzs.common.domain.system.config.ext.BdBonusDirectLoopExt; -import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.config.mapper.BdBonusDirectLoopMapper; import com.hzs.system.config.service.*; import com.hzs.system.config.vo.BdBonusDirectVo; @@ -18,16 +15,9 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; -import java.util.List; - /** - *

* 直推循环配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-11-03 */ @Service public class BdBonusDirectLoopServiceImpl extends ServiceImpl implements IBdBonusDirectLoopService { @@ -43,17 +33,9 @@ public class BdBonusDirectLoopServiceImpl extends ServiceImpl updateWrapperrd = new UpdateWrapper(); updateWrapperrd.set("DEL_FLAG", EDelFlag.DELETE.getValue()); updateWrapperrd.eq("PK_COUNTRY", pkCountry); updateWrapperrd.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); iBdRepoDirectPushService.update(updateWrapperrd); - for(BdRepoDirectPush rd:bonusDirectVo.getRepoDirectPushList()){ + for (BdRepoDirectPush rd : bonusDirectVo.getRepoDirectPushList()) { iBdRepoDirectPushService.save(rd); } } return true; } - @Override - public List queryBonusDirectLoop() { - return baseMapper.queryBonusDirectLoop(); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java index fa96fbeb..c0dd09fc 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdGradeServiceImpl.java @@ -66,17 +66,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdGrade::getPkCountry, pkCountry); queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); - queryWrapper.orderByDesc(BdGrade::getGradeValue); - return baseMapper.selectList(queryWrapper); - } - - @Override - public List queryHaiFunGradeConfigByCondition(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdGrade::getPkCountry, pkCountry); - queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.HAI_FAN.getValue()); queryWrapper.orderByDesc(BdGrade::getGradeValue); return baseMapper.selectList(queryWrapper); } @@ -190,15 +179,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl return baseMapper.selectList(queryWrapper); } - @Override - public List queryRetailGrade() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("PK_ID,GRADE_VALUE,GRADE_NAME,BOX_NUMBER,BOX_TOTAL,BOX_SMALL_TOTAL,BUY_PRICE,ALGEBRA,FIRST_ALGEBRA,SECOND_ALGEBRA,THIRD_ALGEBRA"); - queryWrapper.eq("SYSTEM_TYPE", ESystemType.DEFAULT.getValue()); - queryWrapper.orderByAsc("GRADE_VALUE"); - return baseMapper.selectList(queryWrapper); - } - @Transactional(rollbackFor = Exception.class) @Override public boolean updateGrade(Long pkId, Long userId) { @@ -227,16 +207,6 @@ public class BdGradeServiceImpl extends ServiceImpl impl return baseMapper.selectList(queryWrapper); } - @Override - public List queryGrowUpFootmarkGrade(Integer pkCountry) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(BdGrade::getPkCountry, pkCountry); - queryWrapper.eq(BdGrade::getEnableState, EnableStatus.ENABLE.getValue()); - queryWrapper.le(BdGrade::getGradeValue, EGrade.S_VIP.getValue()); - queryWrapper.orderByAsc(BdGrade::getGradeValue); - return baseMapper.selectList(queryWrapper); - } - @Override public BdGrade getLastGrade(BigDecimal achieve, Integer pkCountry) { return baseMapper.getLastGrade(achieve, pkCountry); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdLabelServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdLabelServiceImpl.java index 801f3272..8f80ff66 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdLabelServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdLabelServiceImpl.java @@ -1,93 +1,46 @@ package com.hzs.system.config.service.impl; - -import cn.hutool.core.collection.CollUtil; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.system.config.BdLabel; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.config.mapper.BdLabelMapper; import com.hzs.system.config.service.IBdLabelService; import com.hzs.system.config.vo.BdLabelVO; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; /** - *

* 商品标签数据 服务实现类 - *

- * - * @author hzs - * @since 2022-10-20 */ @Service public class BdLabelServiceImpl extends ServiceImpl implements IBdLabelService { - @Autowired - private RedisService redisService; - @Override public BdLabel getByPkId(Integer labelId) { - String redisKey = CacheConstants.BD_LABEL + labelId; - BdLabel label = redisService.getCacheObject(redisKey); - if (label == null) { - label = baseMapper.selectById(labelId); - if (null != label) { - redisService.setCacheObject(redisKey, label); - } - } - return label; + return baseMapper.selectById(labelId); } @Override public List getLabelByPkCountry(BdLabelVO bdLabelVO) { - List bdLabelList = baseMapper.getLabelByPkCountry(bdLabelVO); - return bdLabelList; + return baseMapper.getLabelByPkCountry(bdLabelVO); } - @Override public Boolean deleteLabelById(Integer pkId) { - UpdateWrapper queryWrapper = new UpdateWrapper<>(); - queryWrapper.eq("PK_ID", pkId); - queryWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); - queryWrapper.set("MODIFIED_TIME", new Date()); - queryWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - Boolean rows = this.update(queryWrapper); - if (rows) { - String redisKey = CacheConstants.BD_LABEL + pkId; - redisService.deleteObjectByKey(redisKey); - } - return rows; - } - - - @Override - public List findLabelByType(Integer labelType, Integer pkCountry) { - String redisKey = CacheConstants.BD_LABEL + ":" + pkCountry + labelType; - List labels = redisService.getCacheList(redisKey); - if (CollUtil.isEmpty(labels)) { - labels = baseMapper.findLabelByType(labelType, pkCountry); - if (CollUtil.isNotEmpty(labels)) { - redisService.setCacheList(redisKey, labels); - } - } - return labels; + LambdaUpdateWrapper queryWrapper = new LambdaUpdateWrapper<>(); + queryWrapper.eq(BdLabel::getPkId, pkId); + queryWrapper.set(BdLabel::getPkModified, SecurityUtils.getUserId()); + queryWrapper.set(BdLabel::getModifiedTime, new Date()); + queryWrapper.set(BdLabel::getDelFlag, EDelFlag.DELETE.getValue()); + return this.update(queryWrapper); } @Override public Boolean updateLabelById(BdLabel bdLabel) { - Boolean rows = updateById(bdLabel); - if (rows) { - String redisKey = CacheConstants.BD_LABEL + bdLabel.getPkId(); - redisService.deleteObjectByKey(redisKey); - } - return rows; + return updateById(bdLabel); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeDetailsServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeDetailsServiceImpl.java index 2714815b..72dc3aaa 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeDetailsServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRangeDetailsServiceImpl.java @@ -10,25 +10,14 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 极差详细表 服务实现类 - *

- * - * @author hzs - * @since 2022-10-28 */ @Service public class BdRangeDetailsServiceImpl extends ServiceImpl implements IBdRangeDetailsService { - /** - * @description: 查询极差详情 - * @author: zhang jing - * @date: 2022/10/28 11:35 - * @param: [rangeDetailsExt] - * @return: java.util.List - **/ @Override public List getBdRangeDetailsList(BdRangeDetailsExt rangeDetailsExt) { return baseMapper.getBdRangeDetailsList(rangeDetailsExt); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRepoDirectPushServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRepoDirectPushServiceImpl.java index aca7753d..18db5256 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRepoDirectPushServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdRepoDirectPushServiceImpl.java @@ -1,29 +1,15 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.domain.system.config.BdRepoDirectPush; import com.hzs.system.config.mapper.BdRepoDirectPushMapper; import com.hzs.system.config.service.IBdRepoDirectPushService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 复购直推配置 服务实现类 - *

- * - * @author zhangjing - * @since 2023-06-29 */ @Service public class BdRepoDirectPushServiceImpl extends ServiceImpl implements IBdRepoDirectPushService { - @Override - public List queryRepoDirectPush() { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("algebra,cal_type,push_value,pk_country"); - return baseMapper.selectList(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShareServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShareServiceImpl.java index 31d9653d..05e1f7b3 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShareServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShareServiceImpl.java @@ -1,54 +1,15 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.SystemFieldConstants; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.domain.system.base.BdCurrency; import com.hzs.common.domain.system.config.BdShare; import com.hzs.system.config.mapper.BdShareMapper; import com.hzs.system.config.service.IBdShareService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** - *

* 分红配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-09-22 */ @Service public class BdShareServiceImpl extends ServiceImpl implements IBdShareService { - private RedisService redisService; - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - /** - * @description: 根据分红pkid查询分配配置 - * @author: zhang jing - * @date: 2022/9/28 15:20 - * @param: [id, pkCountry] - * @return: com.hzs.common.domain.system.config.BdShare - **/ - @Override - public BdShare getBdShareById(Integer id) { - BdShare share = redisService.getCacheObject(CacheConstants.BD_SHARE + id); - if(null == share){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_ID",id); - share = baseMapper.selectOne(queryWrapper); - if(null != share){ - redisService.setCacheObject(CacheConstants.BD_SHARE + id, share); - } - } - return share; - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShopServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShopServiceImpl.java index fe2685bb..c993d593 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShopServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdShopServiceImpl.java @@ -1,104 +1,15 @@ package com.hzs.system.config.service.impl; -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.enums.EShop; -import com.hzs.common.core.enums.ETransactionKey; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.enums.EnableStatus; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.system.config.BdShop; -import com.hzs.common.domain.system.config.ext.BdShopExt; -import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.system.base.ITransactionServiceApi; import com.hzs.system.config.mapper.BdShopMapper; import com.hzs.system.config.service.IBdShopService; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; - /** - *

- * 店铺配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-09-15 + * 店铺配置 服务实现类 */ @Service public class BdShopServiceImpl extends ServiceImpl implements IBdShopService { - @DubboReference - private ITransactionServiceApi iTransactionServiceApi; - private RedisService redisService; - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - - /** - * @description: 生成配送中心 - * @author: zhang jing - * @date: 2022/10/28 18:38 - * @param: [shop] - * @return: boolean - **/ - @Override - public boolean generate(BdShop shop) { - Integer pkCountry= SecurityUtils.getPkCountry(); - for (EShop value : EShop.values()) { - shop.setShopValue(value.getValue()); - shop.setShopName(value.getLabel()); - //字段翻译保存到数据库 - R pkTransaction = iTransactionServiceApi.createTransaction(pkCountry, ETransactionKey.GRADE, - value.getLabel(), EYesNo.YES, EYesNo.NO); - shop.setPkTransaction(pkTransaction.getData()); - shop.setPkCountry(SecurityUtils.getPkCountry()); - shop.setPkCreator(SecurityUtils.getUserId()); - shop.setCreationTime(new Date()); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("SHOP_VALUE",value.getValue()); - List list =baseMapper.selectList(queryWrapper); - if(CollectionUtil.isEmpty(list)){ - baseMapper.insert(shop); - redisService.deleteObjectByKey(CacheConstants.BD_SHOP + pkCountry); - } - } - return true; - } - - /** - * @description: 根据国家查询配送中心列表 - * @author: zhang jing - * @date: 2022/11/11 19:44 - * @param: [pkCountry] - * @return: java.util.List - **/ - @Override - public List queryShop(Integer pkCountry) { - List shopExts = redisService.getCacheList(CacheConstants.BD_SHOP + pkCountry); - List shopExtsNew=new ArrayList<>(); - if(CollectionUtil.isEmpty(shopExts)){ - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - queryWrapper.eq("ENABLE_STATE", EnableStatus.ENABLE.getValue()); - List btList = baseMapper.selectList(queryWrapper); - if(CollectionUtil.isNotEmpty(btList)){ - btList.forEach(item -> shopExtsNew.add(BeanUtil.copyProperties(item, BdShopExt.class))); - redisService.setCacheList(CacheConstants.BD_SHOP + pkCountry, shopExtsNew); - } - return shopExtsNew; - }else{ - return shopExts; - } - } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java index aecaae9b..d2f5dd73 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeConfigServiceImpl.java @@ -2,6 +2,7 @@ package com.hzs.system.config.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.enums.EYesNo; @@ -132,10 +133,14 @@ public class BdTradeConfigServiceImpl extends ServiceImpl gradeTransaction(String pkGradeStr, Map gradeMap) { List gradeDetailList = new ArrayList<>(); BdTradeConfigDetailVO detailVO; + Integer defaultPkGrade = gradeMap.keySet().stream().findFirst().get(); if (StringUtils.isNotEmpty(pkGradeStr)) { String[] pkGradeList = pkGradeStr.split(","); for (String pkGrade : pkGradeList) { detailVO = new BdTradeConfigDetailVO(); + if(ObjectUtil.isEmpty(gradeMap.get(Integer.parseInt(pkGrade)))){ + pkGrade = String.valueOf(defaultPkGrade); + } detailVO.setPkGradeTrans(gradeMap.get(Integer.parseInt(pkGrade)).getPkTransaction()); gradeDetailList.add(detailVO); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeWhiteConfigServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeWhiteConfigServiceImpl.java index 0258404d..464d7a63 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeWhiteConfigServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTradeWhiteConfigServiceImpl.java @@ -85,9 +85,4 @@ public class BdTradeWhiteConfigServiceImpl extends ServiceImpl selectTradeWhiteConfigByUnderBlood(BdTradeWhiteConfigVO tradeWhiteConfigVO) { - return baseMapper.selectTradeWhiteConfigByUnderBlood(tradeWhiteConfigVO); - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTransferServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTransferServiceImpl.java index 0150b255..5a2efb18 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTransferServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdTransferServiceImpl.java @@ -1,6 +1,6 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.enums.EDelFlag; @@ -14,58 +14,34 @@ import org.springframework.stereotype.Service; import java.util.Date; /** - *

- * 转账设置主表 - 服务实现类 - *

- * - * @author zhangjing - * @since 2022-09-07 + * 转账设置主表 + * 服务实现类 */ @Service public class BdTransferServiceImpl extends ServiceImpl implements IBdTransferService { - + @Autowired private RedisService redisService; - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - - - /** - * @description: 根据国家查询转账配置列表 - * @author: zhang jing - * @date: 2022/9/28 10:34 - * @param: [pkCountry] - * @return: java.util.List - **/ @Override public BdTransfer queryTransfer(Integer pkCountry) { BdTransfer transfer = redisService.getCacheObject(CacheConstants.BD_TRANSFER + pkCountry); - if(null == transfer){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - queryWrapper.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); - queryWrapper.le("EFFECTIVE_DATE",new Date()); + if (null == transfer) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdTransfer::getPkCountry, pkCountry); + queryWrapper.eq(BdTransfer::getDelFlag, EDelFlag.UN_DELETE.getValue()); + queryWrapper.le(BdTransfer::getEffectiveDate, new Date()); transfer = baseMapper.selectOne(queryWrapper); - if(null != transfer){ + if (null != transfer) { redisService.setCacheObject(CacheConstants.BD_TRANSFER + pkCountry, transfer); } } return transfer; } - /** - * @description: 查询会员是否有转账数据 - * @author: zhang jing - * @date: 2023/3/15 19:42 - * @param: [transfer] - * @return: java.lang.Integer - **/ @Override public Integer checkTransfer(BdTransfer transfer) { return baseMapper.checkTransfer(transfer); } + } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalAutoServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalAutoServiceImpl.java index 91e7a1aa..f4d78662 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalAutoServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalAutoServiceImpl.java @@ -1,56 +1,16 @@ package com.hzs.system.config.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.system.config.BdWithdrawalAuto; import com.hzs.system.config.mapper.BdWithdrawalAutoMapper; import com.hzs.system.config.service.IBdWithdrawalAutoService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 自动提现明细表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-08-31 */ @Service public class BdWithdrawalAutoServiceImpl extends ServiceImpl implements IBdWithdrawalAutoService { - private RedisService redisService; - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - /** - * @description: 根据国家查询自动提现明细列表 - * @author: zhang jing - * @date: 2022/9/27 14:59 - * @param: [pkCountry] - * @return: java.util.List - **/ - @Override - public List queryWithdrawalAuto(Integer pkCountry) { - List withdrawalAuto = redisService.getCacheObject(CacheConstants.BD_WITHDRAWAL_AUTO + pkCountry); - if(CollectionUtil.isEmpty(withdrawalAuto)){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - withdrawalAuto = baseMapper.selectList(queryWrapper); - if(CollectionUtil.isNotEmpty(withdrawalAuto)){ - redisService.setCacheObject(CacheConstants.BD_WITHDRAWAL_AUTO + pkCountry, withdrawalAuto); - } - } - return withdrawalAuto; - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalProcessServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalProcessServiceImpl.java index 175f7c35..e68a5969 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalProcessServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalProcessServiceImpl.java @@ -1,6 +1,6 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.system.config.BdWithdrawalProcess; @@ -8,31 +8,17 @@ import com.hzs.system.config.mapper.BdWithdrawalProcessMapper; import com.hzs.system.config.service.IBdWithdrawalProcessService; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 提现手续费配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-11-02 */ @Service public class BdWithdrawalProcessServiceImpl extends ServiceImpl implements IBdWithdrawalProcessService { - /** - * @description: 根据国家查询提现手续费配置 - * @author: zhang jing - * @date: 2022/11/2 17:16 - * @param: [pkCountry] - * @return: java.util.List - **/ @Override public BdWithdrawalProcess queryBdWithdrawalProcess(Integer pkCountry) { - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - queryWrapper.le("EFFECTIVE_DATE", DateUtils.currentDateTime()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BdWithdrawalProcess::getPkCountry, pkCountry); + queryWrapper.le(BdWithdrawalProcess::getEffectiveDate, DateUtils.currentDateTime()); return baseMapper.selectOne(queryWrapper); } } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalServiceImpl.java index 70e61de6..be92a202 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalServiceImpl.java @@ -1,14 +1,9 @@ package com.hzs.system.config.service.impl; import cn.hutool.core.collection.CollectionUtil; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; import com.hzs.common.core.enums.EDelFlag; -import com.hzs.common.core.enums.EYesNo; -import com.hzs.common.core.service.RedisService; -import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.system.config.BdWithdrawal; import com.hzs.common.domain.system.config.BdWithdrawalAuto; import com.hzs.common.domain.system.config.ext.BdWithdrawalAutoExt; @@ -25,150 +20,71 @@ import java.util.Date; import java.util.List; /** - *

* 提现设置主表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-08-29 */ @Service public class BdWithdrawalServiceImpl extends ServiceImpl implements IBdWithdrawalService { - private RedisService redisService; - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - @Autowired - IBdWithdrawalAutoService withdrawalAutoService; + private IBdWithdrawalAutoService iBdWithdrawalAutoService; - - - - /** - * @description: 根据国家查询提现配置列表 - * @author: zhang jing - * @date: 2022/9/27 15:04 - * @param: [pkCountry] - * @return: java.util.List - **/ @Override - public BdWithdrawal queryWithdrawal(Integer pkCountry,Integer pkAccount) { + public BdWithdrawal queryWithdrawal(Integer pkCountry, Integer pkAccount) { BdWithdrawal withdrawal = new BdWithdrawal(); - List withdrawallist = baseMapper.queryWithdrawal(pkCountry,pkAccount); - if(CollectionUtil.isNotEmpty(withdrawallist)){ - withdrawal= withdrawallist.get(0); - } + List withdrawallist = baseMapper.queryWithdrawal(pkCountry, pkAccount); + if (CollectionUtil.isNotEmpty(withdrawallist)) { + withdrawal = withdrawallist.get(0); + } return withdrawal; } - /** - * @description: 查询自动提现的提现周期 - * @author: zhang jing - * @date: 2022/11/1 19:24 - * @param: [pkCountry] - * @return: com.hzs.common.domain.system.config.BdWithdrawal - **/ - @Override - public List queryWithdrawalByIsAuto() { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("IS_AUTO", EYesNo.YES.getIntValue()); - queryWrapper.le("EFFECTIVE_DATE", DateUtils.currentDateTime()); - return baseMapper.selectList(queryWrapper); - } - - /** - * @description: 查询会员提价表是否有数据 - * @author: zhang jing - * @date: 2023/3/16 11:06 - * @param: [withdrawalAutoExt] - * @return: java.lang.Integer - **/ @Override public Integer checkWithdraw(BdWithdrawalAutoExt withdrawalAutoExt) { return baseMapper.checkWithdraw(withdrawalAutoExt); } - /** - * @description: 查询提现配置列表 - * @author: zhang jing - * @date: 2024/6/17 16:27 - * @param: [withdrawalExt] - * @return: java.util.List - **/ @Override public List listExt(BdWithdrawalExt withdrawalExt) { return baseMapper.listExt(withdrawalExt); } - - /** - * @description: 新增提现配置 - * @author: zhang jing - * @date: 2022/10/31 15:05 - * @param: [withdrawalExt] - * @return: boolean - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean saveWithdrawal(BdWithdrawalExt withdrawalExt) { baseMapper.insert(withdrawalExt); - List withdrawalAutoList=withdrawalExt.getWithdrawalAutoList(); - for(BdWithdrawalAuto wao :withdrawalAutoList){ + List withdrawalAutoList = withdrawalExt.getWithdrawalAutoList(); + for (BdWithdrawalAuto wao : withdrawalAutoList) { wao.setPkWithdrawal(withdrawalExt.getPkId()); wao.setPkCountry(SecurityUtils.getPkCountry()); wao.setPkCreator(SecurityUtils.getUserId()); wao.setCreationTime(new Date()); - withdrawalAutoService.save(wao); + iBdWithdrawalAutoService.save(wao); } - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_IS_AUTO + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); return true; } - /** - * @description: 修改提现配置 - * @author: zhang jing - * @date: 2022/10/31 15:10 - * @param: [withdrawalExt] - * @return: boolean - **/ @Override public boolean updateWithdrawal(BdWithdrawalExt withdrawalExt) { baseMapper.updateById(withdrawalExt); - UpdateWrapper updateWrapper=new UpdateWrapper(); - updateWrapper.eq("PK_WITHDRAWAL",withdrawalExt.getPkId()); - updateWrapper.eq("DEL_FLAG",EDelFlag.UN_DELETE.getValue()); + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("PK_WITHDRAWAL", withdrawalExt.getPkId()); + updateWrapper.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - withdrawalAutoService.update(updateWrapper); - List withdrawalAutoList=withdrawalExt.getWithdrawalAutoList(); - for(BdWithdrawalAuto wao :withdrawalAutoList){ + iBdWithdrawalAutoService.update(updateWrapper); + List withdrawalAutoList = withdrawalExt.getWithdrawalAutoList(); + for (BdWithdrawalAuto wao : withdrawalAutoList) { wao.setPkWithdrawal(withdrawalExt.getPkId()); wao.setPkCountry(SecurityUtils.getPkCountry()); wao.setPkCreator(SecurityUtils.getUserId()); wao.setCreationTime(new Date()); - withdrawalAutoService.save(wao); + iBdWithdrawalAutoService.save(wao); } - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_IS_AUTO + SecurityUtils.getPkCountry()); - redisService.deleteObjectByKey(CacheConstants.BD_WITHDRAWAL_AUTO + SecurityUtils.getPkCountry()); return true; } - /** - * @description: 查询自动提现明细 - * @author: zhang jing - * @date: 2022/10/31 14:56 - * @param: [withdrawalAutoExt] - * @return: java.util.List - **/ @Override public List getWithdrawalAutoList(BdWithdrawalAutoExt withdrawalAutoExt) { return baseMapper.getWithdrawalAutoList(withdrawalAutoExt); } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalSpecialServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalSpecialServiceImpl.java index 1b3f1921..96e00001 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalSpecialServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalSpecialServiceImpl.java @@ -1,78 +1,16 @@ package com.hzs.system.config.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.service.RedisService; import com.hzs.common.domain.system.config.BdWithdrawalSpecial; import com.hzs.system.config.mapper.BdWithdrawalSpecialMapper; import com.hzs.system.config.service.IBdWithdrawalSpecialService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.List; - /** - *

* 提现设置特殊配置 服务实现类 - *

- * - * @author zhangjing - * @since 2022-09-06 */ @Service public class BdWithdrawalSpecialServiceImpl extends ServiceImpl implements IBdWithdrawalSpecialService { - private RedisService redisService; - - @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } - - - /** - * @description: 根据国家查询提现设置特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:23 - * @param: [pkCountry] - * @return: java.util.List - **/ - @Override - public List queryWithdrawalSpecial(Integer pkCountry) { - List withdrawalSpecial = redisService.getCacheObject(CacheConstants.BD_WITHDRAWAL_SPECIAL + pkCountry); - if(null == withdrawalSpecial){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - withdrawalSpecial = baseMapper.selectList(queryWrapper); - if(null != withdrawalSpecial){ - redisService.setCacheObject(CacheConstants.BD_WITHDRAWAL_SPECIAL + pkCountry, withdrawalSpecial); - } - } - return withdrawalSpecial; - } - - /** - * @description: 根据会员编号查询提现特殊配置 - * @author: zhang jing - * @date: 2022/9/27 16:34 - * @param: [pkCountry, memberCode] - * @return: com.hzs.common.domain.system.config.BdWithdrawalSpecial - **/ - @Override - public BdWithdrawalSpecial getWithdrawalSpecial(Integer pkCountry, String memberCode) { - BdWithdrawalSpecial withdrawalSpecial = redisService.getCacheObject(CacheConstants.BD_WITHDRAWAL_SPECIAL_MEMBER_CODE + memberCode); - if(null == withdrawalSpecial){ - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",pkCountry); - queryWrapper.eq("MEMBER_CODE",memberCode); - withdrawalSpecial = baseMapper.selectOne(queryWrapper); - if(null != withdrawalSpecial){ - redisService.setCacheObject(CacheConstants.BD_WITHDRAWAL_SPECIAL_MEMBER_CODE + memberCode, withdrawalSpecial); - } - } - return withdrawalSpecial; - } - } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalTaxServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalTaxServiceImpl.java index 8fcbefce..24a5dae9 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalTaxServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/service/impl/BdWithdrawalTaxServiceImpl.java @@ -25,162 +25,124 @@ import java.util.Date; import java.util.List; /** - *

* 个税明细表 服务实现类 - *

- * - * @author zhangjing - * @since 2022-09-06 */ @Service public class BdWithdrawalTaxServiceImpl extends ServiceImpl implements IBdWithdrawalTaxService { + @Autowired private RedisService redisService; @Autowired - public void setRedisService(RedisService redisService) { - this.redisService = redisService; - } + private IBdWithdrawalTaxDetailsService iBdWithdrawalTaxDetailsService; - @Autowired - private IBdWithdrawalTaxDetailsService withdrawalTaxDetailsService; - - - /** - * @description: 根据国家查询个税明细 - * @author: zhang jing - * @date: 2022/9/27 16:04 - * @param: [pkCountry] - * @return: java.util.List - **/ @Override public BdWithdrawalTaxExt queryWithdrawalTax(Integer pkCountry) { BdWithdrawalTaxExt withdrawalTaxExt = redisService.getCacheObject(CacheConstants.BD_WITHDRAWAL_TAX + pkCountry); - if(StringUtils.isNull(withdrawalTaxExt)){ - QueryWrapper queryWrapper = new QueryWrapper(); + if (StringUtils.isNull(withdrawalTaxExt)) { + QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("PK_COUNTRY", pkCountry); - queryWrapper.le("EFFECTIVE_DATE",new Date()); + queryWrapper.le("EFFECTIVE_DATE", new Date()); queryWrapper.orderByDesc("CREATION_TIME"); BdWithdrawalTax bwt = baseMapper.selectOne(queryWrapper); BdWithdrawalTaxExt bwtExt = BeanUtil.copyProperties(bwt, BdWithdrawalTaxExt.class); - if(StringUtils.isNotNull(bwtExt)&&StringUtils.isNotNull(bwt)){ - QueryWrapper queryWrapperDetails = new QueryWrapper(); - queryWrapperDetails.eq("PK_COUNTRY",pkCountry); - queryWrapperDetails.eq("PK_WITHDRAWAL_TAX",bwtExt.getPkId()); - List bwtdList =withdrawalTaxDetailsService.list(queryWrapperDetails); - if(CollectionUtil.isNotEmpty(bwtdList)){ + if (StringUtils.isNotNull(bwtExt) && StringUtils.isNotNull(bwt)) { + QueryWrapper queryWrapperDetails = new QueryWrapper<>(); + queryWrapperDetails.eq("PK_COUNTRY", pkCountry); + queryWrapperDetails.eq("PK_WITHDRAWAL_TAX", bwtExt.getPkId()); + List bwtdList = iBdWithdrawalTaxDetailsService.list(queryWrapperDetails); + if (CollectionUtil.isNotEmpty(bwtdList)) { bwtExt.setWithdrawalTaxDetailsList(bwtdList); - }else{ - bwtdList=new ArrayList<>(); + } else { + bwtdList = new ArrayList<>(); bwtExt.setWithdrawalTaxDetailsList(bwtdList); } - withdrawalTaxExt=bwtExt; - }else{ - bwtExt=new BdWithdrawalTaxExt(); - List bwtdList=new ArrayList<>(); + withdrawalTaxExt = bwtExt; + } else { + bwtExt = new BdWithdrawalTaxExt(); + List bwtdList = new ArrayList<>(); bwtExt.setWithdrawalTaxDetailsList(bwtdList); - withdrawalTaxExt=bwtExt; + withdrawalTaxExt = bwtExt; } - if(null != withdrawalTaxExt){ + if (null != withdrawalTaxExt) { redisService.setCacheObject(CacheConstants.BD_WITHDRAWAL_TAX + pkCountry, withdrawalTaxExt); } } return withdrawalTaxExt; } - /** - * @description: 添加或修改提现个税 - * @author: zhang jing - * @date: 2022/11/9 9:26 - * @param: [withdrawalTaxExt] - * @return: boolean - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean saveWithdrawalTax(BdWithdrawalTaxExt withdrawalTaxExt) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_COUNTRY",withdrawalTaxExt.getPkCountry()); - BdWithdrawalTax bdWithdrawalTax= baseMapper.selectOne(queryWrapper); - if(StringUtils.isNotNull(bdWithdrawalTax)){ - UpdateWrapper updateWrapperWt = new UpdateWrapper(); - updateWrapperWt.eq("PK_COUNTRY",withdrawalTaxExt.getPkCountry()); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_COUNTRY", withdrawalTaxExt.getPkCountry()); + BdWithdrawalTax bdWithdrawalTax = baseMapper.selectOne(queryWrapper); + if (StringUtils.isNotNull(bdWithdrawalTax)) { + UpdateWrapper updateWrapperWt = new UpdateWrapper<>(); + updateWrapperWt.eq("PK_COUNTRY", withdrawalTaxExt.getPkCountry()); updateWrapperWt.eq("DEL_FLAG", EDelFlag.UN_DELETE.getValue()); - updateWrapperWt.set("SERVICE_TYPE",withdrawalTaxExt.getServiceType()); - updateWrapperWt.set("TAX_CYCLE",withdrawalTaxExt.getTaxCycle()); - updateWrapperWt.set("EFFECTIVE_DATE",withdrawalTaxExt.getEffectiveDate()); - baseMapper.update(null,updateWrapperWt); - for(BdWithdrawalTaxDetails bwtd:withdrawalTaxExt.getWithdrawalTaxDetailsList()){ + updateWrapperWt.set("SERVICE_TYPE", withdrawalTaxExt.getServiceType()); + updateWrapperWt.set("TAX_CYCLE", withdrawalTaxExt.getTaxCycle()); + updateWrapperWt.set("EFFECTIVE_DATE", withdrawalTaxExt.getEffectiveDate()); + baseMapper.update(null, updateWrapperWt); + for (BdWithdrawalTaxDetails bwtd : withdrawalTaxExt.getWithdrawalTaxDetailsList()) { bwtd.setPkWithdrawalTax(bdWithdrawalTax.getPkId()); - if(StringUtils.isNotNull(bwtd.getPkId())){ - withdrawalTaxDetailsService.updateById(bwtd); - }else{ - withdrawalTaxDetailsService.save(bwtd); + if (StringUtils.isNotNull(bwtd.getPkId())) { + iBdWithdrawalTaxDetailsService.updateById(bwtd); + } else { + iBdWithdrawalTaxDetailsService.save(bwtd); } } - }else{ + } else { baseMapper.insert(withdrawalTaxExt); - for(BdWithdrawalTaxDetails bwtd:withdrawalTaxExt.getWithdrawalTaxDetailsList()){ + for (BdWithdrawalTaxDetails bwtd : withdrawalTaxExt.getWithdrawalTaxDetailsList()) { bwtd.setPkWithdrawalTax(withdrawalTaxExt.getPkId()); - withdrawalTaxDetailsService.save(bwtd); + iBdWithdrawalTaxDetailsService.save(bwtd); } } redisService.deleteObject(CacheConstants.BD_WITHDRAWAL_TAX + SecurityUtils.getPkCountry()); return true; } - /** - * @description: 删除提现个税 - * @author: zhang jing - * @date: 2022/11/7 18:05 - * @param: [pkId] - * @return: boolean - **/ @Override @Transactional(rollbackFor = Exception.class) public boolean deleteWithdrawalTax(Long pkId) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_ID",pkId); - BdWithdrawalTaxDetails withdrawalTaxDetails = withdrawalTaxDetailsService.getOne(queryWrapper); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_ID", pkId); + BdWithdrawalTaxDetails withdrawalTaxDetails = iBdWithdrawalTaxDetailsService.getOne(queryWrapper); UpdateWrapper updateWrapperDetails = new UpdateWrapper<>(); updateWrapperDetails.eq("PK_ID", pkId); updateWrapperDetails.set("DEL_FLAG", EDelFlag.DELETE.getValue()); updateWrapperDetails.set("PK_MODIFIED", SecurityUtils.getUserId()); updateWrapperDetails.set("MODIFIED_TIME", new Date()); - withdrawalTaxDetailsService.update(updateWrapperDetails); + iBdWithdrawalTaxDetailsService.update(updateWrapperDetails); - QueryWrapper queryWrapperList = new QueryWrapper(); - queryWrapperList.eq("PK_WITHDRAWAL_TAX",withdrawalTaxDetails.getPkWithdrawalTax()); - List bwtdList = withdrawalTaxDetailsService.list(queryWrapperList); - if(CollectionUtil.isEmpty(bwtdList)){ - UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.eq("PK_ID", withdrawalTaxDetails.getPkWithdrawalTax()); - updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); - updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); - updateWrapper.set("MODIFIED_TIME", new Date()); - baseMapper.update(null,updateWrapper); + QueryWrapper queryWrapperList = new QueryWrapper<>(); + queryWrapperList.eq("PK_WITHDRAWAL_TAX", withdrawalTaxDetails.getPkWithdrawalTax()); + List bwtdList = iBdWithdrawalTaxDetailsService.list(queryWrapperList); + if (CollectionUtil.isEmpty(bwtdList)) { + UpdateWrapper updateWrapper = new UpdateWrapper<>(); + updateWrapper.eq("PK_ID", withdrawalTaxDetails.getPkWithdrawalTax()); + updateWrapper.set("DEL_FLAG", EDelFlag.DELETE.getValue()); + updateWrapper.set("PK_MODIFIED", SecurityUtils.getUserId()); + updateWrapper.set("MODIFIED_TIME", new Date()); + baseMapper.update(null, updateWrapper); } redisService.deleteObject(CacheConstants.BD_WITHDRAWAL_TAX + SecurityUtils.getPkCountry()); return true; } - /** - * @description: 查询单条个税数据 - * @author: zhang jing - * @date: 2022/11/9 9:51 - * @param: [pkId] - * @return: com.hzs.common.domain.system.config.ext.BdWithdrawalTaxExt - **/ @Override public BdWithdrawalTaxExt getEithdrawalTaxExt(Long pkId) { - QueryWrapper queryWrapper = new QueryWrapper(); - queryWrapper.eq("PK_ID",pkId); - List withdrawalTaxDetailsList = withdrawalTaxDetailsService.list(queryWrapper); - QueryWrapper queryWrapperbwt = new QueryWrapper(); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("PK_ID", pkId); + List withdrawalTaxDetailsList = iBdWithdrawalTaxDetailsService.list(queryWrapper); + QueryWrapper queryWrapperbwt = new QueryWrapper<>(); queryWrapperbwt.eq("PK_ID", withdrawalTaxDetailsList.get(0).getPkWithdrawalTax()); queryWrapperbwt.eq("PK_COUNTRY", SecurityUtils.getPkCountry()); BdWithdrawalTax bwt = baseMapper.selectOne(queryWrapperbwt); - BdWithdrawalTaxExt bdWithdrawalTaxExt =BeanUtil.copyProperties(bwt, BdWithdrawalTaxExt.class); + BdWithdrawalTaxExt bdWithdrawalTaxExt = BeanUtil.copyProperties(bwt, BdWithdrawalTaxExt.class); bdWithdrawalTaxExt.setWithdrawalTaxDetailsList(withdrawalTaxDetailsList); return bdWithdrawalTaxExt; } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdAgreementRenewalWhiteVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdAgreementRenewalWhiteVO.java deleted file mode 100644 index 2fbf836e..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdAgreementRenewalWhiteVO.java +++ /dev/null @@ -1,102 +0,0 @@ -package com.hzs.system.config.vo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.common.core.annotation.Excel; -import com.hzs.common.core.annotation.Transaction; -import com.hzs.common.core.constant.EnumsPrefixConstants; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; -import java.util.Date; - -/** - * 协议续约白名单 VO - * - * @Description: - * @Author: ljc - * @Time: 2024/1/12 16:54 - * @Classname: BdAgreementRenewalWhiteVO - * @Package_name: com.hzs.system.config.vo - */ - -@Data -@AllArgsConstructor -@NoArgsConstructor -public class BdAgreementRenewalWhiteVO implements Serializable { - - - private static final long serialVersionUID = -928601521821754870L; - - - private Long pkId; - - /** - * 会员主键 - */ - private Long pkMember; - - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - /** - * 会员姓名 - */ - @Excel(name = "会员姓名") - private String memberName; - /** - * 真实奖衔 - */ - @Excel(name = "真实奖衔") - private String pkAwardsVal; - /** - * 隶属体系 - */ - @Excel(name = "隶属体系") - private String vertexName; - - /** - * 真实奖衔 - */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_AWARD) - private Integer pkAwards; - - - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") - private Date creationTime; - - /** - * 国家 - */ - private Integer pkCountry; - - /** - * 创建人ID - */ - private Long pkCreator; - - /** - * 隶属体系 - */ - private Integer vertexId; - - - /** - * 开始时间 - */ - private String startDate; - /** - * 结束时间 - */ - private String endDate; - - /** - * 类型:1:自动续约 2:休止期正常使用钱包 3:续约免实名 - */ - private Integer type; - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdLabelVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdLabelVO.java index 6f211c75..e8a78fb5 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdLabelVO.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdLabelVO.java @@ -13,19 +13,13 @@ import java.util.Date; /** * 标签配置VO - * - * @Description: - * @Author: ljc - * @Time: 2023/2/1 13:49 - * @Classname: BdLabelVO - * @Package_name: com.hzs.system.config.vo */ @Data @AllArgsConstructor @NoArgsConstructor public class BdLabelVO implements Serializable { - private static final long serialVersionUID = -8450046663567447166L; + private static final long serialVersionUID = -8450046663567447166L; /** * 主键 @@ -35,7 +29,6 @@ public class BdLabelVO implements Serializable { /** * 标签 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_LABEL, isValue = false) @Excel(name = "标签名称") private String label; @@ -53,7 +46,6 @@ public class BdLabelVO implements Serializable { /** * 标签分类 */ - @Transaction(transactionKey = EnumsPrefixConstants.TAG_TYPE) private Integer labelType; @Excel(name = "标签类型") @@ -74,7 +66,7 @@ public class BdLabelVO implements Serializable { /** * 开始时间 */ - private String startDate; + private String startDate; /** * 结束时间 diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java index d5f146cc..314bf7b7 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/BdTradeConfigVO.java @@ -13,12 +13,6 @@ import java.util.List; /** * 交易配置 - * - * @Description: - * @Author: ljc - * @Time: 2023/8/18 11:14 - * @Classname: BdTradeConfigVO - * @Package_name: com.hzs.system.config.vo */ @Data @AllArgsConstructor @@ -42,7 +36,6 @@ public class BdTradeConfigVO implements Serializable { /** * 1:提现 2:转账 (来源枚举EBusinessModule) */ - @Transaction(transactionKey = EnumsPrefixConstants.BUSINESS_MODULE) private Integer businessModule; private String businessModuleVal; diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/TemplateAgreementVO.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/TemplateAgreementVO.java deleted file mode 100644 index 337fa0bd..00000000 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/config/vo/TemplateAgreementVO.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.hzs.system.config.vo; - -import com.hzs.common.core.annotation.Excel; -import lombok.AllArgsConstructor; -import lombok.Data; -import lombok.NoArgsConstructor; - -import java.io.Serializable; - -/** - * @Description: 会员续约白名单模板 - * @Author: ljc - * @Time: 2022/10/11 11:24 - * @Classname: CuMemberBaseVO - * @Package_name: com.hzs.member.account.vo - */ -@Data -@AllArgsConstructor -@NoArgsConstructor -public class TemplateAgreementVO implements Serializable { - - - private static final long serialVersionUID = 6701964910228160875L; - /** - * 会员编号 - */ - @Excel(name = "会员编号") - private String memberCode; - - -} diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java index 2d29cf8c..0a955f73 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsController.java @@ -66,7 +66,6 @@ public class EnumsController extends BaseController { @DubboReference IMenuColumnServiceApi iMenuColumnServiceApi; - /** * 审批业务类型列表 * @@ -357,7 +356,7 @@ public class EnumsController extends BaseController { public AjaxResult currencyType() { List enumEntityList = new ArrayList<>(); for (ECurrencyType value : ECurrencyType.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.CURRENCY_TYPE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } @@ -452,7 +451,7 @@ public class EnumsController extends BaseController { List enumEntityList = new ArrayList<>(); for (EAreaType value : EAreaType.values()) { if (value.getEnable() == EnableStatus.ENABLE.getValue()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.EAREA_TYPE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } } return AjaxResult.success(enumEntityList); @@ -1059,20 +1058,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 查询专区 - * - * @return - */ - @GetMapping("/order-type-special") - public AjaxResult orderTypeSpecial() { - List enumEntityList = new ArrayList<>(); - for (EOrderType eOrderType : EOrderType.getOrderTypeSpecial()) { - enumEntityList.add(new EnumEntity(eOrderType.getValue(), eOrderType.getLabel(), EnumsPrefixConstants.ORDER_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 订单状态 * @@ -1099,18 +1084,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 体系奖项枚举类 - **/ - @GetMapping("/vertex-bonus-items") - public AjaxResult vertexBonusItems() { - List enumEntityList = new ArrayList<>(); - for (EVertexBonus value : EVertexBonus.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); - } - return AjaxResult.success(enumEntityList); - } - /** * 获取国家获取奖项 * @@ -1122,7 +1095,7 @@ public class EnumsController extends BaseController { List enumEntityList = new ArrayList<>(); for (BdBonusItemsExt bonusItemsExt : list) { - enumEntityList.add(new EnumEntity(bonusItemsExt.getPkTransaction(), bonusItemsExt.getBonusName(), EnumsPrefixConstants.BONUS_ITEMS)); + enumEntityList.add(new EnumEntity(bonusItemsExt.getPkTransaction(), bonusItemsExt.getBonusName())); } return AjaxResult.success(enumEntityList); @@ -1213,11 +1186,6 @@ public class EnumsController extends BaseController { /** * 订单来源枚举 - * - * @author: zhang jing - * @date: 2022/11/17 14:56 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/get-order-source") public AjaxResult getEOrderSource() { @@ -1230,11 +1198,6 @@ public class EnumsController extends BaseController { /** * 是否认证枚举 - * - * @author: zhang jing - * @date: 2022/11/17 15:05 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/get-yes-no-attestation") public AjaxResult getEYesNoAttestation() { @@ -1245,30 +1208,8 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - /** - * 会员有效状态枚举 - * - * @author: zhang jing - * @date: 2022/11/17 15:05 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult - **/ - @GetMapping("/get-expirestatus") - public AjaxResult getEExpireStatus() { - List enumEntityList = new ArrayList<>(); - for (EExpireStatus value : EExpireStatus.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); - } - return AjaxResult.success(enumEntityList); - } - /** * 是否上传枚举 - * - * @author: zhang jing - * @date: 2022/11/17 15:09 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/get-yes-no-uploads") public AjaxResult getEYesNoUpLoads() { @@ -1281,11 +1222,6 @@ public class EnumsController extends BaseController { /** * 钱包账户状态 - * - * @author: zhang jing - * @date: 2022/9/30 15:38 - * @param: [] - * @return: com.hzs.common.core.web.domain.AjaxResult **/ @GetMapping("/account-member-account") public AjaxResult getEMemberAccount() { @@ -1305,7 +1241,7 @@ public class EnumsController extends BaseController { public AjaxResult getLabelType() { List enumEntityList = new ArrayList<>(); for (ELabelType value : ELabelType.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.TAG_TYPE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } @@ -2331,15 +2267,6 @@ public class EnumsController extends BaseController { return AjaxResult.success(enumEntityList); } - @GetMapping("/get-grant-way") - public AjaxResult getGrantWay() { - List enumEntityList = new ArrayList<>(); - for (EGrantWay value : EGrantWay.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.GRANT_WAY_TYPE)); - } - return AjaxResult.success(enumEntityList); - } - /** * 数据类型(安置) @@ -2436,7 +2363,7 @@ public class EnumsController extends BaseController { public AjaxResult businessModule() { List enumEntityList = new ArrayList<>(); for (EBusinessModule value : EBusinessModule.values()) { - enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel(), EnumsPrefixConstants.BUSINESS_MODULE)); + enumEntityList.add(new EnumEntity(value.getValue(), value.getLabel())); } return AjaxResult.success(enumEntityList); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java index 61ba0717..82ec20e0 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/enums/controller/EnumsInitController.java @@ -43,10 +43,6 @@ public class EnumsInitController { for (EUpgradeType value : EUpgradeType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 地区类型枚举 - for (EAreaType value : EAreaType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } // 结算方式枚举 for (ESettleType value : ESettleType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -67,10 +63,6 @@ public class EnumsInitController { for (EAwardsLevel value : EAwardsLevel.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 国家币种种类 - for (ECurrencyType value : ECurrencyType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } // 业绩类型 for (EAchievementType value : EAchievementType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -90,11 +82,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 等级枚举枚举 - for (EGrade value : EGrade.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 直推配置取值枚举 for (ETakeValueType value : ETakeValueType.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -161,11 +148,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 订单类型 - for (EOrderType value : EOrderType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 货币种类 for (EAccount value : EAccount.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -201,11 +183,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 专区枚举 - for (ESpecialArea value : ESpecialArea.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 统计值枚举 for (EStatisticalValue value : EStatisticalValue.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); @@ -396,13 +373,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** - * 标签类型 - */ - for (ELabelType value : ELabelType.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - /** * 公告网站类型 */ @@ -424,7 +394,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - /** * 公告类型 */ @@ -591,11 +560,6 @@ public class EnumsInitController { initList.add(this.createData(value.getKey(), value.getLabel())); } - // 交易配置 业务类型 - for (EBusinessModule value : EBusinessModule.values()) { - initList.add(this.createData(value.getKey(), value.getLabel())); - } - // 点位状态 for (EPointStatus value : EPointStatus.values()) { initList.add(this.createData(value.getKey(), value.getLabel())); diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/mapper/SysCorpMapper.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/mapper/SysCorpMapper.java index 032f68f1..5323c2f0 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/mapper/SysCorpMapper.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/mapper/SysCorpMapper.java @@ -8,20 +8,12 @@ import com.hzs.system.sys.param.SysCorpParam; import java.util.List; /** - *

* 组织(公司)设置 Mapper 接口 - *

- * - * @author hzs - * @since 2023-11-20 */ public interface SysCorpMapper extends BaseMapper { /* - * @description: 根据条件查询公司 - * @author: sui q - * @date: 2023/11/20 9:29 - * @param: null null + * 根据条件查询公司 **/ List querySysCorpByCondition(SysCorpParam sysCorpParam); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/ISysCorpService.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/ISysCorpService.java index 9943f2be..83ca20a0 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/ISysCorpService.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/ISysCorpService.java @@ -8,44 +8,23 @@ import com.hzs.system.sys.param.SysCorpParam; import java.util.List; /** - *

* 组织(公司)设置 服务类 - *

- * - * @author hzs - * @since 2023-11-20 */ public interface ISysCorpService extends IService { /* - * @description: 保存系统公司 - * @author: sui q - * @date: 2023/11/20 9:19 - * @param: null null + * 保存系统公司 **/ void saveSysCorp(SysCorpParam sysCorpParam, Long pkMember); /* - * @description: 根据条件查询公司 - * @author: sui q - * @date: 2023/11/20 9:29 - * @param: null null + * 根据条件查询公司 **/ List querySysCorpByCondition(SysCorpParam sysCorpParam); /* - * @description: 根据主键删除公司,需要验证公司是否使用 - * @author: sui q - * @date: 2023/11/20 9:45 - * @param: null null + * 根据主键删除公司,需要验证公司是否使用 **/ void deleteSysCorpByPk(Integer pkId, Long pkMember); - /* - * @description: 查询采购组织 - * @author: sui q - * @date: 2023/11/20 17:48 - * @param: null null - **/ - SysCorp getSysCorp(Integer pkId, Integer pkCountry); } diff --git a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/impl/SysCorpServiceImpl.java b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/impl/SysCorpServiceImpl.java index e571d52c..35468541 100644 --- a/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/impl/SysCorpServiceImpl.java +++ b/bd-business/bd-business-system/src/main/java/com/hzs/system/sys/service/impl/SysCorpServiceImpl.java @@ -1,14 +1,11 @@ package com.hzs.system.sys.service.impl; import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.common.core.constant.SystemFieldConstants; import com.hzs.common.core.enums.EYesNo; import com.hzs.common.core.utils.DateUtils; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.domain.system.sys.SysCorp; import com.hzs.common.domain.system.sys.ext.SysCorpExt; import com.hzs.system.sys.mapper.SysCorpMapper; @@ -19,23 +16,18 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 组织(公司)设置 服务实现类 - *

- * - * @author hzs - * @since 2023-11-20 */ @Service public class SysCorpServiceImpl extends ServiceImpl implements ISysCorpService { @Override public void saveSysCorp(SysCorpParam sysCorpParam, Long pkMember) { - if(sysCorpParam.getPkId() == null){ + if (sysCorpParam.getPkId() == null) { SysCorp sysCorp = BeanUtil.copyProperties(sysCorpParam, SysCorp.class); sysCorp.setPkCreator(pkMember); baseMapper.insert(sysCorp); - }else{ + } else { SysCorp sysCorp = baseMapper.selectById(sysCorpParam.getPkId()); sysCorp.setPkFatherOrg(sysCorpParam.getPkFatherOrg()); sysCorp.setCorpName(sysCorpParam.getCorpName()); @@ -64,12 +56,4 @@ public class SysCorpServiceImpl extends ServiceImpl impl baseMapper.delete(updateWrapper); } - @Override - public SysCorp getSysCorp(Integer pkId, Integer pkCountry) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); - queryWrapper.eq(SystemFieldConstants.ENABLE_STATE, EYesNo.YES.getIntValue()); - queryWrapper.eq(SystemFieldConstants.PK_ID, pkId); - return baseMapper.selectOne(queryWrapper); - } } diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdProductStorehouseMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdProductStorehouseMapper.xml index 9a37cd3f..c92b7f3d 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdProductStorehouseMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdProductStorehouseMapper.xml @@ -86,18 +86,4 @@ ORDER BY bps.CREATION_TIME DESC - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdTransactionMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdTransactionMapper.xml index 9266d200..208bd453 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdTransactionMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/base/BdTransactionMapper.xml @@ -63,17 +63,6 @@ where PK_ID = #{pkId}
- - - - - - - select bl.pk_id,bonus_type,first_order,second_order,third_order,fourth_order,bl.pk_country, - cal_type,bd.pk_grade from bd_bonus_direct_loop bl - inner join BD_LOOP_DETAILS bd - on bl.pk_id = bd.pk_bonus_direct - where bl.del_flag=0 and bd.del_flag=0 - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdLabelMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdLabelMapper.xml index 7970f4b1..32e05d1a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdLabelMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdLabelMapper.xml @@ -17,17 +17,6 @@ - - - CREATION_TIME, - MODIFIED_TIME, - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, LABEL_TYPE, PK_TRANSACTION, LABLE - - - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml index 11f9b951..1b4ff04a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdRangeDetailsMapper.xml @@ -4,28 +4,17 @@ - - - - - - - - - + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - CREATION_TIME, - MODIFIED_TIME, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_RANGE, PK_LEVEL - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml index ebdd44ba..57aedf09 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShareMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MONTH, TOTAL_AMOUNT, ADD_AMOUNT, USED_AMOUNT, BALANCE_AMOUNT, BASE_AMOUNT, IS_GRANT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml index a4b27192..7ea8873a 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdShopMapper.xml @@ -2,33 +2,4 @@ - - - - - - - - - - - - - - - - - - - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, SHOP_NAME, PK_TRANSACTION, SHOP_VALUE, CENSUS_VALUE, START_VALUE, END_VALUE, SETTLE_VALUE, DELIVERY_FEE, DISCOUNT - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml index 3a77a3cd..efb0dfa3 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTradeWhiteConfigMapper.xml @@ -95,19 +95,4 @@ where rownum = 1 - - - diff --git a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml index 2211bcb3..3ab8bf9b 100644 --- a/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml +++ b/bd-business/bd-business-system/src/main/resources/mapper/system/config/BdTransferMapper.xml @@ -4,34 +4,24 @@ - - - - - - - - - - - - + + + + + + + + + + + + - - - DEL_FLAG, - PK_COUNTRY, - PK_CREATOR, - CREATION_TIME, - PK_MODIFIED, - MODIFIED_TIME, - PK_ID, MIN_AMOUNT, IS_ROUNDING, IS_REFERENCE, SERVICE_RATIO, EFFECTIVE_DATE - - + - select top.*, cm.member_code, cm.member_name, + select so.pay_time payTime, cm.phone, top.*, cm.member_code, cm.member_name, so.order_type orderType from T_ONLINE_PAYMENT top left join cu_member cm diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index 085d10fd..645a8119 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"BD_VERTEX_SYSTEM"}; + String[] tables = {"CU_MEMBER_RETAIL"}; // 生成实体是否继承统一父类 boolean superBool = true; @@ -50,8 +50,8 @@ public class CodeGenerator { // dsc.setSchemaName("public"); dataSourceConfig.setUrl("jdbc:oracle:thin:@101.201.51.180:1521/orcl") .setDriverName("oracle.jdbc.driver.OracleDriver") - .setUsername("retail") - .setPassword("pwRetailTest180") + .setUsername("cloud_zk") + .setPassword("pwCloudzk180") .setDbType(DbType.ORACLE); mpg.setDataSource(dataSourceConfig); diff --git a/pom.xml b/pom.xml index 77b9fdf4..8ea0c486 100644 --- a/pom.xml +++ b/pom.xml @@ -444,7 +444,7 @@ 127.0.0.1:8848 - 4d03b742-f273-4306-87c7-7dbd6000fd7c + 8e88a6b5-94e6-4711-8a01-c5ff87ac5662 DEFAULT_GROUP @@ -463,7 +463,7 @@ 172.26.201.166:8848 - 487f6929-777e-44b7-a9f9-479c6d8050e4 + f3d9c031-a0d3-46f2-b3cc-ffc51a528c67 DEFAULT_GROUP @@ -480,7 +480,7 @@ online - 172.26.201.209:8847 + 172.26.201.225:8847 @@ -488,7 +488,7 @@ nacos - reOnline_nacos#202 + zkOnline_nacos#15 diff --git a/sql/2025年6月30日-注水盒数小数位.sql b/sql/2025年6月30日-注水盒数小数位.sql deleted file mode 100644 index 0f9f5597..00000000 --- a/sql/2025年6月30日-注水盒数小数位.sql +++ /dev/null @@ -1,4 +0,0 @@ -ALTER TABLE "RETAIL"."CU_MEMBER_SPE_RETAIL" -MODIFY ("TEAM_BOX_NUM" NUMBER(10,2)) -MODIFY ("CONSUME_BOX_NUM" NUMBER(10,2)) -MODIFY ("SMALL_BOX_NUM" NUMBER(10,2)) diff --git a/sql/2025年9月22日_业绩统计.sql b/sql/2025年9月22日_业绩统计.sql new file mode 100644 index 00000000..9fd9c985 --- /dev/null +++ b/sql/2025年9月22日_业绩统计.sql @@ -0,0 +1,68 @@ +CREATE TABLE CU_MEMBER_PERFORMANCE_SUMMARY +( + "PK_ID" NUMBER(20,0) NOT NULL ENABLE, + "SUMMARY_DATE" DATE NOT NULL ENABLE, + "RETAIL_REGISTER_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REGISTER_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_UPGRADE_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_UPGRADE_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REPURCHASE_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_REPURCHASE_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_DISCOUNT_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "RETAIL_DISCOUNT_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "TOTAL_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "TOTAL_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "DIVIDEND_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE, + "PK_COUNTRY" NUMBER(4,0) DEFAULT 1 NOT NULL ENABLE, + "CREATION_TIME" DATE DEFAULT sysdate NOT NULL ENABLE, + "MODIFIED_TIME" DATE, + "PK_CREATOR" NUMBER(20,0) NOT NULL ENABLE, + "PK_MODIFIED" NUMBER(20,0) +); + +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."SUMMARY_DATE" IS '统计日期'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REGISTER_AMOUNT" IS '精品专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REGISTER_PV" IS '精品专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_UPGRADE_AMOUNT" IS '甄选专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_UPGRADE_PV" IS '甄选专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REPURCHASE_AMOUNT" IS '商城专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_REPURCHASE_PV" IS '商城专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_DISCOUNT_AMOUNT" IS '五折专区销售金额'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."RETAIL_DISCOUNT_PV" IS '五折专区销售业绩'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."TOTAL_AMOUNT" IS '当期销售金额合计'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."TOTAL_PV" IS '当期销售业绩合计'; +COMMENT ON COLUMN CU_MEMBER_PERFORMANCE_SUMMARY."DIVIDEND_PV" IS '当日分红合计(分红:所有专区PV值的1.5%每天进行记录)'; + +COMMENT ON TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" IS '销售业绩统计表'; + +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" RENAME COLUMN "DIVIDEND_PV" TO "TOTAL_DV_SOURCE"; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_REGISTER_DV_SOURCE" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_REGISTER_DV_UL" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_UPGRADE_DV_SOURCE" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_UPGRADE_DV_UL" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_REPURCHASE_DV_SOURCE" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_REPURCHASE_DV_UL" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_DISCOUNT_DV_SOURCE" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "RETAIL_DISCOUNT_DV_UL" NUMBER(20) DEFAULT 0 NOT NULL; +ALTER TABLE "CU_MEMBER_PERFORMANCE_SUMMARY" ADD "TOTAL_DV_UL" NUMBER(20) DEFAULT 0 NOT NULL; + +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_REGISTER_DV_SOURCE" IS '精品专区销售分红(原值)'; +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_REGISTER_DV_UL" IS '精品专区销售分红(上限)'; + +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_UPGRADE_DV_SOURCE" IS '甄选专区销售分红(原值)'; +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_UPGRADE_DV_UL" IS '甄选专区销售分红(上限)'; + +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_REPURCHASE_DV_SOURCE" IS '商城专区销售分红(原值)'; +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_REPURCHASE_DV_UL" IS '商城专区销售分红(上限)'; + +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_DISCOUNT_DV_SOURCE" IS '五折专区销售分红(原值)'; +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."RETAIL_DISCOUNT_DV_UL" IS '五折专区销售分红(上限)'; + +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."TOTAL_DV_SOURCE" IS '当日分红合计(分红:所有专区PV值的1.5%每天进行记录)(原值)'; +COMMENT ON COLUMN "CU_MEMBER_PERFORMANCE_SUMMARY"."TOTAL_DV_UL" IS '当日分红合计(分红:所有专区PV值的1.5%每天进行记录)(上限)'; + + +CREATE SEQUENCE C_M_PERFORMANCE_SUMMARY_SEQ + START WITH 1 + INCREMENT BY 1; diff --git a/sql/2025年9月9日_新秒结表.sql b/sql/2025年9月9日_新秒结表.sql new file mode 100644 index 00000000..4634b426 --- /dev/null +++ b/sql/2025年9月9日_新秒结表.sql @@ -0,0 +1,40 @@ +CREATE TABLE CU_MEMBER_RETAIL_S +( + "PK_MEMBER" NUMBER(20,0) NOT NULL ENABLE, + "PK_PARENT" NUMBER(20,0) NOT NULL ENABLE, + "PK_GRADE" NUMBER(4,0) NOT NULL ENABLE, + "PK_AWARDS" NUMBER(4,0) DEFAULT 10 NOT NULL ENABLE, + "ALL_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "ALL_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REG_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_CONSUME_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_AMOUNT" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE, + "REP_TEAM_NEW_PV" NUMBER(17,6) DEFAULT 0 NOT NULL ENABLE +); + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_MEMBER" IS '会员ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_PARENT" IS '推荐人ID'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_GRADE" IS '会员等级'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."PK_AWARDS" IS '会员奖衔'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_AMOUNT" IS '本日-个人所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_CONSUME_NEW_PV" IS '本日-个人所有新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_AMOUNT" IS '本日-团队所有新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."ALL_TEAM_NEW_PV" IS '本日-团队所有新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_AMOUNT" IS '本日-个人注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_CONSUME_NEW_PV" IS '本日-个人注册(精品专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_AMOUNT" IS '本日-团队注册(精品专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REG_TEAM_NEW_PV" IS '本日-团队注册(精品专区)新增业绩'; + +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_AMOUNT" IS '本日-个人复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_CONSUME_NEW_PV" IS '本日-个人复购(商城专区)新增业绩'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_AMOUNT" IS '本日-团队复购(商城专区)新增金额'; +COMMENT ON COLUMN CU_MEMBER_RETAIL_S."REP_TEAM_NEW_PV" IS '本日-团队复购(商城专区)新增业绩'; + +COMMENT ON TABLE "CU_MEMBER_RETAIL_S" IS '秒结表';