From 65d95f3195c5534e333405c8d624427b9a8f4e6c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 20 Jun 2025 16:23:07 +0800 Subject: [PATCH] =?UTF-8?q?##=20=E9=83=A8=E5=88=86=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=8F=8A=E5=86=85=E5=AE=B9=E4=BF=AE=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/activity/pick/IAcPickServiceApi.java | 39 - .../pick/IAcRetailPickLogServiceApi.java | 13 +- .../com/hzs/sale/order/dto/OrderParamDTO.java | 335 ------ .../hzs/sale/order/dto/SaOrderRangeDto.java | 39 - .../hzs/sale/order/dto/SingleItemStatDTO.java | 16 +- .../order/dto/SingleItemStatParamDTO.java | 16 +- .../hzs/system/config/IRangeServiceApi.java | 19 +- .../com/hzs/system/config/dto/RangeDTO.java | 9 +- .../com/hzs/system/sys/dto/BdCurrencyDTO.java | 7 - .../achieve/param/MemberAchieveParam.java | 5 - .../bonus/mapper/BdWaresBonusItemsMapper.java | 5 - .../bonus/mapper/BdWaresBonusMapper.java | 15 +- .../mapper/CuMemberBonusCoachMapper.java | 21 +- .../mapper/CuMemberBonusDetailMapper.java | 41 +- .../mapper/CuMemberBonusExpandMapper.java | 28 - .../mapper/CuMemberBonusPushHisMapper.java | 5 - .../bonus/mapper/CuMemberBonusPushMapper.java | 31 +- .../mapper/CuMemberRepeatBonusMapper.java | 10 +- .../mapper/CuMemberShareBonusMapper.java | 10 +- .../mapper/CuMemberShareDetailMapper.java | 23 +- .../bonus/bonus/param/LeXueRangeParam.java | 24 - .../bonus/param/TripleCycleListParam.java | 68 -- .../service/IBdWaresBonusItemsService.java | 20 +- .../bonus/service/IBdWaresBonusService.java | 30 +- .../bonus/service/IBonusGrantService.java | 7 - .../service/ICuMemberBonusCoachService.java | 13 +- .../service/ICuMemberBonusDetailService.java | 21 - .../service/ICuMemberBonusExpandService.java | 20 - .../service/ICuMemberBonusPushHisService.java | 12 - .../service/ICuMemberBonusPushService.java | 24 +- .../bonus/service/ICuMemberBonusService.java | 15 - .../service/ICuMemberRepeatBonusService.java | 10 +- .../service/ICuMemberShareBonusService.java | 15 +- .../service/ICuMemberShareDetailService.java | 19 +- .../service/ICuMemberSpeRetailService.java | 1 - .../impl/BdWaresBonusItemsServiceImpl.java | 7 +- .../service/impl/BdWaresBonusServiceImpl.java | 5 - .../service/impl/BonusGrantServiceImpl.java | 12 - .../impl/BonusSettleFirstPurchaseHandle.java | 536 --------- .../bonus/service/impl/BonusSettleHandle.java | 533 --------- .../impl/BonusSettlePurchaseHandle.java | 1005 ----------------- .../service/impl/BonusSettleServiceImpl.java | 112 -- .../impl/CuMemberBonusCoachServiceImpl.java | 11 +- .../impl/CuMemberBonusDetailServiceImpl.java | 21 +- .../impl/CuMemberBonusExpandServiceImpl.java | 21 +- .../impl/CuMemberBonusPushHisServiceImpl.java | 17 - .../impl/CuMemberBonusPushServiceImpl.java | 24 +- .../impl/CuMemberBonusServiceImpl.java | 35 - .../impl/CuMemberRepeatBonusServiceImpl.java | 5 - .../impl/CuMemberShareBonusServiceImpl.java | 40 +- .../impl/CuMemberShareDetailServiceImpl.java | 24 - .../census/param/CensusSummaryParam.java | 57 - .../hzs/bonus/census/vo/CensusSummaryVo.java | 166 --- .../api/ApiCuRegionAssessController.java | 9 +- .../manage/CuMemberAssessController.java | 7 - .../mapper/bonus/bonus/BdWaresBonusMapper.xml | 34 +- .../bonus/bonus/CuMemberBonusDetailMapper.xml | 11 - .../bonus/bonus/CuMemberBonusExpandMapper.xml | 14 +- .../bonus/bonus/CuMemberBonusPushMapper.xml | 12 +- .../bonus/bonus/CuMemberRepeatBonusMapper.xml | 43 +- .../bonus/bonus/CuMemberShareBonusMapper.xml | 84 +- .../bonus/bonus/CuMemberShareDetailMapper.xml | 75 +- .../service/impl/MemberEmptyServiceImpl.java | 6 +- .../api/ApiSelfModifyAddressController.java | 71 +- .../pick/mapper/AcPickMemberLogMapper.java | 13 - .../pick/provider/AcPickProviderApi.java | 62 - .../AcRetailPickLogServiceProvider.java | 16 +- .../pick/service/IAcPickMemberLogService.java | 20 - .../activity/pick/service/IAcPickService.java | 14 +- .../pick/service/IAcRetailPickLogService.java | 14 +- .../impl/AcPickMemberLogServiceImpl.java | 29 - .../impl/AcRetailPickLogServiceImpl.java | 12 - .../activity/pick/AcPickMemberLogMapper.xml | 48 - .../system/config/mapper/BdRangeMapper.java | 6 - .../config/provider/RangeServiceProvider.java | 22 +- .../config/service/IBdRangeService.java | 30 +- .../service/impl/BdRangeServiceImpl.java | 57 +- .../enums/controller/EnumsController.java | 1 - .../common/core/constant/SysConstants.java | 6 - .../hzs/common/core/enums/ESystemConfig.java | 4 +- .../common/domain/activity/pick/AcPick.java | 5 +- .../domain/activity/pick/ext/AcPickExt.java | 6 +- .../domain/member/base/CuAwardsControl.java | 5 - .../domain/member/bonus/BdWaresBonus.java | 5 - .../member/bonus/BdWaresBonusItems.java | 5 - .../member/bonus/CuMemberBonusCoach.java | 5 - .../member/bonus/CuMemberBonusExpand.java | 5 - .../member/bonus/CuMemberBonusPush.java | 5 - .../member/bonus/CuMemberBonusPushHis.java | 5 - .../member/bonus/CuMemberRepeatBonus.java | 6 +- .../member/bonus/CuMemberShareBonus.java | 5 - .../member/bonus/CuMemberShareDetail.java | 5 - .../domain/member/ext/CuBonusExpandExt.java | 9 +- .../member/ext/CuMemberBonusPushExt.java | 7 - .../domain/sale/ext/SaOrderItemsExt.java | 6 +- .../common/domain/system/config/BdRange.java | 9 +- 96 files changed, 243 insertions(+), 4187 deletions(-) delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcPickServiceApi.java delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/OrderParamDTO.java delete mode 100644 bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SaOrderRangeDto.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/LeXueRangeParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/TripleCycleListParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/param/CensusSummaryParam.java delete mode 100644 bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/vo/CensusSummaryVo.java delete mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcPickProviderApi.java diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcPickServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcPickServiceApi.java deleted file mode 100644 index fc14bfff..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/activity/pick/IAcPickServiceApi.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.activity.pick; - -import com.hzs.common.core.domain.R; -import com.hzs.common.domain.activity.pick.AcPickMemberLog; -import com.hzs.common.domain.activity.pick.ext.AcPickExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; - -import java.math.BigDecimal; -import java.util.List; - -/** - * @Description: 提货相关dubbo服务入口 - * @Author: jiang chao - * @Time: 2023/5/15 11:20 - * @Classname: IAcPickServiceApi - * @PackageName: com.hzs.activity.base - */ -public interface IAcPickServiceApi { - - /* - * @description: 查询会员提货使用记录 - * @author: sui q - * @date: 2023/6/3 10:51 - * @param: null null - **/ - R> queryPickMemberLog(List saOrderExtList); - - /** - * 根据订单查询邮费 - * - * @param orderCode 订单编号 - * @param recProvince 省 - * @param recCity 市 - * @param pkCountry 国家 - * @return - */ - R queryOrderPostage(String orderCode, Integer recProvince, Integer recCity, Integer pkCountry); - -} 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 index 2f6ad9e5..7cb0af10 100644 --- 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 @@ -3,22 +3,13 @@ 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/dto/OrderParamDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/OrderParamDTO.java deleted file mode 100644 index b5522ed0..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/OrderParamDTO.java +++ /dev/null @@ -1,335 +0,0 @@ -package com.hzs.sale.order.dto; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.hzs.common.core.constant.msg.MemberMsgConstants; -import jdk.nashorn.internal.ir.annotations.Ignore; -import lombok.AllArgsConstructor; -import lombok.Builder; -import lombok.Data; -import lombok.NoArgsConstructor; - -import javax.validation.constraints.Size; -import java.io.Serializable; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; - -@Data -@Builder -@AllArgsConstructor -@NoArgsConstructor -public class OrderParamDTO implements Serializable { - - /** - * 订单编号 - */ - private String orderCode; - - /** - * 会员编号 - */ - private Long pkMember; - - /** - * 会员编号 - */ - private String memberCode; - - /** - * 会员姓名 - */ - private String memberName; - - /** - * 会员类型(0.正常 1.空单 2.死点 4.嗨粉) - */ - private Integer customerType; - - /** - * 等级 - */ - private Integer pkGrade; - - /** - * 手机号码 - */ - @Size(min = 1, max = 30, message = MemberMsgConstants.PHONE_LENGTH) - private String phone; - - /** - * 证件号码 - */ - private String idCard; - - /** - * 性别(0=未知,1=男,2=女) - */ - private Integer sex; - - /** - * 自然国家 - */ - private Integer pkCountry; - - /** - * 结算国家 - */ - private Integer pkSettleCountry; - - /** - * 创建人结算国家,用于跨国报单 - */ - @JsonIgnore - private Integer pkLoginSettleCountry; - - /** - * 推荐人编号 - */ - private String parent; - - @JsonIgnore - private Long parentId; - /** - * 推荐人ID,为防止之前业务有问题,不使用上面的字段 - */ - private Long pkParent; - /** - * 会员ID,为防止之前业务有问题,新添加会员ID字段 - */ - private Long pkMemberId; - - /** - * 推荐人姓名 - */ - private String parentName; - - /** - * 安置人编号 - */ - private String placeParent; - - @JsonIgnore - private Long placeParentId; - - /** - * 安置人姓名 - */ - private String placeParentName; - - /** - * 安置人部门 - */ - private Integer placeDept; - - /** - * 报单中心编号 - */ - private Long centerCodeId; - - /** - * 报单中心名称 - */ - private String centerName; - - /** - * 升级会员编号,需要验证安置线,只能给自己的安置以下升级 - */ - private String upgradeMemberCode; - - /** - * 复购会员编号,需要验证安置线,只能给自己的安置以下升级 - */ - private String repurchaseMemberCode; - - /** - * 会员升级姓名 - */ - private String upgradeMemberName; - - /** - * 数据来源(1=PC端,2=APP,3=H5) - */ - private Integer source; - - /** - * 收货人 - */ - private String recName; - - /** - * 收货电话 - */ - private String recPhone; - - /** - * 收货省 - */ - private Integer recProvince; - - /** - * 收货市 - */ - private Integer recCity; - - /** - * 收货县 - */ - private Integer recCounty; - - /** - * 收货地址 - */ - private String recAddress; - - /** - * 备注 - */ - private String remark; - - /** - * 配送中心 - */ - private Integer deliveryCenter; - - /** - * 配送省 - */ - private Integer deliveryProvince; - - /** - * 配送市 - */ - private Integer deliveryCity; - - /** - * 配送县 - */ - private Integer deliveryCounty; - - /** - * 发货方式 - */ - private Integer deliveryWay; - - /** - * 运输类型 1=陆运,2=空运,3=海运 - */ - private Integer transType; - /** - * 运输类型 1=陆运,2=空运,3=海运 - */ - private Integer tranType; - - /** - * 登录密码 - */ - @JsonIgnore - private String loginPwd; - - /** - * 支付密码 - */ - private String payPwd; - - /** - * 邮箱 - */ - private String email; - - /** - * 所属专区 - */ - private Integer specialArea; - - /** - * 银行 - */ - private Integer pkBank; - /** - * 支行名称 - */ - private String subBankName; - /** - * 银行卡号 - */ - private String cardNumber; - - /** - * 会员店铺 - */ - private Integer pkMemberStore; - - /** - * 仓库 - */ - private Integer pkStorehouse; - - /** - * 邮费 - */ - private BigDecimal postage = BigDecimal.ZERO; - /** - * 特殊邮费(处理不参与复购300包邮的邮费) - */ - private BigDecimal specialPostage = BigDecimal.ZERO; - /** - * 特殊邮费金额(处理不参与复购300包邮的邮费) - */ - private BigDecimal specialPostageAmount = BigDecimal.ZERO; - - /** - * 订单商品明细 - */ - private List orderItemsParams; - - /** - * 是否首单 - */ - private Boolean isFirst = false; - - /** - * 是否海粉订单 - */ - @JsonIgnore - private Boolean isHaiFun = false; - - /** - * 显示默认,0=快速注册,1=普通注册 - */ - private Integer displayDefault; - - /** - * @Description: 验证保存的必输字段 - * @return: List - * @Author: sui q - * @Date: 2022/8/29 11:10 - */ - @JsonIgnore - public List getValidSaveField() { - List fieldList = getValidConfirmField(); - fieldList.add("payPwd"); - return fieldList; - } - - @JsonIgnore - public List getFunValidConfirmField() { - List fieldList = getList(); - fieldList.add("memberName"); - fieldList.add("phone"); - fieldList.add("parent"); - return fieldList; - } - - @JsonIgnore - public List getValidConfirmField() { - List fieldList = getFunValidConfirmField(); - fieldList.add("placeParent"); - fieldList.add("placeDept"); - return fieldList; - } - - @Ignore - private List getList() { - return new ArrayList<>(); - } -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SaOrderRangeDto.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SaOrderRangeDto.java deleted file mode 100644 index 314c43d9..00000000 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SaOrderRangeDto.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.hzs.sale.order.dto; - -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @Description: - * @Author: sui q - * @Time: 2022/12/30 17:14 - * @Classname: SaOrderRangeDto - * @PackageName: com.hzs.sale.order.dto - */ -@Data -public class SaOrderRangeDto implements Serializable { - - private Long pkOrderItems; - - private String orderCode; - - private Integer pkWaresSpecsSku; - - private Integer quantity; - - private BigDecimal orderPrice; - - private BigDecimal orderAchieve; - - private Integer pkRange; - - private Integer rangeValue; - - private BigDecimal rangePrice; - - private BigDecimal rangeAchieve; - - private Integer pkCountry; -} diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatDTO.java index fc6645ca..25b7cdbe 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatDTO.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatDTO.java @@ -1,10 +1,4 @@ -package com.hzs.sale.order.dto;/** - * @Description: - * @Author: yuhui - * @Time: 2024/5/14 10:48 - * @Classname: SingleItemStatDTO - * @PackageName: com.hzs.sale.order.dto - */ +package com.hzs.sale.order.dto; import com.fasterxml.jackson.annotation.JsonFormat; import com.hzs.common.core.annotation.Excel; @@ -13,14 +7,6 @@ import lombok.Data; import java.io.Serializable; import java.util.Date; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.order.dto - *@Author: yh - *@CreateTime: 2024-05-14 10:48 - *@Description: TODO - *@Version: 1.0 - */ @Data public class SingleItemStatDTO implements Serializable { diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatParamDTO.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatParamDTO.java index d0688d71..fe018920 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatParamDTO.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/dto/SingleItemStatParamDTO.java @@ -1,24 +1,10 @@ -package com.hzs.sale.order.dto;/** - * @Description: - * @Author: yuhui - * @Time: 2024/5/14 14:16 - * @Classname: SingleItemStatParamDTO - * @PackageName: com.hzs.sale.order.dto - */ +package com.hzs.sale.order.dto; import lombok.Data; import java.io.Serializable; import java.util.Date; -/** - *@BelongsProject: hzs_cloud - *@BelongsPackage: com.hzs.sale.order.dto - *@Author: yh - *@CreateTime: 2024-05-14 14:16 - *@Description: TODO - *@Version: 1.0 - */ @Data public class SingleItemStatParamDTO implements Serializable { 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..fec29069 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 @@ -9,29 +9,17 @@ 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(); @@ -41,9 +29,6 @@ public interface IRangeServiceApi { * @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/dto/RangeDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/RangeDTO.java index bac6e4c5..fa433632 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/RangeDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/config/dto/RangeDTO.java @@ -1,19 +1,12 @@ package com.hzs.system.config.dto; -import com.baomidou.mybatisplus.annotation.TableField; -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; /** - * @Description: 极差的配置 - * @Author: sui q - * @Time: 2023/1/3 13:42 - * @Classname: RangeDTO - * @PackageName: com.hzs.system.config.dto + * 极差的配置 */ @Data public class RangeDTO implements Serializable { diff --git a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BdCurrencyDTO.java b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BdCurrencyDTO.java index 587032e4..c1223a66 100644 --- a/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BdCurrencyDTO.java +++ b/bd-api/bd-api-system/src/main/java/com/hzs/system/sys/dto/BdCurrencyDTO.java @@ -5,13 +5,6 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; -/** - * @Description: - * @Author: sui q - * @Time: 2023/3/4 16:00 - * @Classname: BdCurrencyDTO - * @PackageName: com.hzs.system.sys.dto - */ @Data public class BdCurrencyDTO implements Serializable { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/param/MemberAchieveParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/param/MemberAchieveParam.java index e34d0462..cc4814c5 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/param/MemberAchieveParam.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/achieve/param/MemberAchieveParam.java @@ -13,12 +13,7 @@ import java.io.Serializable; import java.math.BigDecimal; /** - *

* 会员业绩记录 - *

- * - * @author hzs - * @since 2022-10-26 */ @Data @Builder diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusItemsMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusItemsMapper.java index 21327fe0..ab2c8434 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusItemsMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusItemsMapper.java @@ -4,12 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.common.domain.member.bonus.BdWaresBonusItems; /** - *

* 特殊商品分配ev奖金明细 Mapper 接口 - *

- * - * @author hzs - * @since 2024-10-30 */ public interface BdWaresBonusItemsMapper extends BaseMapper { diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusMapper.java index dce37735..8a459488 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/BdWaresBonusMapper.java @@ -8,28 +8,17 @@ import com.hzs.common.domain.member.ext.BdWaresBonusExt; import java.util.List; /** - *

* 特殊商品分配奖金 Mapper 接口 - *

- * - * @author hzs - * @since 2024-10-30 */ public interface BdWaresBonusMapper extends BaseMapper { /* - * @description: 查询特殊品奖金配置 - * @author: sui q - * @date: 2024/10/30 10:55 - * @param: null null + * 查询特殊品奖金配置 **/ List querySpecialWaresBonus(BdWaresBonusParam waresBonusParam); /* - * @description: 查询能设置奖金的特殊品 - * @author: sui q - * @date: 2024/11/8 10:19 - * @param: null null + * 查询能设置奖金的特殊品 **/ List queryAllSpecialWaresBonus(); } 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 cf604fad..3ce3c4d4 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 @@ -9,48 +9,35 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员奖金-辅导收益明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-15 */ public interface CuMemberBonusCoachMapper extends BaseMapper { /** * 删除会员奖金汇总表 + * * @param period 结算期间 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 11:54 */ void deleteCuMemberBonusCoach(Integer period); /** * 批量插入会员奖金主表 + * * @param cuMemberBonusCoachList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 */ void batchInsertCuMemberBonusCoach(@Param("cuMemberBonusCoachList") List cuMemberBonusCoachList); /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusCoachByBonusItems(BonusParam bonusParam); /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusCoachByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusDetailMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusDetailMapper.java index e447c118..04dc1814 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusDetailMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusDetailMapper.java @@ -9,76 +9,49 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员奖金-奖金收益明细表(报单费) Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-17 */ public interface CuMemberBonusDetailMapper extends BaseMapper { /** * 删除会员奖金汇总表 + * * @param period 结算期间 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 11:54 */ void deleteCuMemberBonusDetail(Integer period); /** * 批量插入会员奖金主表 + * * @param cuMemberBonusDetailList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 */ void batchInsertCuMemberBonusDetail(@Param("cuMemberBonusDetailList") List cuMemberBonusDetailList); - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusDetail 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 - */ - void insertCuMemberBonusDetail(@Param("item") CuMemberBonusDetail cuMemberBonusDetail); - /** * 根据查询条件查询会员奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 9:18 */ List queryMemberBonusDetailByCondition(BonusParam bonusParam); /** * 会员端根据查询条件查询会员奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 9:18 */ List queryMemberBonusDetailByConditionForServer(@Param("bonusParam") BonusParam bonusParam); /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 - */ + */ List queryMemberBonusDetailByBonusItems(BonusParam bonusParam); /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusDetailByBonusItemsForServer(@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 bbeec528..eff30d4b 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 @@ -9,12 +9,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员奖金-拓展收益明细表 Mapper 接口 - *

- * - * @author hzs - * @since 2022-11-15 */ public interface CuMemberBonusExpandMapper extends BaseMapper { @@ -22,9 +17,6 @@ public interface CuMemberBonusExpandMapper extends BaseMapper cuMemberBonusExpandList); - /** - * 批量插入会员奖金,拓展 - * - * @param cuMemberBonusExpandList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 - */ - void insertCuMemberBonusExpand(List cuMemberBonusExpandList); - - /** * 根据查询条件查询固定的奖金明细 * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusExpandByBonusItems(BonusParam bonusParam); @@ -63,9 +38,6 @@ public interface CuMemberBonusExpandMapper extends BaseMapper - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusExpandByBonusItemsForServer(@Param("bonusParam") BonusParam bonusParam); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushHisMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushHisMapper.java index 8c5524c9..beea5a1d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberBonusPushHisMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/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-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 0e76a543..8799b99d 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 @@ -1,7 +1,6 @@ package com.hzs.bonus.bonus.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.bonus.bonus.param.TripleCycleListParam; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import com.hzs.bonus.bonus.param.BonusParam; @@ -10,58 +9,36 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

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

- * - * @author hzs - * @since 2022-11-10 */ public interface CuMemberBonusPushMapper extends BaseMapper { /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusPushByBonusItems(BonusParam bonusParam); /** * 根据查询条件查询固定的奖金明细 + * * @param bonusParam 查询条件 - * @return: List - * @Author: sui q - * @Date: 2023/1/14 11:18 */ List queryMemberBonusPushByBonusItemsFoServer(@Param("bonusParam") BonusParam bonusParam); /** * 删除会员奖金汇总表 + * * @param period 结算期间 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 11:54 */ void deleteCuMemberBonusPush(Integer period); /** * 批量插入会员直推奖 + * * @param cuMemberBonusPushList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 */ void batchInsertCuMemberBonusPush(@Param("cuMemberBonusPushList") List cuMemberBonusPushList); - /** - * 插入会员直推奖 - * @param cuMemberBonusPush 直推奖金 - * @return: void - * @Author: sui q - * @Date: 2023/2/17 9:48 - */ - void insertCuMemberBonusPush(@Param("item")CuMemberBonusPush cuMemberBonusPush); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberRepeatBonusMapper.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberRepeatBonusMapper.java index 6091df6c..9160609b 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberRepeatBonusMapper.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/mapper/CuMemberRepeatBonusMapper.java @@ -7,20 +7,12 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员奖金-4-n碰次重算奖金表 Mapper 接口 - *

- * - * @author hzs - * @since 2024-07-23 */ public interface CuMemberRepeatBonusMapper extends BaseMapper { /* - * @description: 批量插入重算奖金数据 - * @author: sui q - * @date: 2024/7/23 11:46 - * @param: null null + * 批量插入重算奖金数据 **/ void insertCuMemberRepeatBonus(@Param("cuMemberRepeatBonusList") List cuMemberRepeatBonusList); } 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 83e18f22..051f54ce 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 @@ -6,20 +6,12 @@ import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; import org.apache.ibatis.annotations.Param; /** - *

* 会员奖金-分红奖金配置 Mapper 接口 - *

- * - * @author hzs - * @since 2023-07-03 */ public interface CuMemberShareBonusMapper extends BaseMapper { /* - * @description: 查询会员分享奖金 - * @author: sui q - * @date: 2023/7/3 15:28 - * @param: null null + * 查询会员分享奖金 **/ 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 3793719b..66428e2b 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 @@ -8,28 +8,17 @@ import org.apache.ibatis.annotations.Param; import java.util.List; /** - *

* 会员奖金-分红奖金配置明细 Mapper 接口 - *

- * - * @author hzs - * @since 2023-07-03 */ public interface CuMemberShareDetailMapper extends BaseMapper { - /* - * @description: 更新分享明细 - * @author: sui q - * @date: 2023/7/3 14:11 - * @param: null null - **/ + /** + * 更新分享明细 + */ void saveMemberShareBonus(@Param("cuMemberShareDetailList") List cuMemberShareDetailList); - /* - * @description: 根据期间查询对应的奖衔 period当前月第一天 - * @author: sui q - * @date: 2023/8/11 15:42 - * @param: null null - **/ + /** + * 根据期间查询对应的奖衔 period当前月第一天 + */ List queryCuMemberShareBonusByPeriod(Integer period); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/LeXueRangeParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/LeXueRangeParam.java deleted file mode 100644 index c83d55c7..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/LeXueRangeParam.java +++ /dev/null @@ -1,24 +0,0 @@ -package com.hzs.bonus.bonus.param; - -import com.hzs.common.domain.activity.pick.AcPickMemberLog; -import com.hzs.common.domain.activity.pick.ext.AcPickExt; -import lombok.Data; - -import java.io.Serializable; -import java.util.List; - -/** - * @description: 计算乐学易考特殊极差的param - * @author: sui q - * @time: 2023/6/3 14:37 - * @classname: LeXueRangeParam - * @package_name: com.hzs.member.bonus.param - * version 1.0.0 - */ -@Data -public class LeXueRangeParam implements Serializable { - - private List acPickExtList; - - private List acPickMemberLogList; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/TripleCycleListParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/TripleCycleListParam.java deleted file mode 100644 index eeee939b..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/param/TripleCycleListParam.java +++ /dev/null @@ -1,68 +0,0 @@ -package com.hzs.bonus.bonus.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-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusItemsService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusItemsService.java index ec7c8444..b4b9cb29 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusItemsService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusItemsService.java @@ -6,36 +6,22 @@ import com.hzs.common.domain.member.bonus.BdWaresBonusItems; import java.util.List; /** - *

* 特殊商品分配ev奖金明细 服务类 - *

- * - * @author hzs - * @since 2024-10-30 */ public interface IBdWaresBonusItemsService extends IService { /* - * @description: 插入奖金特殊项奖金 - * @author: sui q - * @date: 2024/11/7 15:04 - * @param: null null + * 插入奖金特殊项奖金 **/ void insetWaresBonusItems(List waresBonusItemsList); /* - * @description: 插入奖金特殊项奖金 - * @author: sui q - * @date: 2024/11/7 15:04 - * @param: null null + * 插入奖金特殊项奖金 **/ void updateWaresBonusItems(List waresBonusItemsList); /* - * @description: 插入奖金特殊项奖金 - * @author: sui q - * @date: 2024/11/7 15:04 - * @param: null null + * 插入奖金特殊项奖金 **/ void deleteWaresBonusItems(List waresBonusItemsList, Long pkWaresBonus, Long userId); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusService.java index 85363daa..5992ff3e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBdWaresBonusService.java @@ -8,52 +8,32 @@ import com.hzs.common.domain.member.ext.BdWaresBonusExt; import java.util.List; /** - *

* 特殊商品分配奖金 服务类 - *

- * - * @author hzs - * @since 2024-10-30 */ public interface IBdWaresBonusService extends IService { /* - * @description: 查询特殊品奖金配置 - * @author: sui q - * @date: 2024/10/30 10:55 - * @param: null null + * 查询特殊品奖金配置 **/ List querySpecialWaresBonus(BdWaresBonusParam waresBonusParam); /* - * @description: 根据主键删除特殊商品奖金配置 - * @author: sui q - * @date: 2024/11/8 9:58 - * @param: null null + * 根据主键删除特殊商品奖金配置 **/ void deleteSpecialWaresBonus(Long pkId, Long userId); /* - * @description: 根据商品id查询是否已经存在数据 - * @author: sui q - * @date: 2024/11/7 15:51 - * @param: null null + * 根据商品id查询是否已经存在数据 **/ BdWaresBonus queryWaresBonusById(BdWaresBonusParam waresBonusParam); /* - * @description: 插入商品奖金根据参数 - * @author: sui q - * @date: 2024/11/7 13:47 - * @param: null null + * 插入商品奖金根据参数 **/ void insertOrUpdateBdWaresBonusByParam(BdWaresBonusParam bdWaresBonusParam, Long userId); /* - * @description: 查询能设置奖金的特殊品 - * @author: sui q - * @date: 2024/11/8 10:19 - * @param: null null + * 查询能设置奖金的特殊品 **/ List querySpecialWaresBonus(); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusGrantService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusGrantService.java index d6a9dd1e..bc4e5ad2 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusGrantService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/IBonusGrantService.java @@ -19,13 +19,6 @@ public interface IBonusGrantService { */ void publishBonusByPeriod(Integer pkCountry, String settleDate); - /** - * 手动不公布奖金 - * - * @param settleDate 日期 - */ - void noPublishBonusByPeriod(Integer pkCountry, String settleDate); - /** * 每天发放奖金 * 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 241fcf7c..876debdf 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 @@ -7,30 +7,21 @@ import java.util.List; import java.util.Set; /** - *

* 会员奖金-辅导收益明细表 服务类 - *

- * - * @author hzs - * @since 2022-11-15 */ public interface ICuMemberBonusCoachService extends IService { /** * 删除会员奖金汇总表 + * * @param period 结算期间 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 11:54 */ void deleteCuMemberBonusCoach(Integer period); /** * 批量插入会员奖金主表 + * * @param cuMemberBonusCoachList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 */ void batchInsertCuMemberBonusCoach(List cuMemberBonusCoachList, Set memberIdSet); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusDetailService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusDetailService.java index 522bddd7..18db88bd 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusDetailService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusDetailService.java @@ -7,12 +7,7 @@ import java.util.List; import java.util.Set; /** - *

* 会员奖金-奖金收益明细表(报单费) 服务类 - *

- * - * @author hzs - * @since 2022-11-17 */ public interface ICuMemberBonusDetailService extends IService { @@ -20,9 +15,6 @@ public interface ICuMemberBonusDetailService extends IService cuMemberBonusDetailList, Set memberIdSet); - - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusDetail 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 - */ - void insertCuMemberBonusDetail(CuMemberBonusDetail cuMemberBonusDetail); } 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 ee0a56b0..9143331f 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 @@ -7,12 +7,7 @@ import java.util.List; import java.util.Set; /** - *

* 会员奖金-拓展收益明细表 服务类 - *

- * - * @author hzs - * @since 2022-11-15 */ public interface ICuMemberBonusExpandService extends IService { @@ -20,9 +15,6 @@ public interface ICuMemberBonusExpandService extends IService cuMemberBonusExpandList, Set memberIdSet); - /** - * 批量插入会员奖金主表 - * - * @param cuMemberBonusExpandList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 - */ - void insertCuMemberBonusExpand(List cuMemberBonusExpandList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushHisService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushHisService.java index a2cf7cce..c487a70f 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushHisService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushHisService.java @@ -6,20 +6,8 @@ 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-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushService.java index 1783511e..eff98b3d 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberBonusPushService.java @@ -1,48 +1,28 @@ package com.hzs.bonus.bonus.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.bonus.bonus.param.TripleCycleListParam; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import java.util.List; import java.util.Set; /** - *

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

- * - * @author hzs - * @since 2022-11-10 */ public interface ICuMemberBonusPushService extends IService { /** * 删除会员奖金汇总表 + * * @param period 结算周期 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 11:54 */ void deleteCuMemberBonusPush(Integer period); /** * 批量插入会员直推奖 + * * @param cuMemberBonusPushList 会员奖金 - * @return: void - * @Author: sui q - * @Date: 2022/12/13 13:56 */ void batchInsertCuMemberBonusPush(List cuMemberBonusPushList, Set memberIdSet); - /** - * 插入会员直推奖 - * @param cuMemberBonusPush 直推奖金 - * @return: void - * @Author: sui q - * @Date: 2023/2/17 9:48 - */ - void insertCuMemberBonusPush(CuMemberBonusPush cuMemberBonusPush); - } 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 2a57871e..bad92ee9 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 @@ -24,13 +24,6 @@ public interface ICuMemberBonusService extends IService { */ List batchQueryCuMemberBonusSeq(Integer rowNum); - /** - * 根据查询条件查询每日奖金汇总 - * - * @param bonusParam 查询条件 - */ - List queryMemberBonusTotalVoByCondition(BonusParam bonusParam); - /** * 根据查询条件查询会员奖金 * @@ -111,14 +104,6 @@ public interface ICuMemberBonusService extends IService { */ List queryCuMemberBonus(int period, List cuMemberBonusList); - /** - * 根据国家、期间查询存在首购奖金的会员 - * - * @param period 期间 - * @param pkCountryList 国家 - */ - List queryExistsPurchaseBonusMember(Integer period, List pkCountryList); - /** * 更新奖金状态 * diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberRepeatBonusService.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberRepeatBonusService.java index f3163f75..7e07cb33 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberRepeatBonusService.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/ICuMemberRepeatBonusService.java @@ -6,20 +6,12 @@ import com.hzs.common.domain.member.bonus.CuMemberRepeatBonus; import java.util.List; /** - *

* 会员奖金-4-n碰次重算奖金表 服务类 - *

- * - * @author hzs - * @since 2024-07-23 */ public interface ICuMemberRepeatBonusService extends IService { /* - * @description: 批量插入重算奖金数据 - * @author: sui q - * @date: 2024/7/23 11:46 - * @param: null null + * 批量插入重算奖金数据 **/ void insertCuMemberRepeatBonus(List cuMemberRepeatBonusList); } 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 ec2be654..56c24b45 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 @@ -6,28 +6,17 @@ import com.hzs.common.domain.member.ext.CuMemberShareBonusExt; import com.hzs.bonus.bonus.param.CuMemberShareBonusParam; /** - *

* 会员奖金-分红奖金配置 服务类 - *

- * - * @author hzs - * @since 2023-07-03 */ public interface ICuMemberShareBonusService extends IService { /* - * @description: 保存会员分红奖金及明细 - * @author: sui q - * @date: 2023/7/3 14:04 - * @param: null null + * 保存会员分红奖金及明细 **/ void saveMemberShareBonus(CuMemberShareBonusParam cuMemberShareBonusParam); /* - * @description: 查询分红配置的参数 - * @author: sui q - * @date: 2023/7/3 15:24 - * @param: null null + * 查询分红配置的参数 **/ 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 cd39d1e3..3fa8eab4 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 @@ -5,32 +5,15 @@ import com.hzs.common.domain.member.bonus.CuMemberShareDetail; import com.hzs.common.domain.member.ext.CuMemberShareDetailExt; import java.util.List; -import java.util.Map; /** - *

* 会员奖金-分红奖金配置明细 服务类 - *

- * - * @author hzs - * @since 2023-07-03 */ public interface ICuMemberShareDetailService extends IService { /* - * @description: 更新分享明细 - * @author: sui q - * @date: 2023/7/3 14:11 - * @param: null null + * 更新分享明细 **/ void saveMemberShareBonus(List cuMemberShareDetailList); - /* - * @description: 根据期间查询奖衔设置的分红配置 - * key 国家+奖衔 明细 - * @author: sui q - * @date: 2023/8/11 15:35 - * @param: null null - **/ - Map queryCuMemberShareBonusByPeriod(Integer period); } 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 index 27e17fd8..e503836d 100644 --- 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 @@ -23,5 +23,4 @@ public interface ICuMemberSpeRetailService extends IService { int checkCuMemberActivate(String memberCode); - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusItemsServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusItemsServiceImpl.java index 8cb99f7a..1a11664e 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusItemsServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusItemsServiceImpl.java @@ -17,12 +17,7 @@ import java.util.Set; import java.util.stream.Collectors; /** - *

* 特殊商品分配ev奖金明细 服务实现类 - *

- * - * @author hzs - * @since 2024-10-30 */ @Service public class BdWaresBonusItemsServiceImpl extends ServiceImpl implements IBdWaresBonusItemsService { @@ -43,7 +38,7 @@ public class BdWaresBonusItemsServiceImpl extends ServiceImpl waresBonusItemsList, Long pkWaresBonus, Long userId) { UpdateWrapper updateWrapper = new UpdateWrapper<>(); - if(waresBonusItemsList != null && waresBonusItemsList.size() > 0) { + if (waresBonusItemsList != null && waresBonusItemsList.size() > 0) { Set itemIdList = waresBonusItemsList.stream().map(BdWaresBonusItems::getPkId).collect(Collectors.toSet()); updateWrapper.notIn(SystemFieldConstants.PK_ID, itemIdList); } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java index 71f16396..3ac12e16 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BdWaresBonusServiceImpl.java @@ -23,12 +23,7 @@ import java.util.Date; import java.util.List; /** - *

* 特殊商品分配奖金 服务实现类 - *

- * - * @author hzs - * @since 2024-10-30 */ @Service public class BdWaresBonusServiceImpl extends ServiceImpl implements IBdWaresBonusService { 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 4720fa98..2b9ca498 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 @@ -128,18 +128,6 @@ public class BonusGrantServiceImpl implements IBonusGrantService { publishBonus(cuMemberSettlePeriod); } - @Override - public void noPublishBonusByPeriod(Integer pkCountry, String settleDate) { - CuMemberSettlePeriodExt cuMemberSettlePeriod = getCuMemberSettlePeriod(pkCountry, settleDate); - if (EYesNo.YES.getIntValue() == cuMemberSettlePeriod.getIsPublish()) { - return; - } - // 更新期间表状态 - cuMemberSettlePeriod.setIsPublish(EYesNo.PROHIBIT.getIntValue()); - cuMemberSettlePeriod.setPublishDate(DateUtils.currentDateTime()); - iCuMemberSettlePeriodService.updateCuMemberSettlePeriodByDate(cuMemberSettlePeriod); - } - private CuMemberSettlePeriodExt getCuMemberSettlePeriod(Integer pkCountry, String settleDate) { CuMemberSettlePeriodExt cuMemberSettlePeriodByDate = iCuMemberSettlePeriodService.getCuMemberSettlePeriod(pkCountry, DateUtils.parseStringToDate(settleDate)); cuMemberSettlePeriodByDate.setPkModified(MagicNumberConstants.PK_ADMIN); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java index f4fd5354..bd55c4d9 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettleFirstPurchaseHandle.java @@ -10,25 +10,21 @@ import com.hzs.common.core.utils.DateUtils; import com.hzs.common.domain.bonus.BdBonusDeduct; import com.hzs.common.domain.bonus.BdBonusService; import com.hzs.common.domain.bonus.risk.CuMemberRiskControl; -import com.hzs.common.domain.member.base.CuAwardsControl; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.bonus.*; import com.hzs.common.domain.member.detail.CuMemberAssess; import com.hzs.common.domain.member.ext.CuBonusExpandExt; import com.hzs.common.domain.member.ext.CuMemberSettleExt; import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.system.config.BdAwards; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.*; -import com.hzs.system.sys.dto.BdCurrencyDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.math.BigDecimal; -import java.time.temporal.ChronoUnit; import java.util.*; import java.util.stream.Collectors; @@ -74,19 +70,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { return cuMemberBonusPushList; } - private BigDecimal computePushRangeBonus(CuMemberSettleExt targetMemberSettleExt, BigDecimal siVipBonus, - BigDecimal vipBonus, BigDecimal youBonus) { - BigDecimal pretaxIncome; - if (targetMemberSettleExt.getGradeValue() == EGrade.S_VIP.getValue()) { - pretaxIncome = siVipBonus; - } else if (targetMemberSettleExt.getGradeValue() == EGrade.VIP.getValue()) { - pretaxIncome = vipBonus; - } else { - pretaxIncome = youBonus; - } - return pretaxIncome; - } - /** * 计算某条订单的推荐奖金 @@ -150,13 +133,9 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { // 验证是不是固定值,固定值直接取比例或者值 if (bonusDirectDTO != null && ECalType.VALUE.getValue() == bonusDirectDTO.getCalType()) { cuMemberBonusPush.setCalType(bonusDirectDTO.getCalType()); -// cuMemberBonusPush.setRound(-1); -// cuMemberBonusPush.setSecond(0); // 值 cuMemberBonusPush.setCalValue(BigDecimal.ZERO); cuMemberBonusPush.setPretaxIncome(bonusDirectDTO.getBonusValue()); -// setBonusPushIncome(cuMemberSettleExtMap, bonusConfigDTO, saOrderExt, cuMemberBonus, cuMemberBonusPush); -// return cuMemberBonusPush; } else { // 三单循环 BonusDirectLoopDTO bonusDirectLoopDTO = bonusDirectLoopDtoMap.get(targetMemberSettleExt.getPkSettleCountry().toString() + recommendType + targetMemberSettleExt.getPkGrade()); @@ -266,9 +245,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { * @param firPurchaseOrderList 首单 * @param cuMemberBonusMap 所有计算出来的奖金汇总 * 计算拓展收益 - * @return: void - * @Author: sui q - * @Date: 2022/11/10 14:17 */ List calculateExpandBonus(Map cuMemberSettleExtMap, String settleDate, String settleTableName, BonusConfigDTO bonusConfigDTO, Map systemConfigMap, List firPurchaseOrderList, @@ -323,13 +299,7 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { } // 先准备值,准备好值后,开始计算,计算碰次 int touchNum = 0; -// boolean flag = Boolean.TRUE; for (CuMemberSettleExt cuMemberSettleExt : cuMemberSettleExtList) { -// if(MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(cuMemberSettleExt.getMemberCode())){ -// if(cuMemberTreeService.queryCuMemberUnderUmbrella(settleTableName, saOrderExt.getPkMember())) { -// flag = Boolean.FALSE; -// } -// } // 数据已经准备好了,肯定有值,map中是实际的值,先计算新增,然后根据新增结算计算碰次,list是为了存储碰次的顺序 CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(cuMemberSettleExt.getPkPlaceParent()); if (targetMemberSettleExt == null || ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || @@ -357,7 +327,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { targetMemberSettleExt.setABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getABalance(), saOrderExt.getUploadAchieve())); } targetMemberSettleExt.setRABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRABalance(), saOrderExt.getUploadAchieve())); -// } } else { // 右区 if (riskControlMap.containsKey(targetMemberSettleExt.getPkMember())) { @@ -371,24 +340,10 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { targetMemberSettleExt.setBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getBBalance(), saOrderExt.getUploadAchieve())); } targetMemberSettleExt.setRBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRBBalance(), saOrderExt.getUploadAchieve())); -// } } // 判断左右区是否有值,左右区有值有碰次 if (ComputeUtil.compareValue(targetMemberSettleExt.getABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getBBalance())) { // 国内量奖修改为考核不通过的不占用4-N,不算奖金 - // 验证是否验证考核 -// if(bdGrade.getFirstAssess() != null && EAssessmentType.REPURCHASE_ASSESS.getValue() == bdGrade.getFirstAssess()){ -// if (Objects.equals(CountryConstants.CHINA_COUNTRY, targetMemberSettleExt.getPkSettleCountry()) && !cuMemberAssessMap.containsKey(targetMemberSettleExt.getPkMember()) && -// EYesNo.YES.getIntValue() != targetMemberSettleExt.getPurchaseStatus()) { -// BigDecimal minAchieve = ComputeUtil.obtainMinAchieve(targetMemberSettleExt.getABalance(), targetMemberSettleExt.getBBalance()); -// targetMemberSettleExt.setABalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getABalance(), minAchieve)); -// targetMemberSettleExt.setBBalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getBBalance(), minAchieve)); -// }else{ -// touchNum++; -// } -// } else { -// touchNum++; -// } touchNum++; } // 判断左右区是否有值,左右区有值有碰次 @@ -483,209 +438,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { return cuMemberBonusExpandList; } - /** - * @param settleTableName 结算表 - * @param period 期间 - * @param settleDateStr 结算日期 - * @param bonusConfigDTO 参数 - * @param firPurchaseOrderList 订单列表 - * @param cuMemberBonusExpandList 量奖明细 - * @param cuMemberBonusMap 所有计算出来的奖金汇总 - * 计算辅导收益 - * @return: void - * @Author: sui q - * @Date: 2022/11/10 14:17 - */ - List calculateCoachBonus(Map cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO, - List firPurchaseOrderList, List cuMemberBonusExpandList, Integer period, Map cuMemberBonusMap, - Map cuAwardsControlMap, Map riskControlMap) { - Map saOrderExtMap = new HashMap<>(ComputeUtil.mapInitCapacity(firPurchaseOrderList.size())); - firPurchaseOrderList.forEach(saOrderExt -> - saOrderExtMap.put(saOrderExt.getPkId(), saOrderExt)); - return calculateCoachBonusOne(cuMemberSettleExtMap, settleTableName, settleDateStr, bonusConfigDTO, cuMemberBonusExpandList, period, cuMemberBonusMap, saOrderExtMap, cuAwardsControlMap, riskControlMap); - } - - /** - * 计算领导奖 - * - * @return: List - * @Author: sui q - * @Date: 2023/2/8 17:16 - */ - List calculateCoachBonusOne(Map cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO, List cuMemberBonusExpandList, Integer period, Map cuMemberBonusMap, - Map saOrderExtMap, Map cuAwardsControlMap, Map riskControlMap) { - List cuMemberBonusCoachList = new ArrayList<>(); - if (cuMemberBonusExpandList.size() > 0) { - Set expandMemberSet = getMemberExpandBonus(cuMemberBonusMap, cuMemberBonusExpandList); - List cuMemberSettleExtList = cuMemberTreeService.batchQueryCuMemberSettleParent(settleTableName, expandMemberSet); - // 初始化父类网体的值 - getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); - List queryMemberList = getQueryMemberSettleExtList(cuMemberSettleExtMap, cuMemberSettleExtList); - // 获取复购考核结果 - Map cuMemberAssessMap = getLongCuMemberAssessMap(settleDateStr, queryMemberList); - // 开始计算辅导奖,往上找10代血缘,判断血缘的奖衔是否>= 5的倍数 - Map bonusIdSettleMap = getMemberExpandBonus(cuMemberSettleExtMap); - for (CuMemberBonusExpand cuMemberBonusExpand : cuMemberBonusExpandList) { - // 国内没有领导奖 - if (cuMemberBonusExpand.getPkCountry().equals(CountryConstants.CHINA_COUNTRY)) { - continue; - } - List coachBonusList = calculateBonusCoach(cuMemberSettleExtMap, bonusConfigDTO, period, cuMemberBonusMap, saOrderExtMap, cuMemberAssessMap, bonusIdSettleMap, cuMemberBonusExpand, cuAwardsControlMap, riskControlMap); - if (coachBonusList.size() > 0) { - cuMemberBonusCoachList.addAll(coachBonusList); - } - } - } - return cuMemberBonusCoachList; - } - - /** - * 计算领导奖 - * - * @return: List - * @Author: sui q - * @Date: 2023/2/8 17:16 - */ - private List calculateBonusCoach(Map cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, Map saOrderExtMap, Map cuMemberAssessMap, Map bonusIdSettleMap, - CuMemberBonusExpand cuMemberBonusExpand, Map cuAwardsControlMap, Map riskControlMap) { - CuMemberSettleExt sourceMemberSettleExt = bonusIdSettleMap.get(cuMemberBonusExpand.getPkBonus()); - Long pkMember = cuMemberSettleExtMap.get(cuMemberBonusExpand.getPkBonus()).getPkParent(); - // 获得量奖的人往上找10代血缘 - // 用于回写血缘总共多少代 - List backMemberBonusCoachList = new ArrayList<>(); - int coachGeneration = 0; - for (int i = MagicNumberConstants.BLOOD_GENERATION_START; i <= MagicNumberConstants.BLOOD_GENERATION_END; i++) { - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(pkMember); - if (targetMemberSettleExt == null) { - break; - } - pkMember = targetMemberSettleExt.getPkParent(); - if (ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus()) { - continue; - } - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue())) { - continue; - } - SaOrderExt saOrderExt = saOrderExtMap.get(cuMemberBonusExpand.getPkOrder()); - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, targetMemberSettleExt); - BdAwards awardsCouch = getBdAwards(bonusConfigDTO, targetMemberSettleExt, cuAwardsControlMap); - // 判断是否有奖金 - if (awardsCouch.getAwardsValue() >= MagicNumberConstants.BLOOD_GENERATION_SERIES * i) { - BdAwards coachAward = bonusConfigDTO.getAwardsValueMap().get(targetMemberSettleExt.getPkSettleCountry().toString() + ERangeType.AWARDS.getValue() + MagicNumberConstants.BLOOD_GENERATION_SERIES * i); - BigDecimal awardCalRadio = BigDecimal.ZERO; - if (coachAward != null) { - awardCalRadio = coachAward.getCoachRatio(); - } - // 判断会员状态 - CuMemberBonusCoach cuMemberBonusCoach = getCuMemberBonusCoach(bonusConfigDTO, cuMemberBonusExpand, i, targetMemberSettleExt, awardCalRadio); - // 正常状态的辅导奖需要判断复购考核,复购考核不通过的状态变为烧伤 - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus() && - EYesNo.NO.getIntValue() == targetMemberSettleExt.getPurchaseStatus()) { - // 需要复购考核的 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(targetMemberSettleExt.getPkMember()); - if (cuMemberAssess == null) { - cuMemberBonusCoach.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - } - // K值设置 - if (riskControlMap.containsKey(cuMemberBonus.getPkMember())) { - Integer generation = riskControlMap.get(cuMemberBonus.getPkMember()).getCoachGeneration(); - if (generation < i) { - cuMemberBonusCoach.setIncomeStatus(EBonusIncomeStatus.RISK_CONTROL.getValue()); - } - } - // 判断考核状态,是否考核通过 - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusCoach, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - coachRemark(saOrderExt, cuMemberBonusCoach, sourceMemberSettleExt, targetMemberSettleExt); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusCoach.getIncomeStatus()) { - cuMemberBonus.setCoachIncome(ComputeUtil.computeAdd(cuMemberBonus.getCoachIncome(), cuMemberBonusCoach.getPretaxIncome())); - setFirstPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusCoach); - } - backMemberBonusCoachList.add(cuMemberBonusCoach); - } - coachGeneration = i; - } - return handleCoachRemark(backMemberBonusCoachList, coachGeneration); - } - - /** - * 判断是否是服务中心,服务中心算主任 - * - * @param bonusConfigDTO 奖金参数设置 - * @param targetMemberSettleExt 父级 - */ - private BdAwards getBdAwards(BonusConfigDTO bonusConfigDTO, CuMemberSettleExt targetMemberSettleExt, Map cuAwardsControlMap) { - return getAwardsCouch(bonusConfigDTO, targetMemberSettleExt, cuAwardsControlMap); -// BdAwards awardsCouch = getAwardsCouch(bonusConfigDTO, targetMemberSettleExt, cuAwardsControlMap); - // 判断是否有奖衔,没有奖衔判断是否是服务中心,服务中心算主任 -// if (EAwards.MEMBER.getValue() == awardsCouch.getAwardsValue() && ERegistrationAuthority.SERVICE.getValue() == targetMemberSettleExt.getRegisterAuthority()) { -// awardsCouch.setAwardsValue(EAwards.HEADER.getValue()); -// // 获取主任对应的比例 -// BdAwards directorAwardsCouch = getDirectorAwardsCouch(bonusConfigDTO, targetMemberSettleExt); -// // 塞一个临时奖衔,下次就不用在计算一次了 -// if(directorAwardsCouch != null) { -// targetMemberSettleExt.setPkAwards(directorAwardsCouch.getPkId()); -// awardsCouch.setCoachRatio(directorAwardsCouch.getCoachRatio()); -// awardsCouch.setGlobalIntegral(directorAwardsCouch.getGlobalIntegral()); -// awardsCouch.setCarAwardPoints(directorAwardsCouch.getCarAwardPoints()); -// awardsCouch.setAbonusRatio(directorAwardsCouch.getAbonusRatio()); -// return directorAwardsCouch; -// } -// } -// return awardsCouch; - } - - private CuMemberBonusCoach getCuMemberBonusCoach(BonusConfigDTO bonusConfigDTO, CuMemberBonusExpand cuMemberBonusExpand, - int i, CuMemberSettleExt targetMemberSettleExt, BigDecimal awardCalRadio) { - CuMemberBonusCoach cuMemberBonusCoach = CuMemberBonusCoach.builder() - .pkBonus(targetMemberSettleExt.getPkMember()) - .pkOrder(cuMemberBonusExpand.getPkOrder()) - .pkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.COACHING_INCOME.getValue())) - .calType(ECalType.RATIO.getValue()) - .incomeStatus(cuMemberBonusExpand.getIncomeStatus()) - .calAchieve(cuMemberBonusExpand.getPretaxIncome()) - .currentGeneration(i) - // 计算比例 - .calValue(awardCalRadio) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .pretaxIncome(ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getPretaxIncome(), awardCalRadio)) - .coachNoCapping(ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getExpandNoCapping(), awardCalRadio)) - .coachCapping(ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getExpandCapping(), awardCalRadio)) - .coachNormalHalf(ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getExpandNormalHalf(), awardCalRadio)) - .coachNormalReal(ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getExpandNormalReal(), awardCalRadio)) - .build(); - cuMemberBonusCoach.setPkCountry(targetMemberSettleExt.getPkSettleCountry()); - cuMemberBonusCoach.setPkCreator(MagicNumberConstants.PK_ADMIN); - if (EExpireStatus.TERMINATED.getValue() == targetMemberSettleExt.getExpireStatus()) { - cuMemberBonusCoach.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - return cuMemberBonusCoach; - } - - /** - * @param backMemberBonusCoachList 临时记录辅导奖列表 - * @param i 第几代 - * 处理拓展表备注 - * @return: void - * @Author: sui q - * @Date: 2022/11/17 18:02 - */ - private List handleCoachRemark(List backMemberBonusCoachList, int i) { - List cuMemberBonusCoachList = new ArrayList<>(); - for (CuMemberBonusCoach cuMemberBonusCoach : backMemberBonusCoachList) { - cuMemberBonusCoach.setCoachGeneration(i); - cuMemberBonusCoach.setRemark(cuMemberBonusCoach.getRemark().replace("#", cuMemberBonusCoach.getCoachGeneration().toString())); - cuMemberBonusCoachList.add(cuMemberBonusCoach); - } - return cuMemberBonusCoachList; - } - /** * 计算报单服务费 * @@ -741,13 +493,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { } CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, targetMemberSettleExt); BdBonusService bdBonusService = bonusConfigDTO.getBonusServiceMap().get(targetMemberSettleExt.getPkSettleCountry().toString() + EServiceType.SUBSIDY.getValue()); -// if (bdBonusService.getAssessmentType() != null && EAssessmentType.REPURCHASE_ASSESS.getValue() == bdBonusService.getAssessmentType()) { -// // 复购考核不通过,不存在报单服务费 -// boolean flag = cuMemberAssessMap == null || !cuMemberAssessMap.containsKey(targetMemberSettleExt.getPkMember()); -// if (Objects.equals(CountryConstants.CHINA_COUNTRY, targetMemberSettleExt.getPkSettleCountry()) && flag) { -// return null; -// } -// } // 服务补贴奖金明细 CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrderExt, targetMemberSettleExt, cuMemberBonus); BigDecimal serviceRadio = bdBonusService.getServiceRadio(); @@ -772,278 +517,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { return cuMemberBonusDetail; } - - /** - * 计算全球积分车奖积分 - */ - List calculateGlobalCarBonusOne(Map cuMemberSettleExtMap, String settleTableName, String settleDateStr, - BonusConfigDTO bonusConfigDTO, List cuMemberBonusList, - Integer period, Map cuMemberBonusMap) { - List cuMemberBonusDetailList = new ArrayList<>(); - if (cuMemberBonusList != null && cuMemberBonusList.size() > 0) { - Set memberSet = new HashSet<>(); - cuMemberBonusList.forEach(cuMemberBonus -> - memberSet.add(cuMemberBonus.getPkMember())); - List cuMemberSettleExtList = cuMemberTreeService.batchQueryCuMemberSettleParent(settleTableName, memberSet); - // 获取复购考核结果 - Map cuMemberAssessMap = getLongCuMemberAssessMap(settleDateStr, cuMemberSettleExtList); - // 初始化父类网体的值 - getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); - // 开始计算全球积分车奖积分,往上找10代血缘,判断血缘的奖衔是否>= 5的倍数 - for (CuMemberBonus cuMemberBonus : cuMemberBonusList) { -// List bonusDetailList = calculateGlobalCarBonusDetail(cuMemberSettleExtMap, bonusConfigDTO, period, cuMemberBonusMap, cuMemberBonus, EBonusItems.GLOBAL_POINTS.getValue(), cuMemberAssessMap); -// if (bonusDetailList.size() > 0) { -// cuMemberBonusDetailList.addAll(bonusDetailList); -// } -// List carBonusDetailList = calculateGlobalCarBonusDetail(cuMemberSettleExtMap, bonusConfigDTO, period, cuMemberBonusMap, cuMemberBonus, EBonusItems.CAR_BONUS_POINTS.getValue(), cuMemberAssessMap); -// if (carBonusDetailList.size() > 0) { -// cuMemberBonusDetailList.addAll(carBonusDetailList); -// } - } - } - return cuMemberBonusDetailList; - } - - /** - * 计算全球积分车奖积分 - */ - List calculateGlobalCarBonusDetail(Map cuMemberSettleExtMap, - BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, CuMemberBonus sourceMemberBonus, - Integer incomeType, Map cuMemberAssessMap) { - List cuMemberBonusDetailList = new ArrayList<>(); - CuMemberSettleExt sourceMemberSettleExt = cuMemberSettleExtMap.get(sourceMemberBonus.getPkMember()); - if (sourceMemberSettleExt == null) { - return cuMemberBonusDetailList; - } - Long pkMember = sourceMemberSettleExt.getPkParent(); - // 获得量奖的人往上找10代血缘 - BigDecimal shareBonus = ComputeUtil.computeAddNum(sourceMemberBonus.getDirectIncome(), sourceMemberBonus.getExpandIncome(), - sourceMemberBonus.getCoachIncome(), sourceMemberBonus.getShareIncome()); - Map cuAwardsControlMap = new HashMap<>(10); - Map currencyDtoMap = bonusConfigDTO.getCurrencyDtoMap(); - for (int i = MagicNumberConstants.BLOOD_GENERATION_START; i <= MagicNumberConstants.BLOOD_GENERATION_END; i++) { - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(pkMember); - if (targetMemberSettleExt == null) { - break; - } -// if (EBonusItems.GLOBAL_POINTS.getValue() == incomeType) { -// if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.GLOBAL_POINTS.getValue())) { -// continue; -// } -// } else { -//// if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.CAR_BONUS_POINTS.getValue())) { -//// continue; -//// } -// } - if (!targetMemberSettleExt.getPkSettleCountry().equals(sourceMemberBonus.getPkCountry())) { - continue; - } - if (ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus()) { - continue; - } - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), incomeType)) { - continue; - } - SaOrder saOrder = SaOrder.builder().pkRate(targetMemberSettleExt.getPkRate()).build(); - saOrder.setPkCountry(targetMemberSettleExt.getPkCountry()); - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrder, targetMemberSettleExt); - BdAwards awardsCouch = getBdAwards(bonusConfigDTO, targetMemberSettleExt, cuAwardsControlMap); - // 判断是否有奖金 - if (awardsCouch.getAwardsValue() >= MagicNumberConstants.BLOOD_GENERATION_SERIES * i) { - BdAwards coachAward = bonusConfigDTO.getAwardsValueMap().get(targetMemberSettleExt.getPkSettleCountry().toString() + ERangeType.AWARDS.getValue() + MagicNumberConstants.BLOOD_GENERATION_SERIES * i); - BigDecimal globalIntegral = BigDecimal.ZERO; - BigDecimal carAwardPoints = BigDecimal.ZERO; - if (coachAward != null) { - globalIntegral = coachAward.getGlobalIntegral(); - carAwardPoints = coachAward.getCarAwardPoints(); - } - CuMemberBonusDetail cuMemberBonusDetail = CuMemberBonusDetail.builder() - .pkBonus(cuMemberBonus.getPkId()) - .pkOrder(0L) - .calType(ECalType.RATIO.getValue()) - .incomeStatus(targetMemberSettleExt.getIncomeStatus()) - .pretaxIncome(BigDecimal.ZERO) - .incomeTax(BigDecimal.ZERO) - .realIncome(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .calAchieve(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusDetail.setPkCountry(targetMemberSettleExt.getPkSettleCountry()); - cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - // 计算比例 -// String msg = BonusMsgConstants.GLOBAL_INTEGRAL; -// if (EBonusItems.GLOBAL_POINTS.getValue() == incomeType) { -// cuMemberBonusDetail.setCalValue(globalIntegral); -// } else { -// cuMemberBonusDetail.setCalValue(carAwardPoints); -// msg = BonusMsgConstants.CAR_AWARD_POINTS; -// } - cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), incomeType)); - // 推荐+拓展+领导+分红 * 比例 - cuMemberBonusDetail.setPretaxIncome(ComputeUtil.computeBonusMultiply(shareBonus, cuMemberBonusDetail.getCalValue())); - // 收益占比 - BigDecimal exchangeRate = BigDecimal.ONE; - if (currencyDtoMap.containsKey(cuMemberBonus.getPkCountry().toString() + cuMemberBonus.getPkRate())) { - exchangeRate = currencyDtoMap.get(cuMemberBonus.getPkCountry().toString() + cuMemberBonus.getPkRate()).getInExchangeRate(); - } - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusDetail, shareBonus, exchangeRate); -// globalShareRemark(cuMemberBonusDetail, msg); -// if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { -// if (EBonusItems.GLOBAL_POINTS.getValue() == incomeType) { -// cuMemberBonus.setGlobalPoints(ComputeUtil.computeAdd(cuMemberBonus.getGlobalPoints(), cuMemberBonusDetail.getPretaxIncome())); -// } else { -// cuMemberBonus.setCarAwardPoints(ComputeUtil.computeAdd(cuMemberBonus.getCarAwardPoints(), cuMemberBonusDetail.getPretaxIncome())); -// } -// setBonusDeduct(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); -//// cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), cuMemberBonusDetail.getRealIncome())); -// } - // 判断会员状态 - // 正常状态的辅导奖需要判断复购考核,复购考核不通过的状态变为烧伤 - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus() && - EYesNo.NO.getIntValue() == targetMemberSettleExt.getPurchaseStatus()) { - // 需要复购考核的 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(targetMemberSettleExt.getPkMember()); - if (cuMemberAssess == null) { - cuMemberBonusDetail.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - } - pkMember = targetMemberSettleExt.getPkParent(); - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } - } - return cuMemberBonusDetailList; - } - - /** - * 计算报单服务费 - * 车奖 全球分红 有奖衔的会员,复购考核通过的,根据对应奖衔可拿代数配置拿下面代数的(推荐+拓展+领导+分红)奖金合计为基数的相应代数的比率(配置值) - * 跟领导奖一样的算法,不算启动卡 - * - * @param settleDateStr 结算日期 - * @param period 期间 - */ - List calculateShareBonus(String settleDateStr, BonusConfigDTO bonusConfigDTO, Integer period, - Map cuMemberBonusMap, Map cuAwardsControlMap) { - Date settleDate = DateUtils.parseStringToDate(settleDateStr); - String currentFirstDate = DateUtils.currentMonthFirstDateStr(settleDate); - String beforeMonthLastDate = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, currentFirstDate); - // 查询上月最后一天 - Integer beforeMonthLastPeriod = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(beforeMonthLastDate).getPkId(); - String settleTableName = TableNameConstants.CU_MEMBER_SETTLE + beforeMonthLastPeriod; - String rangeTableName = TableNameConstants.CU_MEMBER_RANGE + beforeMonthLastPeriod; - // 查询上月第一天 - String beforeMonthFirstDate = DateUtils.beforeMonthFirstDateStr(settleDate); - Integer beforeMonthFirstPeriod = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(beforeMonthFirstDate).getPkId(); - // 查询上月最后一天会员等级达到奖衔的会员 - Integer assessPeriod = getCuMemberSettlePeriodService().getCuMemberSettlePeriodByDate(currentFirstDate).getPkId(); - String assessTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getYear(settleDateStr); - // 获取结算日期的第一天的日期 - // 查询复购考核结果 - List cuMemberSettleExtList = cuMemberTreeService.queryMemberSettleByAwards(settleTableName, rangeTableName, beforeMonthFirstPeriod, beforeMonthLastPeriod); - Map cuMemberAssessMap = getCuMemberAssessService().queryCuMemberAssessByMember(assessTableName, assessPeriod, EAssessmentType.REPURCHASE_ASSESS.getValue(), cuMemberSettleExtList); -// List cuMemberAssessList = getCuMemberAssessService().queryCuMemberShareAssess(assessTableName, assessPeriod); - - List cuMemberBonusDetailList = new ArrayList<>(); - for (CuMemberSettleExt targetMemberSettleExt : cuMemberSettleExtList) { - SaOrder saOrder = SaOrder.builder().pkId(0L).orderAchieve(BigDecimal.ZERO).build(); - saOrder.setPkCountry(targetMemberSettleExt.getPkSettleCountry()); - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrder, targetMemberSettleExt); - CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrder, targetMemberSettleExt, cuMemberBonus); - cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.DIVIDEND_INCOME.getValue())); - // 获取计算比例,根据奖衔获取 - // 计算比例 - cuMemberBonusDetail.setCalAchieve(targetMemberSettleExt.getRealIncomeTotal()); - cuMemberBonusDetail.setCalValue(targetMemberSettleExt.getAbonusRatio()); - cuMemberBonusDetail.setPretaxIncome(ComputeUtil.computeBonusMultiply(targetMemberSettleExt.getRealIncomeTotal(), targetMemberSettleExt.getAbonusRatio())); - shareRemark(cuMemberBonusDetail, settleDateStr); - BdBonusDeduct bdBonusDeduct = bonusConfigDTO.getBonusDeductsMap().get(cuMemberBonusDetail.getPkBonusItems()); - cuMemberBonusDetail.setIncomeTax(BigDecimal.ZERO); - cuMemberBonusDetail.setRealIncome(ComputeUtil.computeSubtract(cuMemberBonusDetail.getPretaxIncome(), cuMemberBonusDetail.getIncomeTax())); - cuMemberBonusDetail.setPkCountry(targetMemberSettleExt.getPkSettleCountry()); - cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus() - && EYesNo.NO.getIntValue() == targetMemberSettleExt.getPurchaseStatus()) { - // 需要复购考核的 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(targetMemberSettleExt.getPkMember()); - if (cuMemberAssess == null) { - cuMemberBonusDetail.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - } - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { - cuMemberBonus.setShareIncome(ComputeUtil.computeAdd(cuMemberBonus.getShareIncome(), cuMemberBonusDetail.getPretaxIncome())); - setFirstPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); - } - cuMemberBonusDetailList.add(cuMemberBonusDetail); - } - // 查询月初分红考核数据,只查询出有奖衔的且分红考核通过的 - // 查询分红考核的配置 -// Map cuMemberShareDetailMap = cuMemberShareDetailService.queryCuMemberShareBonusByPeriod(assessPeriod); -// if (CollectionUtil.isNotEmpty(cuMemberAssessList)) { -// Set serviceMemberSet = new HashSet<>(); -// cuMemberAssessList.forEach(cuMemberAssess -> serviceMemberSet.add(cuMemberAssess.getPkMember())); -// List cuMemberSettleExtList = cuMemberTreeService.batchQueryMemberSettleByMemberPk(settleTableName, serviceMemberSet); -// // 初始化父类网体的值 -// Map cuMemberSettleExtMap = new HashMap<>(); -// getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); -// // 验证国家是否有奖金 -// cuMemberAssessList.forEach(cuMemberAssess -> { -// if (validatePkBonusItems(bonusConfigDTO, cuMemberAssess.getPkCountry(), EBonusItems.DIVIDEND_INCOME.getValue()) /*|| cuMemberAssess.getPkCountry().equals(CountryConstants.CHINA_COUNTRY)*/) { -// return; -// } -// CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(cuMemberAssess.getPkMember()); -// // 处理pk_rate -// SaOrder saOrder = SaOrder.builder() -// .pkId(0L) -// .orderAchieve(BigDecimal.ZERO) -// .build(); -// saOrder.setPkCountry(targetMemberSettleExt.getPkCountry()); -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrder, targetMemberSettleExt); -// // 分红奖金明细 -// CuMemberBonusDetail cuMemberBonusDetail = getCuMemberBonusDetail(saOrder, targetMemberSettleExt, cuMemberBonus); -// cuMemberBonusDetail.setPkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.DIVIDEND_INCOME.getValue())); -// // 获取计算比例,根据奖衔获取 -// // 计算比例 -// if (cuMemberShareDetailMap.containsKey(targetMemberSettleExt.getPkSettleCountry().toString() + targetMemberSettleExt.getPkAwards())) { -// // 获取奖衔 -// Integer pkAwards = targetMemberSettleExt.getPkAwards(); -// Long pkMember = targetMemberSettleExt.getPkMember(); -// if (cuAwardsControlMap.containsKey(pkMember)) { -// if (cuAwardsControlMap.get(pkMember).getDividendAward() != null) { -// pkAwards = cuAwardsControlMap.get(pkMember).getDividendAward(); -// } -// } -// CuMemberShareDetail cuMemberShareDetail = cuMemberShareDetailMap.get(targetMemberSettleExt.getPkSettleCountry().toString() + pkAwards); -// if (cuMemberShareDetail == null) { -// return; -// } -// cuMemberBonusDetail.setCalValue(cuMemberShareDetail.getRealShareIncome()); -// } else { -// cuMemberBonusDetail.setCalValue(BigDecimal.ZERO); -// } -// cuMemberBonusDetail.setPretaxIncome(cuMemberBonusDetail.getCalValue()); -// shareRemark(cuMemberBonusDetail, settleDateStr); -// BdBonusDeduct bdBonusDeduct = bonusConfigDTO.getBonusDeductsMap().get(cuMemberBonusDetail.getPkBonusItems()); -// BigDecimal incomeTax = BigDecimal.ZERO; -// if (bdBonusDeduct != null) { -// incomeTax = ComputeUtil.computeBonusMultiply(cuMemberBonusDetail.getPretaxIncome(), ComputeUtil.computeAdd(bdBonusDeduct.getPlatformRatio(), bdBonusDeduct.getBackRatio())); -// } -// cuMemberBonusDetail.setIncomeTax(incomeTax); -// cuMemberBonusDetail.setRealIncome(ComputeUtil.computeSubtract(cuMemberBonusDetail.getPretaxIncome(), cuMemberBonusDetail.getIncomeTax())); -// cuMemberBonusDetail.setPkCountry(targetMemberSettleExt.getPkSettleCountry()); -// cuMemberBonusDetail.setPkCreator(MagicNumberConstants.PK_ADMIN); -// if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusDetail.getIncomeStatus()) { -// cuMemberBonus.setShareIncome(ComputeUtil.computeAdd(cuMemberBonus.getShareIncome(), cuMemberBonusDetail.getPretaxIncome())); -// setFirstPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusDetail); -// } -// cuMemberBonusDetailList.add(cuMemberBonusDetail); -// }); -// } - return cuMemberBonusDetailList; - } - /** * 计算量碰 * @@ -1062,15 +535,6 @@ public class BonusSettleFirstPurchaseHandle extends BonusSettleHandle { BonusConfigDTO bonusConfigDTO, Map systemConfigMap, List cuMemberBonusExpandList, SaOrderExt saOrderExt, int touchNum, int i, CuMemberSettleExt sourceMemberSettleExt, CuMemberSettleExt targetMemberSettleExt, BdGrade bdGrade, BigDecimal countryExpandRatio, BigDecimal addTouch, Map cuMemberAssessMap) { Integer pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.EXPANSION_INCOME.getValue()); - // 验证封顶方式 1=日 2=周,若是周的话需要获取 周奖金 -// BigDecimal weekExpandIncome = BigDecimal.ZERO; -// if (systemConfigMap.containsKey(targetMemberSettleExt.getPkSettleCountry().toString() + ESystemConfig.EXPAND_CAP_METHOD.getKey())) { -// String expandCapMethod = systemConfigMap.get(targetMemberSettleExt.getPkSettleCountry() + ESystemConfig.EXPAND_CAP_METHOD.getKey()); -// if (Objects.equals(expandCapMethod, Integer.toString(EExpandCapMethod.WEEK_SETTLE.getValue())) && -// weekMemberBonusMap.containsKey(targetMemberSettleExt.getPkMember())) { -// weekExpandIncome = weekMemberBonusMap.get(targetMemberSettleExt.getPkMember()).getExpandIncome(); -// } -// } BigDecimal gradeExpandRatio = bdGrade.getExpandRatio(); // 验证受益人等级 CuMember cuMember = iCuMemberService.getMember(targetMemberSettleExt.getMemberCode()); 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 22b3779e..9193fecc 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,11 +1,9 @@ package com.hzs.bonus.bonus.service.impl; -import com.hzs.bonus.achieve.param.MemberAchieveParam; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.bonus.detail.service.ICuMemberAssessService; import com.hzs.common.core.constant.BonusFieldConstants; -import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.MagicNumberConstants; import com.hzs.common.core.constant.TableNameConstants; import com.hzs.common.core.constant.msg.BonusMsgConstants; @@ -30,7 +28,6 @@ import com.hzs.system.base.ICurrencyServiceApi; import com.hzs.system.base.dto.CurrencyDTO; import com.hzs.system.config.dto.BonusConfigDTO; import com.hzs.system.config.dto.BonusExpandDTO; -import com.hzs.system.config.dto.RangeDTO; import com.hzs.system.sys.dto.BdCurrencyDTO; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; @@ -52,14 +49,6 @@ public abstract class BonusSettleHandle { @Autowired private ICuMemberAssessService cuMemberAssessService; - public ICuMemberSettlePeriodService getCuMemberSettlePeriodService() { - return cuMemberSettlePeriodService; - } - - public ICuMemberAssessService getCuMemberAssessService() { - return cuMemberAssessService; - } - /** * 获取等级对应的拓展奖配置 * @@ -70,44 +59,11 @@ public abstract class BonusSettleHandle { return bonusConfigDTO.getGradeMap().get(memberSettleExt.getPkSettleCountry().toString() + "_" + memberSettleExt.getPkGrade()); } - /** - * 获取主任奖衔值对应的辅导奖配置 - * - * @param bonusConfigDTO 奖金参数汇总 - * @param memberSettleExt 会员 - */ - protected BdAwards getDirectorAwardsCouch(BonusConfigDTO bonusConfigDTO, CuMemberSettleExt memberSettleExt) { - return bonusConfigDTO.getAwardsValueMap().get(memberSettleExt.getPkSettleCountry().toString() + ERangeType.AWARDS.getValue() + EAwards.HEADER.getValue()); - } - - /** - * 获取奖衔对应的辅导奖配置 - * - * @param bonusConfigDTO 奖金参数汇总 - * @param memberSettleExt 会员 - */ - protected BdAwards getAwardsCouch(BonusConfigDTO bonusConfigDTO, CuMemberSettleExt memberSettleExt, Map cuAwardsControlMap) { - Integer pkAwards = getPkRealAwards(memberSettleExt.getPkMember(), memberSettleExt.getPkAwards(), cuAwardsControlMap); - return bonusConfigDTO.getAwardsMap().get(memberSettleExt.getPkSettleCountry().toString() + ERangeType.AWARDS.getValue() + pkAwards); - } - private Integer getPkRealAwards(Long pkMember, Integer pkAwards, Map cuAwardsControlMap) { if (cuAwardsControlMap.containsKey(pkMember)) { if (cuAwardsControlMap.get(pkMember).getMentoringAward() != null) { pkAwards = cuAwardsControlMap.get(pkMember).getMentoringAward(); } -// int giveRealAwards = EAwards.MEMBER.getValue(); -// int pkControlAwards = EAwards.MANAGER.getEnable(); -// if(cuAwardsControlMap.get(pkMember).getRealAwards() != null) { -// giveRealAwards = cuAwardsControlMap.get(pkMember).getRealAwards(); -// } -// if(cuAwardsControlMap.get(pkMember).getMentoringAward() != null) { -// pkControlAwards = cuAwardsControlMap.get(pkMember).getExtremeAwards(); -// } -// if (pkAwards <= giveRealAwards && pkAwards < pkControlAwards) { -// // 实际奖衔 <= 赠与奖衔时,用实际奖衔和集成奖衔取大的 -// pkAwards = pkControlAwards; -// } } return pkAwards; } @@ -137,31 +93,6 @@ public abstract class BonusSettleHandle { return countryExpandRatio; } - /** - * 获得国家对应的4-n参数比例 - * - * @param bonusConfigDTO 奖金配置汇总 - * @param memberSettleExt 会员 - * @param endTouch 4-n的次数 - * @param bdGrade 等级 - */ - protected BigDecimal getCountryRepurchaseExpand(BonusConfigDTO bonusConfigDTO, CuMemberSettleExt memberSettleExt, Integer endTouch, BdGrade bdGrade, BigDecimal addTouch, BigDecimal editExpandRatio) { - BonusExpandDTO bonusExpand = bonusConfigDTO.getBonusExpandMap().get(memberSettleExt.getPkSettleCountry()); - BigDecimal totalTouch = ComputeUtil.computeAdd(BigDecimal.valueOf(endTouch), addTouch); - BigDecimal expandRatio = bonusExpand.getExpandRatio(); - if (memberSettleExt.getPkVertex() != null && memberSettleExt.getPkVertex().equals(377L)) { - expandRatio = BigDecimal.valueOf(13); - } else if (ComputeUtil.compareValue(editExpandRatio)) { - expandRatio = editExpandRatio; - } - // 验证是否是爱美视团队 - BigDecimal countryExpandRatio = ComputeUtil.computeDivide(expandRatio, BigDecimal.valueOf(endTouch)); - if (ComputeUtil.compareValue(countryExpandRatio, bdGrade.getRepurchaseRatio())) { - return bdGrade.getRepurchaseRatio(); - } - return countryExpandRatio; - } - /** * 获得奖项主键,验证该国是否有该奖项 * @@ -187,40 +118,6 @@ public abstract class BonusSettleHandle { return bonusConfigDTO.getBonusItemsExtMap().get(pkCountry.toString() + bonusItems).getPkId(); } - /** - * 获得有量奖的会员 - * - * @param cuMemberBonusMap 奖金汇总表 - * @param cuMemberBonusExpandList 量奖明细 - */ - protected Set getMemberExpandBonus(Map cuMemberBonusMap, List cuMemberBonusExpandList) { - Map pkMemberSettleMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberBonusMap.size())); - cuMemberBonusMap.forEach((key, cuMemberBonus) -> { - // 判断 cuMemberSettleExtMap中这个人是否是免考,免考的不查询考核是否通过,过滤数据 - pkMemberSettleMap.put(cuMemberBonus.getPkId(), cuMemberBonus); - }); - Set expandMemberSet = new HashSet<>(); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - // 只查询有量奖的人的考核记录, 国内没有领导奖 - if (!cuMemberBonusExpand.getPkCountry().equals(CountryConstants.CHINA_COUNTRY) && pkMemberSettleMap.containsKey(cuMemberBonusExpand.getPkBonus())) { - expandMemberSet.add(pkMemberSettleMap.get(cuMemberBonusExpand.getPkBonus()).getPkMember()); - } - }); - return expandMemberSet; - } - - /** - * 获得有量奖的会员 - * - * @param cuMemberSettleExtMap 奖金汇总表 - */ - protected Map getMemberExpandBonus(Map cuMemberSettleExtMap) { - Map pkMemberSettleMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberSettleExtMap.size())); - cuMemberSettleExtMap.forEach((key, cuMemberSettleExt) -> - pkMemberSettleMap.put(cuMemberSettleExt.getPkMember(), cuMemberSettleExt)); - return pkMemberSettleMap; - } - /** * 记录需要修改的会员结算表数据, 安置的 * @@ -293,54 +190,6 @@ public abstract class BonusSettleHandle { }); } - /** - * 记录需要修改的会员结算表数据, 安置的 - * - * @param cuMemberSettleExtMap 会员结算 - * @param cuMemberSettleExtList 查询出来的结算数据 - */ - protected void getSecondMemberSettle(Map cuMemberSettleExtMap, List cuMemberSettleExtList) { - cuMemberSettleExtList.forEach(cuMemberSettleExt -> { - if (cuMemberSettleExtMap.containsKey(cuMemberSettleExt.getPkMember())) { - CuMemberSettleExt memberSettleExt = cuMemberSettleExtMap.get(cuMemberSettleExt.getPkMember()); - if (memberSettleExt.getPkParent() == null) { - memberSettleExt.setPkParent(cuMemberSettleExt.getPkParent()); - } - if (memberSettleExt.getPkPlaceParent() == null) { - memberSettleExt.setPkPlaceParent(cuMemberSettleExt.getPkPlaceParent()); - } - if (memberSettleExt.getPlaceDept() == null) { - memberSettleExt.setPlaceDept(cuMemberSettleExt.getPlaceDept()); - } - if (memberSettleExt.getPkGrade() == null) { - memberSettleExt.setPkGrade(cuMemberSettleExt.getPkGrade()); - } - if (memberSettleExt.getGradeValue() == null) { - memberSettleExt.setGradeValue(cuMemberSettleExt.getGradeValue()); - } - if (memberSettleExt.getPkAwards() == null) { - memberSettleExt.setPkAwards(cuMemberSettleExt.getPkAwards()); - } - if (memberSettleExt.getRegisterAuthority() == null) { - memberSettleExt.setRegisterAuthority(cuMemberSettleExt.getRegisterAuthority()); - } - if (memberSettleExt.getCustomerType() == null) { - memberSettleExt.setCustomerType(cuMemberSettleExt.getCustomerType()); - } - if (memberSettleExt.getIsMakerSpace() == null) { - memberSettleExt.setIsMakerSpace(cuMemberSettleExt.getIsMakerSpace()); - } - } else { - cuMemberSettleExt.setRegisterBloNewPv(BigDecimal.ZERO); - cuMemberSettleExt.setUpgradeBloNewPv(BigDecimal.ZERO); - cuMemberSettleExt.setRepurchaseBloNewPv(BigDecimal.ZERO); - cuMemberSettleExt.setHiFunBloNewPv(BigDecimal.ZERO); - cuMemberSettleExt.setMallBloNewPv(BigDecimal.ZERO); - cuMemberSettleExtMap.put(cuMemberSettleExt.getPkMember(), cuMemberSettleExt); - } - }); - } - /** * 获得 直推收益的备注 * @@ -399,86 +248,12 @@ public abstract class BonusSettleHandle { cuMemberBonusExpand.setRemark(remark); } - /** - * 获得 拓展收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusPush 拓展奖 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void repurchasePushRemark(SaOrderExt saOrderExt, CuMemberBonusPush cuMemberBonusPush, - CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt, String msg) { - String remark = String.format(msg, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusPush.getCalAchieve(), cuMemberBonusPush.getCalValue()); - cuMemberBonusPush.setRemark(remark); - } - - /** - * 获得 拓展收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusExpand 拓展奖 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void repurchaseExpandRemark(SaOrderExt saOrderExt, CuMemberBonusExpand cuMemberBonusExpand, - CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { - String remark = String.format(BonusMsgConstants.REPURCHASE_EXPAND, cuMemberBonusExpand.getCurrentTouch(), cuMemberBonusExpand.getExpandTouch(), saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusExpand.getCalAchieve(), cuMemberBonusExpand.getCalValue()); - cuMemberBonusExpand.setRemark(remark); - } - - /** - * 获得 辅导收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusCoach 辅导奖 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void coachRemark(SaOrderExt saOrderExt, CuMemberBonusCoach cuMemberBonusCoach, - CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { - String remark = String.format(BonusMsgConstants.COACH, cuMemberBonusCoach.getCurrentGeneration(), saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue()); - cuMemberBonusCoach.setRemark(remark); - } - - /** - * @param saOrderExt 订单编号 - * @param cuMemberBonusCoach 辅导奖 - * @param sourceMemberRangeExt 提供奖金的人 - * @param targetMemberRangeExt 获得奖金的人 - * 获得 辅导收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void coachRangeRemark(SaOrderExt saOrderExt, CuMemberBonusCoach cuMemberBonusCoach, - CuMemberRangeExt sourceMemberRangeExt, CuMemberRangeExt targetMemberRangeExt) { - String remark = String.format(BonusMsgConstants.RANGE_COACH, cuMemberBonusCoach.getCurrentGeneration(), cuMemberBonusCoach.getCoachGeneration(), - saOrderExt.getOrderCode(), - sourceMemberRangeExt.getMemberCode() + sourceMemberRangeExt.getMemberName(), - targetMemberRangeExt.getMemberCode() + targetMemberRangeExt.getMemberName(), - cuMemberBonusCoach.getCalAchieve(), cuMemberBonusCoach.getCalValue()); - cuMemberBonusCoach.setRemark(remark); - } - /** * @param saOrderExt 订单编号 * @param cuMemberBonusDetail 报单服务费 * @param sourceCuMemberSettleExt 提供奖金的人 * @param targetCuMemberSettleExt 获得奖金的人 * 获得 报单服务费收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 */ protected void serviceRemark(SaOrderExt saOrderExt, CuMemberBonusDetail cuMemberBonusDetail, CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { @@ -495,9 +270,6 @@ public abstract class BonusSettleHandle { * @param sourceCuMemberRangeExt 提供奖金的人 * @param targetCuMemberRangeExt 获得奖金的人 * 获得 报单服务费收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 */ protected void rangeServiceRemark(SaOrderExt saOrderExt, CuMemberBonusDetail cuMemberBonusDetail, CuMemberRangeExt sourceCuMemberRangeExt, CuMemberRangeExt targetCuMemberRangeExt) { @@ -508,132 +280,6 @@ public abstract class BonusSettleHandle { cuMemberBonusDetail.setRemark(remark); } - /** - * 获得 报单服务费收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusDetail 报单服务费 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void haiFunRemark(SaOrderExt saOrderExt, CuMemberBonusDetail cuMemberBonusDetail, - CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { - String remark = String.format(BonusMsgConstants.HAI_FUN, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusDetail.getPretaxIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * 获得 嗨粉推荐的收益 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusDetail 报单服务费 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void hiFunRemark(SaOrderExt saOrderExt, CuMemberBonusDetail cuMemberBonusDetail, - CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { - String remark = String.format(BonusMsgConstants.HI_FUN, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusDetail.getRealIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * 获得 分红收益的备注 - * - * @param cuMemberBonusDetail 分红 - * @param settleDate 结算日期 - */ - protected void shareRemark(CuMemberBonusDetail cuMemberBonusDetail, String settleDate) { - String remark = String.format(BonusMsgConstants.SHARE, DateUtils.getMonth(settleDate), - cuMemberBonusDetail.getPretaxIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * @param cuMemberBonusDetail 分红 - * @param settleDate 结算日期 - * 获得 分红收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void shareCouponRemark(CuMemberBonusDetail cuMemberBonusDetail, String settleDate) { - String remark = String.format(BonusMsgConstants.SHARE_COUPON, DateUtils.getMonth(settleDate), - cuMemberBonusDetail.getPretaxIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * @param cuMemberBonusDetail 分红 - * @param settleDate 结算日期 - * 获得 分红收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void storeRemark(CuMemberBonusDetail cuMemberBonusDetail, String settleDate) { - String remark = String.format(BonusMsgConstants.STORE, DateUtils.getMonth(settleDate), - cuMemberBonusDetail.getPretaxIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * @param cuMemberBonusDetail 分红 - * 获得 分红收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void globalShareRemark(CuMemberBonusDetail cuMemberBonusDetail, String msg) { - String remark = String.format(msg, cuMemberBonusDetail.getPretaxIncome()); - cuMemberBonusDetail.setRemark(remark); - } - - /** - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - * 获得 报单服务费收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void rangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberSettleExt sourceCuMemberSettleExt, - CuMemberSettleExt targetCuMemberSettleExt, Map rangePkDtoMap) { - RangeDTO beforeOrderRangeDto = rangePkDtoMap.get(targetCuMemberSettleExt.getPkSettleCountry().toString() + cuMemberBonusRange.getPkBeforeRange()); - RangeDTO orderRangeDto = rangePkDtoMap.get(sourceCuMemberSettleExt.getPkSettleCountry().toString() + cuMemberBonusRange.getPkRange()); - String remark = String.format(BonusMsgConstants.SHARE_RANGE, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), beforeOrderRangeDto == null ? "" : beforeOrderRangeDto.getRangeName(), orderRangeDto == null ? "" : orderRangeDto.getRangeName()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - * 获得 报单服务费收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 - */ - protected void rangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberSettleExt sourceCuMemberSettleExt, - CuMemberSettleExt targetCuMemberSettleExt, RangeDTO parentRangeDto, RangeDTO beforeRangeDto) { - String remark = String.format(BonusMsgConstants.SHARE_RANGE, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusRange.getCalAchieve(), beforeRangeDto.getRangeName(), parentRangeDto.getRangeName()); - cuMemberBonusRange.setRemark(remark); - } - /** * 获得 直推级差收益的备注 * @@ -651,23 +297,6 @@ public abstract class BonusSettleHandle { 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); - } - /** * 获得 平级收益的备注 * @@ -685,49 +314,12 @@ public abstract class BonusSettleHandle { cuMemberBonusRange.setRemark(remark); } - /** - * 获得 报单服务费收益的备注 - * - * @param saOrderExt 订单编号 - * @param cuMemberBonusRange 报单服务费 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void xueRangeRemark(SaOrderExt saOrderExt, CuMemberBonusRange cuMemberBonusRange, CuMemberSettleExt sourceCuMemberSettleExt, - CuMemberSettleExt targetCuMemberSettleExt) { - String remark = String.format(BonusMsgConstants.LE_XUE_SHARE_RANGE, saOrderExt.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - ComputeUtil.computeDivide(targetCuMemberSettleExt.getRetailPrice(), BigDecimal.ONE), targetCuMemberSettleExt.getGradeValue()); - cuMemberBonusRange.setRemark(remark); - } - - /** - * 获得 报单服务费收益的备注 - * - * @param saOrder 订单编号 - * @param cuMemberBonusDetail 云代首购 - * @param sourceCuMemberSettleExt 提供奖金的人 - * @param targetCuMemberSettleExt 获得奖金的人 - */ - protected void cloudAgentRemark(SaOrder saOrder, CuMemberBonusDetail cuMemberBonusDetail, CuMemberSettleExt sourceCuMemberSettleExt, - CuMemberSettleExt targetCuMemberSettleExt, String msg) { - String remark = String.format(msg, saOrder.getOrderCode(), - sourceCuMemberSettleExt.getMemberCode() + sourceCuMemberSettleExt.getMemberName(), - targetCuMemberSettleExt.getMemberCode() + targetCuMemberSettleExt.getMemberName(), - cuMemberBonusDetail.getCalAchieve(), cuMemberBonusDetail.getCalValue()); - cuMemberBonusDetail.setRemark(remark); - } - /** * @param saOrder 订单编号 * @param cuMemberBonusDetail 云代首购 * @param sourceCuMemberSettleExt 提供奖金的人 * @param targetCuMemberSettleExt 获得奖金的人 * 获得 报单服务费收益的备注 - * @return: String - * @Author: sui q - * @Date: 2022/11/17 11:22 */ protected void repurchaseCouponsRemark(SaOrder saOrder, CuMemberBonusDetail cuMemberBonusDetail, CuMemberSettleExt sourceCuMemberSettleExt, CuMemberSettleExt targetCuMemberSettleExt) { @@ -742,9 +334,6 @@ public abstract class BonusSettleHandle { * @param settleDateStr 结算日期 * @param cuMemberSettleExtList 会员列表 * 获取会员列表的考核结果 - * @return: Map - * @Author: sui q - * @Date: 2022/11/17 14:25 */ protected Map getLongCuMemberAssessMap(String settleDateStr, List cuMemberSettleExtList) { if (cuMemberSettleExtList.size() == 0) { @@ -882,43 +471,10 @@ public abstract class BonusSettleHandle { cuMemberBonusExpand.setExpandNormalReal(ComputeUtil.computeMultiplyHalf(cuMemberBonusExpand.getPretaxIncome())); } - protected void packageCuMemberBonusRepurchaseExpand(CuMemberBonusExpand cuMemberBonusExpand, CuMemberBonus cuMemberBonus, - BigDecimal expandCapping, BigDecimal income, BigDecimal actualIncome) { - cuMemberBonusExpand.setExpandNoCapping(income); - cuMemberBonusExpand.setExpandCapping(income); - BigDecimal expandIncome = ComputeUtil.computeAdd(cuMemberBonus.getExpandCapping(), income); - if (ComputeUtil.compareValue(expandIncome, expandCapping)) { - cuMemberBonusExpand.setExpandCapping(ComputeUtil.computeSubtractAbs(cuMemberBonus.getExpandCapping(), income)); - } - cuMemberBonusExpand.setPretaxIncome(actualIncome); - cuMemberBonusExpand.setExpandNormalHalf(ComputeUtil.computeMultiplyHalf(cuMemberBonusExpand.getExpandCapping())); - cuMemberBonusExpand.setExpandNormalReal(ComputeUtil.computeMultiplyHalf(cuMemberBonusExpand.getPretaxIncome())); - } - - /** - * @param cuMemberSettleExtMap 树关系 - * @param settleTableName 结算表 - * @param saOrderList 订单 - * 根据订单获取会员的血缘父级,用于嗨粉推荐、复购极差 - * @return: void - * @Author: sui q - * @Date: 2023/1/4 14:10 - */ - protected List getMemberParentBySaOrder(Map cuMemberSettleExtMap, String settleTableName, List saOrderList) { - Set memberSet = new HashSet<>(); - saOrderList.forEach(saOrderExt -> memberSet.add(saOrderExt.getPkMember())); - List cuMemberSettleExtList = cuMemberTreeService.batchQueryCuMemberSettleParent(settleTableName, memberSet); - getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); - return cuMemberSettleExtList; - } - /** * @param awardsMap 奖衔 * @param parentMemberTree 会员树历史记录 * 获取会员的极差等级,验证会员是否有奖衔 - * @return: String - * @Author: sui q - * @Date: 2023/1/4 14:22 */ protected String getMemberCountryKey(Map awardsMap, CuMemberTree parentMemberTree, Map cuAwardsControlMap) { Integer pkAwards = getPkRealAwards(parentMemberTree.getPkMember(), parentMemberTree.getPkAwards(), cuAwardsControlMap); @@ -930,28 +486,6 @@ public abstract class BonusSettleHandle { return key; } - protected RangeDTO getRangeDto(Map rangeDtoMap, Map awardsMap, CuMemberTree parentMemberTree, Map cuAwardsControlMap) { - String key = getMemberCountryKey(awardsMap, parentMemberTree, cuAwardsControlMap); - return rangeDtoMap.get(key); - } - - /** - * @param awardsMap 奖衔 - * @param parentMemberTree 会员树历史记录 - * 获取会员的极差等级,验证会员是否有奖衔 - * @return: String - * @Author: sui q - * @Date: 2023/1/4 14:22 - */ - protected String getMemberKey(Map awardsMap, CuMemberTree parentMemberTree) { - String key = Integer.toString(ERangeType.AWARDS.getValue()) + parentMemberTree.getPkAwards(); - String awardKey = parentMemberTree.getPkSettleCountry().toString() + parentMemberTree.getPkAwards().toString(); - if (EAwards.MEMBER.getValue() == awardsMap.get(awardKey).getAwardsValue()) { - key = Integer.toString(ERangeType.GRADE.getValue()) + parentMemberTree.getPkGrade(); - } - return key; - } - /** * 奖金明细 报单服务费、分红、云代首购、云代复购、海豆收益 * @@ -981,25 +515,6 @@ public abstract class BonusSettleHandle { return cuMemberBonusDetail; } - /** - * 获得需要查询的会员,免考通过的不需要查询考核记录 - * - * @param cuMemberSettleExtMap 存储目前有的会员数据 - * @param cuMemberSettleExtList 需要查询的会员数据 - */ - protected List getQueryMemberSettleExtList(Map cuMemberSettleExtMap, List cuMemberSettleExtList) { - // 过滤数据,免考的会员不进行查询 - List queryMemberList = new ArrayList<>(); - cuMemberSettleExtList.forEach(cuMemberSettleExt -> { - CuMemberSettleExt memberSettleExt = cuMemberSettleExtMap.get(cuMemberSettleExt.getPkMember()); - // 免考的不查询 - if (memberSettleExt == null || EYesNo.NO.getIntValue() == memberSettleExt.getPurchaseStatus()) { - queryMemberList.add(cuMemberSettleExt); - } - }); - return queryMemberList; - } - /** * 设置奖金扣项,计算税前收益,扣税,实际收益, 设置主表 * @@ -1028,16 +543,6 @@ public abstract class BonusSettleHandle { cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); } - /** - * 复购计算 扣项,小计,总计 - */ - protected void setPurchaseTotal(BdBonusDeduct bdBonusDeduct, CuMemberBonus cuMemberBonus, Object bonusDetail) { - setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail); - BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME); - cuMemberBonus.setRepurRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurRealSubtotal(), realIncome)); - cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); - } - /** * 云代计算 扣项,小计,总计 */ @@ -1065,7 +570,6 @@ public abstract class BonusSettleHandle { setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail); BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME); cuMemberBonus.setRepurCouponSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getRepurCouponSubtotal(), realIncome)); -// cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome)); } /** @@ -1107,43 +611,6 @@ public abstract class BonusSettleHandle { } } - /** - * 根据订单分类,分为首购、复购、真实,获取新增业绩 - * - * @param orderExtList 订单列表 - */ - public void assortSaOrder(Map cuMemberAchieveHashMap, List orderExtList, BonusConfigDTO bonusConfigDTO, Boolean isFirst) { - // 注册+升级+云代注册+云代升级 首购 除(注册+升级)其他 复购 首购+复购 = 真实 - for (SaOrderExt saOrderExt : orderExtList) { - MemberAchieveParam cuMemberAchieve; - if (cuMemberAchieveHashMap.containsKey(saOrderExt.getPkMember())) { - cuMemberAchieve = cuMemberAchieveHashMap.get(saOrderExt.getPkMember()); - // 所有的都算真实业绩 - } else { - cuMemberAchieve = MemberAchieveParam.builder() - .pkRate(saOrderExt.getPkRate()) - .pkMember(saOrderExt.getPkMember()) - .newAmount(BigDecimal.ZERO) - .newPv(BigDecimal.ZERO) - .repNewAmount(BigDecimal.ZERO) - .repNewPv(BigDecimal.ZERO) - .newRealAmount(BigDecimal.ZERO) - .newRealPv(BigDecimal.ZERO) - .build(); - cuMemberAchieveHashMap.put(saOrderExt.getPkMember(), cuMemberAchieve); - } - if (isFirst) { - cuMemberAchieve.setNewAmount(ComputeUtil.computeAdd(cuMemberAchieve.getNewAmount(), saOrderExt.getOrderAmount())); - cuMemberAchieve.setNewPv(ComputeUtil.computeAdd(cuMemberAchieve.getNewPv(), saOrderExt.getOrderAchieve())); - } else { - cuMemberAchieve.setRepNewAmount(ComputeUtil.computeAdd(cuMemberAchieve.getRepNewAmount(), saOrderExt.getOrderAmount())); - cuMemberAchieve.setRepNewPv(ComputeUtil.computeAdd(cuMemberAchieve.getRepNewPv(), saOrderExt.getOrderAchieve())); - } - cuMemberAchieve.setNewRealAmount(ComputeUtil.computeAdd(cuMemberAchieve.getNewRealAmount(), saOrderExt.getOrderAmount())); - cuMemberAchieve.setNewRealPv(ComputeUtil.computeAdd(cuMemberAchieve.getNewRealPv(), saOrderExt.getOrderAchieve())); - } - } - protected BigDecimal convertLocalCurrency(SaOrder saOrderExt, BonusConfigDTO bonusConfigDTO) { Map currencyDtoMap = bonusConfigDTO.getCurrencyDtoMap(); String key = saOrderExt.getPkCountry().toString() + saOrderExt.getPkRate(); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java deleted file mode 100644 index 772ce9e2..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/BonusSettlePurchaseHandle.java +++ /dev/null @@ -1,1005 +0,0 @@ -package com.hzs.bonus.bonus.service.impl; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; -import com.hzs.activity.pick.IAcPickServiceApi; -import com.hzs.bonus.base.service.ICuMemberService; -import com.hzs.bonus.bonus.param.LeXueRangeParam; -import com.hzs.common.core.constant.CountryConstants; -import com.hzs.common.core.constant.MagicNumberConstants; -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.activity.pick.AcPickMemberLog; -import com.hzs.common.domain.activity.pick.ext.AcPickExt; -import com.hzs.common.domain.bonus.BdBonusDeduct; -import com.hzs.common.domain.bonus.risk.CuMemberRiskControl; -import com.hzs.common.domain.member.base.CuAwardsControl; -import com.hzs.common.domain.member.base.CuMember; -import com.hzs.common.domain.member.bonus.CuMemberBonus; -import com.hzs.common.domain.member.bonus.CuMemberBonusExpand; -import com.hzs.common.domain.member.bonus.CuMemberBonusPush; -import com.hzs.common.domain.member.bonus.CuMemberBonusRange; -import com.hzs.common.domain.member.detail.CuMemberAssess; -import com.hzs.common.domain.member.ext.CuBonusExpandExt; -import com.hzs.common.domain.member.ext.CuMemberSettleExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; -import com.hzs.common.domain.sale.ext.SaOrderItemsExt; -import com.hzs.common.domain.system.config.BdAwards; -import com.hzs.common.domain.system.config.BdGrade; -import com.hzs.sale.order.dto.SaOrderRangeDto; -import com.hzs.system.config.dto.BonusConfigDTO; -import com.hzs.system.config.dto.BonusExpandDTO; -import com.hzs.system.config.dto.BonusRepurchasePushDTO; -import com.hzs.system.config.dto.RangeDTO; -import org.apache.dubbo.config.annotation.DubboReference; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.math.BigDecimal; -import java.util.*; -import java.util.stream.Collectors; - -/** - * 计算复购的奖金处理类 - */ -@Component -public class BonusSettlePurchaseHandle extends BonusSettleHandle { - - @DubboReference - IAcPickServiceApi acPickServiceApi; - - @Autowired - private BonusSettleFirstPurchaseHandle bonusSettleFirstPurchaseHandle; - - @Autowired - private ICuMemberService cuMemberService; - - /* - * 计算复购直推 血缘10代根据比例 - **/ - List calculateRepurchasePushBonus(Map cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO, - List purchaseOrderList, Integer period, Map cuMemberBonusMap) { - List cuMemberBonusPushList = new ArrayList<>(); - if (purchaseOrderList.size() > 0) { - Set expandMemberSet = new HashSet<>(); - purchaseOrderList.forEach(saOrderExt -> expandMemberSet.add(saOrderExt.getPkMember())); - List cuMemberSettleExtList = cuMemberTreeService.batchQueryCuMemberSettleParent(settleTableName, expandMemberSet); - getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); - Map cuMemberAssessMap = getCuMemberAssessMap(cuMemberSettleExtMap, settleDateStr, cuMemberSettleExtList); - for (SaOrderExt saOrderExt : purchaseOrderList) { - // 国内没有复购直推 - if (saOrderExt.getPkCountry().equals(CountryConstants.CHINA_COUNTRY)) { - continue; - } - if (EOrderType.REPURCHASE_ORDER.getValue() == saOrderExt.getOrderType() && ComputeUtil.compareEqual(saOrderExt.getOrderAmount(), BigDecimal.valueOf(158000))) { - continue; - } - List newMemberBonusPushList = calculateRepurchasePushBonusOne(cuMemberSettleExtMap, bonusConfigDTO, cuMemberAssessMap, period, cuMemberBonusMap, saOrderExt); - if (newMemberBonusPushList.size() > 0) { - cuMemberBonusPushList.addAll(newMemberBonusPushList); - } - } - } - return cuMemberBonusPushList; - } - - List calculateRepurchasePushBonusOne(Map cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, Map cuMemberAssessMap, Integer period, Map cuMemberBonusMap, SaOrderExt saOrderExt) { - CuMemberSettleExt sourceSettleExt = cuMemberSettleExtMap.get(saOrderExt.getPkMember()); - List cuMemberBonusPushList = new ArrayList<>(); - if (sourceSettleExt == null) { - return cuMemberBonusPushList; - } - BigDecimal orderAchieve = saOrderExt.getOrderAchieve(); -// if(ComputeUtil.compareValue(saOrderExt.getOrderAmount(), BigDecimal.valueOf(170000))){ -// for (SaOrderItemsExt saOrderItemsExt : saOrderExt.getOrderItemsExtList()) { -// if(Objects.equals(13825, saOrderItemsExt.getPkWares())){ -// orderAchieve = ComputeUtil.computeSubtract(orderAchieve, saOrderItemsExt.getAchievement()); -// } -// } -// if(!ComputeUtil.compareValue(orderAchieve)){ -// return cuMemberBonusPushList; -// } -// } - int i = MagicNumberConstants.BLOOD_GENERATION_START; - Long pkParent = sourceSettleExt.getPkParent(); - while (i <= MagicNumberConstants.BLOOD_GENERATION_END) { - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(pkParent); - if (targetMemberSettleExt == null) { - break; - } -// if(MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(sourceSettleExt.getMemberCode()) || -// MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(targetMemberSettleExt.getMemberCode()) ){ -// if(cuMemberTreeService.queryCuMemberUnderUmbrella(settleName, saOrderExt.getPkMember())) { -// break; -// } -// } - // 死点没有奖金 - if (ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus()) { - pkParent = targetMemberSettleExt.getPkParent(); - continue; - } - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.HELP_EACH_INCOME.getValue())) { - pkParent = targetMemberSettleExt.getPkParent(); - continue; - } - // 正常状态的辅导奖需要判断复购考核,复购考核不通过的状态变为烧伤 - // 海粉推荐的直接考核通过 - if (!Objects.equals(MagicNumberConstants.CHINA_HA_FUN, targetMemberSettleExt.getPkGrade())) { - if (EYesNo.NO.getIntValue() == targetMemberSettleExt.getPurchaseStatus()) { - // 需要复购考核的 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(targetMemberSettleExt.getPkMember()); - if (cuMemberAssess == null) { - pkParent = targetMemberSettleExt.getPkParent(); - continue; - } - } - } - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, targetMemberSettleExt); - // 直推奖金明细 - int pkBonusItem = getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.HELP_EACH_INCOME.getValue()); - CuMemberBonusPush cuMemberBonusPush = bonusSettleFirstPurchaseHandle.getCuMemberBonusPush(saOrderExt, targetMemberSettleExt, cuMemberBonus, pkBonusItem); - Map repurchasePushMap = bonusConfigDTO.getBonusRepurchasePushMap().get(targetMemberSettleExt.getPkSettleCountry()); - if (!repurchasePushMap.containsKey(i)) { - break; - } - // 复购直推需要修改 - BonusRepurchasePushDTO bonusRepurchasePushDTO = repurchasePushMap.get(i); - cuMemberBonusPush.setCalType(bonusRepurchasePushDTO.getCalType()); - cuMemberBonusPush.setRound(0); - cuMemberBonusPush.setSecond(0); - // 比例 - if (ECalType.RATIO.getValue() == bonusRepurchasePushDTO.getCalType()) { - cuMemberBonusPush.setCalValue(bonusRepurchasePushDTO.getPushValue()); - cuMemberBonusPush.setPretaxIncome(ComputeUtil.computeBonusMultiply(orderAchieve, bonusRepurchasePushDTO.getPushValue())); - } else { - cuMemberBonusPush.setCalValue(BigDecimal.ZERO); - cuMemberBonusPush.setPretaxIncome(bonusRepurchasePushDTO.getPushValue()); - } - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusPush, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusPush.getIncomeStatus()) { - cuMemberBonus.setRepurPushIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurPushIncome(), cuMemberBonusPush.getPretaxIncome())); - setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusPush); - } - repurchasePushRemark(saOrderExt, cuMemberBonusPush, sourceSettleExt, targetMemberSettleExt, BonusMsgConstants.REPURCHASE_PUSH); - cuMemberBonusPushList.add(cuMemberBonusPush); - pkParent = targetMemberSettleExt.getPkParent(); - i++; - } - return cuMemberBonusPushList; - } - - /** - * 计算复购拓展收益 - * - * @param settleTableName 结算表 - * @param period 期间 - * @param bonusConfigDTO 参数 - * @param purchaseOrderList 首单 - * @param cuMemberBonusMap 所有计算出来的奖金汇总 - */ - List calculateRepurchaseExpandBonus(Map riskControlMap, Map cuMemberSettleExtMap, String settleTableName, String settleDateStr, BonusConfigDTO bonusConfigDTO, Map systemConfigMap, - List purchaseOrderList, Integer period, Map weekMemberBonusMap, Map cuMemberBonusMap, Map cuBonusExpandExtMap) { - List cuMemberBonusExpandList = new ArrayList<>(); - // 获取所有订单的上级,根据订单往上一步步计算 - Map> memberSettleMap = cuMemberTreeService.batchQueryCuMemberSettlePlaceParent(settleTableName, purchaseOrderList); - List memberSettleExtList = new ArrayList<>(); - for (List cuMemberSettleExt : memberSettleMap.values()) { - memberSettleExtList.addAll(cuMemberSettleExt); - } - getMemberSettle(cuMemberSettleExtMap, memberSettleExtList); - Map cuMemberAssessMap = getCuMemberAssessMap(cuMemberSettleExtMap, settleDateStr, memberSettleExtList); - for (SaOrderExt saOrderExt : purchaseOrderList) { - // 所有需要计算的父节点,只计算新增 - List cuMemberSettleExtList = memberSettleMap.get(saOrderExt.getPkId()); - BigDecimal addTouch = BigDecimal.ZERO; - BigDecimal expandRatio = BigDecimal.ZERO; - int expandNumber = 0; - for (int i = cuMemberSettleExtList.size() - 1; i >= 0; i--) { - CuMemberSettleExt cuMemberSettleExt = cuMemberSettleExtList.get(i); - if (cuBonusExpandExtMap.containsKey(cuMemberSettleExt.getPkMember())) { - addTouch = cuBonusExpandExtMap.get(cuMemberSettleExt.getPkMember()).getAddTouch(); - expandRatio = cuBonusExpandExtMap.get(cuMemberSettleExt.getPkMember()).getExpandRatio(); - expandNumber = cuBonusExpandExtMap.get(cuMemberSettleExt.getPkMember()).getExpandNumber(); - break; - } - } - List newMemberBonusExpandList = calculateRepurchaseExpandBonusOne(riskControlMap, settleTableName, cuMemberSettleExtMap, bonusConfigDTO, systemConfigMap, period, - weekMemberBonusMap, cuMemberBonusMap, cuMemberAssessMap, saOrderExt, cuMemberSettleExtList, addTouch, expandRatio, expandNumber); - if (newMemberBonusExpandList.size() > 0) { - cuMemberBonusExpandList.addAll(newMemberBonusExpandList); - } - } - // 根据订单往上穿业绩,只计算新增 - return cuMemberBonusExpandList; - } - - /** - * @Description: 秒接复购量奖 - * @return: List - * @Author: sui q - * @Date: 2023/3/20 16:10 - */ - protected List calculateRepurchaseExpandSecondBonus(Map riskControlMap, String settleTableName, Map cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, - Map systemConfigMap, Integer period, - Map weekMemberBonusMap, - Map cuMemberBonusMap, SaOrderExt saOrderExt, - List cuMemberSettleExtList, String settleDateStr, BigDecimal addTouch, BigDecimal expandRatio, Integer expandNumber) { - Map cuMemberAssessMap = getCuMemberAssessMap(cuMemberSettleExtMap, settleDateStr, cuMemberSettleExtList); - // 复购订单,计算复购极差,复购拓展 - return calculateRepurchaseExpandBonusOne(riskControlMap, settleTableName, cuMemberSettleExtMap, bonusConfigDTO, systemConfigMap, period, weekMemberBonusMap, cuMemberBonusMap, - cuMemberAssessMap, saOrderExt, cuMemberSettleExtList, addTouch, expandRatio, expandNumber); - } - - /** - * @Description: 秒接复购量奖 - * @return: List - * @Author: sui q - * @Date: 2023/3/20 16:10 - */ - protected List calculateRepurchasePushSecondBonus(String settleTableName, Map cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, Integer period, - Map cuMemberBonusMap, SaOrderExt saOrderExt, - List cuMemberSettleExtList, String settleDateStr) { - // 根据订单获取轮次,要回写 - Map cuMemberAssessMap = getCuMemberAssessMap(cuMemberSettleExtMap, settleDateStr, cuMemberSettleExtList); - return calculateRepurchasePushBonusOne(cuMemberSettleExtMap, bonusConfigDTO, cuMemberAssessMap, period, cuMemberBonusMap, saOrderExt); - } - - - private List calculateRepurchaseExpandBonusOne(Map riskControlMap, String settleName, Map cuMemberSettleExtMap, BonusConfigDTO bonusConfigDTO, Map systemConfigMap, Integer period, - Map weekMemberBonusMap, Map cuMemberBonusMap, Map cuMemberAssessMap, - SaOrderExt saOrderExt, List cuMemberSettleExtList, BigDecimal addTouch, BigDecimal expandRatio, Integer expandNumber) { - Map bdBonusExpandMap = bonusConfigDTO.getBonusExpandMap(); - List cuMemberBonusExpandList = new ArrayList<>(); - CuMemberSettleExt settleExt = cuMemberSettleExtMap.get(saOrderExt.getPkMember()); - if (settleExt == null) { - return cuMemberBonusExpandList; - } - settleExt.setRepurchaseAmount(ComputeUtil.computeAdd(settleExt.getRepurchaseAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - settleExt.setRepurchasePv(ComputeUtil.computeAdd(settleExt.getRepurchasePv(), saOrderExt.getOrderAchieve())); - settleExt.setRepurchaseNewAmount(ComputeUtil.computeAdd(settleExt.getRepurchaseNewAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - settleExt.setRepurchaseNewPv(ComputeUtil.computeAdd(settleExt.getRepurchaseNewPv(), saOrderExt.getOrderAchieve())); - // 先计算新增,根据新增计算碰次 - // 先进行初始化所有的安置人,存储需要修改的值,cuMemberSettleExtMap最终修改的 -// getMemberSettle(cuMemberSettleExtMap, cuMemberSettleExtList); - // 先准备值,准备好值后,开始计算,计算碰次 - int touchNum = calculateTouchNum(riskControlMap, settleName, cuMemberAssessMap, cuMemberSettleExtMap, saOrderExt, cuMemberSettleExtList, bonusConfigDTO); - // 有碰次,计算拓展奖 - if (touchNum > 0) { - // 判断是否>3 是否需要启动4-N,4-N的参数按照伞上各安置人结算国家进行获取 - // 先计算前3碰 - int startTouch = touchNum; - // 后面碰次 - int endTouch = 0; - BonusExpandDTO bdBonusExpand = bdBonusExpandMap.get(saOrderExt.getPkCountry()); - int realExpandNumber = expandNumber > 0 ? expandNumber : bdBonusExpand.getExpandNumber(); - if (touchNum > realExpandNumber) { - startTouch = realExpandNumber; - endTouch = touchNum - startTouch; - } - // 正常的拓展奖计算 - // 计算拓展奖 - for (int i = 1; i <= startTouch; i++) { - for (CuMemberSettleExt sourceMemberSettleExt : cuMemberSettleExtList) { - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(sourceMemberSettleExt.getPkPlaceParent()); - if (targetMemberSettleExt == null || ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus()) { - continue; - } - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue())) { - continue; - } - // 判断左右区是否有值,找到有值的就是有碰次,碰完左区或右区肯定有变为0的 - // 判断左右区是否有值,找到有值的就是有碰次,碰完左区或右区肯定有变为0的 - if ((targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY) && ComputeUtil.compareValue(targetMemberSettleExt.getABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getBBalance())) - || (ComputeUtil.compareValue(targetMemberSettleExt.getRepABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getRepBBalance()))) { - // 根据会员等级获取对应的配置 - BdGrade bdGrade = getGradeExpand(bonusConfigDTO, targetMemberSettleExt); - BigDecimal countryExpandRatio = bdGrade.getRepurchaseRatio(); - Integer pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue()); - calculateRepurchaseExpandBonusByAchieve(period, weekMemberBonusMap, cuMemberBonusMap, bonusConfigDTO, systemConfigMap, cuMemberBonusExpandList, saOrderExt, touchNum, i, sourceMemberSettleExt, targetMemberSettleExt, bdGrade, countryExpandRatio, pkBonusItems, cuMemberAssessMap); - break; - } - } - } - // 4-N计算 - if (endTouch > 0) { - // 获得每一碰的比例, 找到剩下的碰次的国家 - for (int i = 1; i <= endTouch; i++) { - for (CuMemberSettleExt sourceMemberSettleExt : cuMemberSettleExtList) { - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(sourceMemberSettleExt.getPkPlaceParent()); - if (targetMemberSettleExt == null || ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus()) { - continue; - } - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue())) { - continue; - } - // 判断左右区是否有值,找到有值的就是有碰次,碰完左区或右区肯定有变为0的 - if ((targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY) && ComputeUtil.compareValue(targetMemberSettleExt.getABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getBBalance())) - || (ComputeUtil.compareValue(targetMemberSettleExt.getRepABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getRepBBalance()))) { - // 根据会员等级获取对应的配置 - BdGrade bdGrade = getGradeExpand(bonusConfigDTO, targetMemberSettleExt); - // 获取国家4-n的配置 - BigDecimal countryExpandRatio = getCountryRepurchaseExpand(bonusConfigDTO, targetMemberSettleExt, endTouch, bdGrade, addTouch, expandRatio); - Integer pkBonusItems = getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.CONSUMPTION_EXPANSION_INCOME.getValue()); - calculateRepurchaseExpandBonusByAchieve(period, weekMemberBonusMap, cuMemberBonusMap, bonusConfigDTO, systemConfigMap, cuMemberBonusExpandList, saOrderExt, touchNum, i + startTouch, sourceMemberSettleExt, targetMemberSettleExt, bdGrade, countryExpandRatio, pkBonusItems, cuMemberAssessMap); - break; - } - } - } - } - } - return cuMemberBonusExpandList; - } - - private int calculateTouchNum(Map riskControlMap, String settleName, Map cuMemberAssessMap, - Map cuMemberSettleExtMap, SaOrderExt saOrderExt, List cuMemberSettleExtList, BonusConfigDTO bonusConfigDTO) { - int touchNum = 0; - boolean flag = Boolean.TRUE; - CuMemberSettleExt firstMemberSettleExt = cuMemberSettleExtList.get(0); - for (CuMemberSettleExt cuMemberSettleExt : cuMemberSettleExtList) { - // 数据已经准备好了,肯定有值,map中是实际的值,先计算新增,然后根据新增结算计算碰次,list是为了存储碰次的顺序 - CuMemberSettleExt targetMemberSettleExt = cuMemberSettleExtMap.get(cuMemberSettleExt.getPkPlaceParent()); - if (targetMemberSettleExt == null || ECategory.NORMAL.getValue() != targetMemberSettleExt.getCategory() || - EAccountStatus.STOP_INCOME.getValue() == targetMemberSettleExt.getAccountStatus() || - EGrade.START_UP.getValue() == targetMemberSettleExt.getGradeValue()) { - continue; - } -// if(MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(targetMemberSettleExt.getMemberCode())){ -// if(cuMemberTreeService.queryCuMemberUnderUmbrella(settleName, saOrderExt.getPkMember())) { -// flag = Boolean.FALSE; -// } -// } - // 验证是否计算奖金 - BdGrade bdGrade = getGradeExpand(bonusConfigDTO, targetMemberSettleExt); - if (bdGrade.getRepurchaseCalculate() != null && EYesNo.NO.getIntValue() == bdGrade.getRepurchaseCalculate()) { - continue; - } - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - if (EPlaceDept.LEFT_DEPT.getValue() == cuMemberSettleExt.getPlaceDept()) { - // 左区 - // K值设置 - if (riskControlMap.containsKey(targetMemberSettleExt.getPkMember())) { - CuMemberRiskControl cuMemberRiskControl = riskControlMap.get(targetMemberSettleExt.getPkMember()); - targetMemberSettleExt.setANewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getANewAmount(), ComputeUtil.computeBonusMultiply(convertLocalCurrency(saOrderExt, bonusConfigDTO), cuMemberRiskControl.getAchieveRatio()))); - targetMemberSettleExt.setANewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getANewPv(), ComputeUtil.computeBonusMultiply(saOrderExt.getUploadAchieve(), cuMemberRiskControl.getAchieveRatio()))); - targetMemberSettleExt.setABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getABalance(), ComputeUtil.computeBonusMultiply(saOrderExt.getUploadAchieve(), cuMemberRiskControl.getAchieveRatio()))); - } else { - targetMemberSettleExt.setANewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getANewAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - targetMemberSettleExt.setANewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getANewPv(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getABalance(), saOrderExt.getUploadAchieve())); - } - targetMemberSettleExt.setRABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRABalance(), saOrderExt.getUploadAchieve())); -// } - } else { - // 右区 - if (riskControlMap.containsKey(targetMemberSettleExt.getPkMember())) { - CuMemberRiskControl cuMemberRiskControl = riskControlMap.get(targetMemberSettleExt.getPkMember()); - targetMemberSettleExt.setBNewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getBNewAmount(), ComputeUtil.computeBonusMultiply(convertLocalCurrency(saOrderExt, bonusConfigDTO), cuMemberRiskControl.getAchieveRatio()))); - targetMemberSettleExt.setBNewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getBNewPv(), ComputeUtil.computeBonusMultiply(saOrderExt.getUploadAchieve(), cuMemberRiskControl.getAchieveRatio()))); - targetMemberSettleExt.setBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getBBalance(), ComputeUtil.computeBonusMultiply(saOrderExt.getUploadAchieve(), cuMemberRiskControl.getAchieveRatio()))); - } else { - targetMemberSettleExt.setBNewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getBNewAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - targetMemberSettleExt.setBNewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getBNewPv(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getBBalance(), saOrderExt.getUploadAchieve())); - } - targetMemberSettleExt.setRBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRBBalance(), saOrderExt.getUploadAchieve())); - } - // 判断左右区是否有值,左右区有值有碰次 - if (ComputeUtil.compareValue(targetMemberSettleExt.getABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getBBalance())) { - // 国内量奖修改为考核不通过的不占用4-N,不算奖金 - // 验证是否验证考核 - touchNum++; - } - // 判断左右区是否有值,左右区有值有碰次 - if (ComputeUtil.compareValue(targetMemberSettleExt.getRABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getRBBalance())) { - BigDecimal minAchieve = ComputeUtil.obtainMinAchieve(targetMemberSettleExt.getRABalance(), targetMemberSettleExt.getRBBalance()); - targetMemberSettleExt.setRABalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRABalance(), minAchieve)); - targetMemberSettleExt.setRBBalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRBBalance(), minAchieve)); - } - } else { - // 嗨粉、海粉没有量奖 - if (EPlaceDept.LEFT_DEPT.getValue() == cuMemberSettleExt.getPlaceDept()) { - // 左区 - targetMemberSettleExt.setRepANewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getRepANewAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - targetMemberSettleExt.setRepANewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getRepANewPv(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setRepABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRepABalance(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setRRepABalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRRepABalance(), saOrderExt.getUploadAchieve())); - } else { - // 右区 - targetMemberSettleExt.setRepBNewAmount(ComputeUtil.computeAdd(targetMemberSettleExt.getRepBNewAmount(), convertLocalCurrency(saOrderExt, bonusConfigDTO))); - targetMemberSettleExt.setRepBNewPv(ComputeUtil.computeAdd(targetMemberSettleExt.getRepBNewPv(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setRepBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRepBBalance(), saOrderExt.getUploadAchieve())); - targetMemberSettleExt.setRRepBBalance(ComputeUtil.computeAdd(targetMemberSettleExt.getRRepBBalance(), saOrderExt.getUploadAchieve())); - } - // 判断左右区是否有值,左右区有值有碰次 - if (ComputeUtil.compareValue(targetMemberSettleExt.getRepABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getRepBBalance())) { - touchNum++; - } - // 判断左右区是否有值,左右区有值有碰次 - if (ComputeUtil.compareValue(targetMemberSettleExt.getRRepABalance()) && ComputeUtil.compareValue(targetMemberSettleExt.getRRepBBalance())) { - BigDecimal minAchieve = ComputeUtil.obtainMinAchieve(targetMemberSettleExt.getRRepABalance(), targetMemberSettleExt.getRRepBBalance()); - targetMemberSettleExt.setRRepABalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRRepABalance(), minAchieve)); - targetMemberSettleExt.setRRepBBalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRRepBBalance(), minAchieve)); - } - } - } - return touchNum; - } - - private Map getCuMemberAssessMap(Map cuMemberSettleExtMap, String settleDateStr, List memberSettleExtList) { - List queryMemberList = getQueryMemberSettleExtList(cuMemberSettleExtMap, memberSettleExtList); - return getLongCuMemberAssessMap(settleDateStr, queryMemberList); - } - - /** - * 计算复购极差 - * - * @param period 期间 - * @param bonusConfigDTO 参数 - * @param purchaseOrderList 复购订单 - * @param cuMemberBonusMap 所有计算出来的奖金汇总 - */ - List calculateRepurchaseRangeBonus(Map cuMemberSettleExtMap, String settleTableName, String settleDate, Map rangeDtoMap, Map awardsMap, - BonusConfigDTO bonusConfigDTO, List purchaseOrderList, - Integer period, Map cuMemberBonusMap, Map cuAwardsControlMap, LeXueRangeParam leXueRangeParam) { - // 计算复购极差的订单 -// List chinaRangeOrderList = new ArrayList<>(); - // if (chinaRangeOrderList.size() > 0) { -// Map> saOrderRangeDtoMap = saOrderServiceApi.queryOrderRangeVO(chinaRangeOrderList).getData(); -// Map rangePkDtoMap = new HashMap<>(ComputeUtil.mapInitCapacity(rangeDtoMap.size())); -// rangeDtoMap.forEach((key, rangeDto) -> -// rangePkDtoMap.put(rangeDto.getPkCountry().toString() + rangeDto.getPkRange(), rangeDto)); -// chinaRangeOrderList.forEach(saOrderExt -> { -// List orderRangeVOList = saOrderRangeDtoMap.get(saOrderExt.getOrderCode()); -// if (orderRangeVOList == null || orderRangeVOList.size() == 0) { -// return; -// } -// if (!validateSecondOrderExistBonus(saOrderExt, EBonusItems.REPURCHASE_RANGE_INCOME.getValue())) { -// return; -// } -// Map> orderRangeDtoMap = getRangeDtoMap(orderRangeVOList); -// for(Long pkItem :orderRangeDtoMap.keySet()){ -// List saOrderRangeDtoList = orderRangeDtoMap.get(pkItem); -// // 一定要发完,从推荐人开始发 -// executeChinaOrderRange(cuMemberSettleExtMap, rangeDtoMap, awardsMap, bonusConfigDTO, period, cuMemberBonusMap, -// cuAwardsControlMap, cuMemberBonusRangeList, cuMemberAssessMap, rangePkDtoMap, saOrderExt, saOrderRangeDtoList); -// } -// }); -// List saOrderExtList = new ArrayList<>(); -// for (SaOrderExt saOrderExt : chinaRangeOrderList) { -// if(ComputeUtil.compareValue(saOrderExt.getOrderAmount(), BigDecimal.valueOf(170000))){ -// for (SaOrderItemsExt saOrderItemsExt : saOrderExt.getOrderItemsExtList()) { -// if(Objects.equals(13825, saOrderItemsExt.getPkWares())){ -// saOrderExt.setOrderAchieve(saOrderItemsExt.getAchievement()); -// saOrderExtList.add(saOrderExt); -// } -// } -// } -// } -// if(saOrderExtList.size() >0) { -// for (SaOrderExt saOrderExt : saOrderExtList) { -// CuMemberSettleExt sourceMemberTree = cuMemberSettleExtMap.get(saOrderExt.getPkMember()); -// while (true) { -// if (sourceMemberTree == null) { -// break; -// } -// CuMemberSettleExt parentMemberTree = cuMemberSettleExtMap.get(sourceMemberTree.getPkParent()); -// parentMemberTree = getRangeCuMemberTree(cuMemberSettleExtMap, rangeDtoMap, awardsMap, bonusConfigDTO, sourceMemberTree, parentMemberTree, cuAwardsControlMap, cuMemberAssessMap); -// if (parentMemberTree == null) { -// break; -// } -// RangeDTO parentRangeDto = getRangeDto(rangeDtoMap, awardsMap, parentMemberTree, cuAwardsControlMap); -// RangeDTO sourceRangeDto = getRangeDto(rangeDtoMap, awardsMap, sourceMemberTree, cuAwardsControlMap); -// BigDecimal achieveRatio = ComputeUtil.computeSubtract(parentRangeDto.getAchieveRatio(), sourceRangeDto.getAchieveRatio()); -// // 发放奖金 -// CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, parentMemberTree); -// CuMemberBonusRange cuMemberBonusRange = getCuMemberBonusRange(bonusConfigDTO, saOrderExt, parentMemberTree, cuMemberBonus); -// cuMemberBonusRange.setCalAchieve(saOrderExt.getOrderAchieve()); -//// BigDecimal repurchaseRangeBonus = ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(orderAchieve, saOrderRangeDto.getRangeAchieve()), saOrderRangeDto.getQuantity()); -// if (ComputeUtil.compareValue(BigDecimal.ZERO, achieveRatio)) { -// sourceMemberTree = cuMemberSettleExtMap.get(parentMemberTree.getPkMember()); -// continue; -// } -// cuMemberBonusRange.setCalValue(BigDecimal.ZERO); -// BigDecimal repurchaseRangeBonus = ComputeUtil.computeBonusMultiply(saOrderExt.getOrderAchieve(), achieveRatio); -// cuMemberBonusRange.setPretaxIncome(repurchaseRangeBonus); -// cuMemberBonusRange.setPkRange(parentRangeDto.getPkRange()); -// cuMemberBonusRange.setPkBeforeRange(sourceRangeDto.getPkRange()); -// cuMemberBonusRange.setPkOrderItems(0L); -// rangeRemark(saOrderExt, cuMemberBonusRange, sourceMemberTree, parentMemberTree, parentRangeDto, sourceRangeDto); -// packageRepurchaseRange(bonusConfigDTO, cuMemberBonusRangeList, saOrderExt, cuMemberBonus, cuMemberBonusRange, repurchaseRangeBonus); -// if (ERangeType.AWARDS.getValue() == parentRangeDto.getRangeType() && EAwards.GLOBAL_CHAIRMAN.getValue() == parentRangeDto.getRangeValue()) { -// break; -// } -// sourceMemberTree = cuMemberSettleExtMap.get(parentMemberTree.getPkMember()); -// } -// } -// } -// } - return new ArrayList<>(); - } - - private void executeOverseasOrderRange(String settleName, Map cuMemberSettleExtMap, Map rangeDtoMap, Map awardsMap, BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, Map cuAwardsControlMap, List cuMemberBonusRangeList, Map cuMemberAssessMap, Map rangePkDtoMap, SaOrderExt saOrderExt, List orderRangeVOList) { - CuMemberSettleExt sourceCuMemberTree = cuMemberSettleExtMap.get(saOrderExt.getPkMember()); - CuMemberSettleExt parentMemberTree = cuMemberSettleExtMap.get(sourceCuMemberTree.getPkParent()); - BigDecimal orderPrice = orderRangeVOList.get(0).getOrderPrice(); -// BigDecimal orderAchieve = orderRangeVOList.get(0).getOrderAchieve(); - int pkRange = orderRangeVOList.get(0).getPkRange(); - for (SaOrderRangeDto saOrderRangeDto : orderRangeVOList) { - parentMemberTree = getCuMemberTree(cuMemberSettleExtMap, rangeDtoMap, rangePkDtoMap, awardsMap, bonusConfigDTO, parentMemberTree, saOrderRangeDto, cuAwardsControlMap, cuMemberAssessMap, saOrderExt); - if (parentMemberTree == null) { - break; - } -// if(MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(sourceCuMemberTree.getMemberCode()) || -// MagicNumberConstants.ACHIEVE_SETTLE_MEMBER.equals(parentMemberTree.getMemberCode()) ){ -// if(cuMemberTreeService.queryCuMemberUnderUmbrella(settleName, saOrderExt.getPkMember())) { -// break; -// } -// } - RangeDTO rangeDto = getRangeDto(rangeDtoMap, awardsMap, parentMemberTree, cuAwardsControlMap); - if (saOrderRangeDto.getRangeValue() != null && rangeDto.getRangeValue() != null && - rangeDto.getRangeValue().equals(saOrderRangeDto.getRangeValue())) { - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, parentMemberTree); - CuMemberBonusRange cuMemberBonusRange = getCuMemberBonusRange(bonusConfigDTO, saOrderExt, parentMemberTree, cuMemberBonus); - BigDecimal repurchaseRangeBonus = ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(orderPrice, saOrderRangeDto.getRangePrice()), saOrderRangeDto.getQuantity()); - if (ComputeUtil.compareValue(BigDecimal.ZERO, repurchaseRangeBonus)) { - break; - } - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setPretaxIncome(repurchaseRangeBonus); - cuMemberBonusRange.setPkRange(rangeDto.getPkRange()); - cuMemberBonusRange.setPkBeforeRange(pkRange); - cuMemberBonusRange.setPkOrderItems(saOrderRangeDto.getPkOrderItems()); - rangeRemark(saOrderExt, cuMemberBonusRange, sourceCuMemberTree, parentMemberTree, rangePkDtoMap); - packageRepurchaseRange(bonusConfigDTO, cuMemberBonusRangeList, saOrderExt, cuMemberBonus, cuMemberBonusRange, repurchaseRangeBonus); - if (ComputeUtil.compareEqual(orderPrice, saOrderRangeDto.getRangePrice())) { - break; - } - orderPrice = saOrderRangeDto.getRangePrice(); - pkRange = saOrderRangeDto.getPkRange(); - } - } - } - - private Map> getRangeDtoMap(List orderRangeVOList) { - Map> orderRangeDtoMap = new HashMap<>(); - for (SaOrderRangeDto saOrderRangeDto : orderRangeVOList) { - if (orderRangeDtoMap.containsKey(saOrderRangeDto.getPkOrderItems())) { - orderRangeDtoMap.get(saOrderRangeDto.getPkOrderItems()).add(saOrderRangeDto); - } else { - List saOrderRangeDtoList = new ArrayList<>(); - saOrderRangeDtoList.add(saOrderRangeDto); - orderRangeDtoMap.put(saOrderRangeDto.getPkOrderItems(), saOrderRangeDtoList); - } - } - return orderRangeDtoMap; - } - - private void executeChinaOrderRange(Map cuMemberSettleExtMap, Map rangeDtoMap, Map awardsMap, BonusConfigDTO bonusConfigDTO, Integer period, Map cuMemberBonusMap, Map cuAwardsControlMap, List cuMemberBonusRangeList, Map cuMemberAssessMap, Map rangePkDtoMap, SaOrderExt saOrderExt, List orderRangeVOList) { - CuMemberSettleExt sourceCuMemberTree = cuMemberSettleExtMap.get(saOrderExt.getPkMember()); - if (sourceCuMemberTree == null) { - return; - } - CuMemberSettleExt parentMemberTree = cuMemberSettleExtMap.get(sourceCuMemberTree.getPkParent()); - BigDecimal orderAchieve = orderRangeVOList.get(0).getOrderAchieve(); - int pkRange = orderRangeVOList.get(0).getPkRange(); - for (SaOrderRangeDto saOrderRangeDto : orderRangeVOList) { - parentMemberTree = getCuMemberTree(cuMemberSettleExtMap, rangeDtoMap, rangePkDtoMap, awardsMap, bonusConfigDTO, - parentMemberTree, saOrderRangeDto, cuAwardsControlMap, cuMemberAssessMap, saOrderExt); - if (parentMemberTree == null) { - break; - } - RangeDTO rangeDto = getRangeDto(rangeDtoMap, awardsMap, parentMemberTree, cuAwardsControlMap); - if (saOrderRangeDto.getRangeValue() != null && rangeDto.getRangeValue() != null && - rangeDto.getRangeValue().equals(saOrderRangeDto.getRangeValue())) { - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, parentMemberTree); - CuMemberBonusRange cuMemberBonusRange = getCuMemberBonusRange(bonusConfigDTO, saOrderExt, parentMemberTree, cuMemberBonus); - cuMemberBonusRange.setCalAchieve(saOrderExt.getOrderAmount()); - BigDecimal repurchaseRangeBonus = ComputeUtil.computeMultiply(ComputeUtil.computeSubtract(orderAchieve, saOrderRangeDto.getRangeAchieve()), saOrderRangeDto.getQuantity()); - if (ComputeUtil.compareValue(BigDecimal.ZERO, repurchaseRangeBonus)) { - break; - } - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setPretaxIncome(repurchaseRangeBonus); - cuMemberBonusRange.setPkRange(rangeDto.getPkRange()); - cuMemberBonusRange.setPkBeforeRange(pkRange); - cuMemberBonusRange.setPkOrderItems(saOrderRangeDto.getPkOrderItems()); - rangeRemark(saOrderExt, cuMemberBonusRange, sourceCuMemberTree, parentMemberTree, rangePkDtoMap); - packageRepurchaseRange(bonusConfigDTO, cuMemberBonusRangeList, saOrderExt, cuMemberBonus, cuMemberBonusRange, repurchaseRangeBonus); - if (ComputeUtil.compareEqual(orderAchieve, saOrderRangeDto.getRangeAchieve())) { - break; - } - orderAchieve = saOrderRangeDto.getRangeAchieve(); - pkRange = saOrderRangeDto.getPkRange(); - } - } - } - - private void packageRepurchaseRange(BonusConfigDTO bonusConfigDTO, List cuMemberBonusRangeList, SaOrderExt saOrderExt, CuMemberBonus cuMemberBonus, CuMemberBonusRange cuMemberBonusRange, BigDecimal repurchaseRangeBonus) { - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurRangeIncome(), repurchaseRangeBonus)); - setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - cuMemberBonusRangeList.add(cuMemberBonusRange); - } - - private void calculateLeXueRangeBonus(String settleTableName, Map rangeDtoMap, BonusConfigDTO bonusConfigDTO, - Integer period, Map cuMemberBonusMap, LeXueRangeParam leXueRangeParam, - List specialOrderList, List cuMemberBonusRangeList) { - // 计算乐学易考特殊复购极差,找第一个vip,svip,找到有代金券,代金券-1,奖金给金额,第一个是svip后,就不给 - if (specialOrderList.size() > 0) { - // 查找订单血缘 - Set expandMemberSet = specialOrderList.stream().distinct().map(SaOrderExt::getPkMember).collect(Collectors.toSet()); - List specialMemberSettleExtList = cuMemberTreeService.batchQueryCuMemberSettleParentForSpecial(settleTableName, expandMemberSet); - // 重算的时候首先先把数量还回来,在重新计算,查询订单扣除的记录 - List acPickMemberLogList = acPickServiceApi.queryPickMemberLog(specialOrderList).getData(); - Map pickMemberLogMap = new HashMap<>(ComputeUtil.mapInitCapacity(acPickMemberLogList.size())); - if (CollectionUtil.isNotEmpty(acPickMemberLogList)) { - acPickMemberLogList.forEach(acPickMemberLog -> - pickMemberLogMap.put(acPickMemberLog.getPkMember().toString() + acPickMemberLog.getPkId(), acPickMemberLog)); - leXueRangeParam.setAcPickMemberLogList(acPickMemberLogList); - } - // 初始化父类网体的值 - Map specialmeberSettleExtMap = new HashMap<>(); - getMemberSettle(specialmeberSettleExtMap, specialMemberSettleExtList); - // 还原数量 - specialmeberSettleExtMap.forEach((pkMember, cumemberSettleExt) -> { - String key = pkMember.toString() + cumemberSettleExt.getApPkId(); - if (pickMemberLogMap.containsKey(key)) { - cumemberSettleExt.setUsableQuantity(cumemberSettleExt.getUsableQuantity() + pickMemberLogMap.get(key).getPickQuantity()); - } - }); - List acPickExtList = new ArrayList<>(); - for (SaOrderExt saOrderExt : specialOrderList) { - for (SaOrderItemsExt saOrderItemsExt : saOrderExt.getOrderItemsExtList()) { - if (EYesNo.YES.getIntValue() == saOrderItemsExt.getIsGift() || ComputeUtil.compareEqual(saOrderItemsExt.getPrice(), BigDecimal.ZERO) || - ComputeUtil.compareEqual(saOrderItemsExt.getAchievement(), BigDecimal.ZERO)) { - continue; - } - CuMemberSettleExt sourceMemberSettleExt = specialmeberSettleExtMap.get(saOrderExt.getPkMember()); - if (sourceMemberSettleExt == null) { - continue; - } - // 找不到父级了或者找到第一个svip直接跳出 - boolean flag = Boolean.TRUE; - Long pkParent = sourceMemberSettleExt.getPkParent(); - int gradeValue = sourceMemberSettleExt.getGradeValue(); - while (true) { - CuMemberSettleExt targetMemberSettleExt = specialmeberSettleExtMap.get(pkParent); - if (targetMemberSettleExt == null) { - break; - } - if (gradeValue < targetMemberSettleExt.getGradeValue() && EGrade.VIP.getValue() == targetMemberSettleExt.getGradeValue() && flag) { - // 获得奖金 - // 验证是否有奖金 - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue())) { - pkParent = targetMemberSettleExt.getPkParent(); - sourceMemberSettleExt = targetMemberSettleExt; - continue; - } - AcPickExt acPickExt = calculateRangeBonus(rangeDtoMap, bonusConfigDTO, period, cuMemberBonusMap, saOrderExt, saOrderItemsExt, sourceMemberSettleExt, - targetMemberSettleExt, cuMemberBonusRangeList); - if (acPickExt != null) { - acPickExtList.add(acPickExt); - } - pkParent = targetMemberSettleExt.getPkParent(); - sourceMemberSettleExt = targetMemberSettleExt; - flag = Boolean.FALSE; - } else if (gradeValue < targetMemberSettleExt.getGradeValue() && EGrade.S_VIP.getValue() == targetMemberSettleExt.getGradeValue()) { - // 获得奖金 - if (validatePkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue())) { - break; - } - AcPickExt acPickExt = calculateRangeBonus(rangeDtoMap, bonusConfigDTO, period, cuMemberBonusMap, saOrderExt, saOrderItemsExt, sourceMemberSettleExt, - targetMemberSettleExt, cuMemberBonusRangeList); - if (acPickExt != null) { - acPickExtList.add(acPickExt); - } - break; - } else { - pkParent = targetMemberSettleExt.getPkParent(); - sourceMemberSettleExt = targetMemberSettleExt; - } - } - } - } - if (acPickExtList.size() > 0) { - leXueRangeParam.setAcPickExtList(acPickExtList); - } - } - } - - private AcPickExt calculateRangeBonus(Map rangeDtoMap, BonusConfigDTO bonusConfigDTO, Integer period, - Map cuMemberBonusMap, SaOrderExt saOrderExt, SaOrderItemsExt saOrderItemsExt, - CuMemberSettleExt sourceMemberSettleExt, - CuMemberSettleExt targetMemberSettleExt, List cuMemberBonusRangeList) { - if (targetMemberSettleExt.getUsableQuantity() != null && targetMemberSettleExt.getUsableQuantity() > 0) { - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, targetMemberSettleExt); - CuMemberBonusRange cuMemberBonusRange = getCuMemberBonusRange(bonusConfigDTO, saOrderExt, targetMemberSettleExt, cuMemberBonus); - cuMemberBonusRange.setCalAchieve(saOrderItemsExt.getAchievement()); - cuMemberBonusRange.setCalValue(BigDecimal.ZERO); - cuMemberBonusRange.setPretaxIncome(ComputeUtil.computeMultiply(BigDecimal.valueOf(saOrderItemsExt.getWaresQuantity()), - ComputeUtil.computeDivide(targetMemberSettleExt.getRetailPrice(), BigDecimal.ONE))); - String key = targetMemberSettleExt.getPkSettleCountry().toString() + ERangeType.GRADE.getValue() + targetMemberSettleExt.getPkGrade(); - cuMemberBonusRange.setPkRange(rangeDtoMap.get(key).getPkRange()); - String beforeKey = targetMemberSettleExt.getPkSettleCountry().toString() + ERangeType.GRADE.getValue() + targetMemberSettleExt.getPkGrade(); - cuMemberBonusRange.setPkBeforeRange(rangeDtoMap.get(beforeKey).getPkRange()); - cuMemberBonusRange.setIncomeRatio(ComputeUtil.computeDivide(ComputeUtil.computeMultiply(cuMemberBonusRange.getPretaxIncome(), BigDecimal.ONE), saOrderExt.getOrderAmount())); - cuMemberBonusRange.setPkOrderItems(0L); - // 计算比例 - cuMemberBonusRange.setPkBonusItems(getPkBonusItems(bonusConfigDTO, targetMemberSettleExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue())); - // 收益占比 - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusRange, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - xueRangeRemark(saOrderExt, cuMemberBonusRange, sourceMemberSettleExt, targetMemberSettleExt); - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusRange.getIncomeStatus()) { - cuMemberBonus.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonus.getRepurRangeIncome(), cuMemberBonusRange.getPretaxIncome())); - setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusRange); - } - cuMemberBonusRangeList.add(cuMemberBonusRange); - targetMemberSettleExt.setUsableQuantity(targetMemberSettleExt.getUsableQuantity() - saOrderItemsExt.getWaresQuantity()); - AcPickExt acPickExt = new AcPickExt(); - acPickExt.setPkId(targetMemberSettleExt.getApPkId()); - acPickExt.setPkMember(targetMemberSettleExt.getPkMember()); - acPickExt.setOrderCode(saOrderExt.getOrderCode()); - acPickExt.setPickType(EPickType.COUPON.getValue()); - acPickExt.setUsedQuantity(saOrderItemsExt.getWaresQuantity()); - acPickExt.setPkBaseConfig(0L); - acPickExt.setPkDataId(targetMemberSettleExt.getPkDataId()); - return acPickExt; - } - return null; - } - - /** - * 根据极差获取会员 - */ - private CuMemberSettleExt getCuMemberTree(Map cuMemberTreeMap, Map rangeDtoMap, Map rangePkDtoMap, - Map awardsMap, BonusConfigDTO bonusConfigDTO, CuMemberSettleExt parentMemberTree, - SaOrderRangeDto saOrderRangeDto, Map cuAwardsControlMap, Map cuMemberAssessMap, SaOrderExt saOrderExt) { - if (parentMemberTree == null) { - return null; - } - RangeDTO rangeDto = getRangeDto(rangeDtoMap, awardsMap, parentMemberTree, cuAwardsControlMap); - RangeDTO orderRangeDto = rangePkDtoMap.get(saOrderRangeDto.getPkCountry().toString() + saOrderRangeDto.getPkRange()); - if (rangeDto == null || orderRangeDto == null) { - return null; - } - // 需要复购考核,复购考核未通过的没有奖金 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(parentMemberTree.getPkMember()); - boolean assessFlag = EYesNo.NO.getIntValue() == parentMemberTree.getPurchaseStatus() && cuMemberAssess == null; - // 海粉没有复购极差 - if (Objects.equals(MagicNumberConstants.CHINA_HA_FUN, parentMemberTree.getPkGrade()) || ECategory.NORMAL.getValue() != parentMemberTree.getCategory() || EAccountStatus.STOP_INCOME.getValue() == parentMemberTree.getAccountStatus() || - validatePkBonusItems(bonusConfigDTO, parentMemberTree.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()) || - rangeDto.getRangeValue() < orderRangeDto.getRangeValue() || assessFlag) { - parentMemberTree = cuMemberTreeMap.get(parentMemberTree.getPkParent()); - if (parentMemberTree == null) { - return null; - } - parentMemberTree = getCuMemberTree(cuMemberTreeMap, rangeDtoMap, rangePkDtoMap, awardsMap, bonusConfigDTO, - parentMemberTree, saOrderRangeDto, cuAwardsControlMap, cuMemberAssessMap, saOrderExt); - } - return parentMemberTree; - } - - /** - * 根据极差获取会员 - */ - private CuMemberSettleExt getRangeCuMemberTree(Map cuMemberTreeMap, Map rangeDtoMap, Map awardsMap, - BonusConfigDTO bonusConfigDTO, CuMemberSettleExt sourceMemberTree, CuMemberSettleExt parentMemberTree, - Map cuAwardsControlMap, Map cuMemberAssessMap) { - RangeDTO parentRangeDto = getRangeDto(rangeDtoMap, awardsMap, parentMemberTree, cuAwardsControlMap); - RangeDTO sourceRangeDto = getRangeDto(rangeDtoMap, awardsMap, sourceMemberTree, cuAwardsControlMap); - if (parentRangeDto == null || sourceRangeDto == null || parentMemberTree == null) { - return null; - } - // 需要复购考核,复购考核未通过的没有奖金 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(parentMemberTree.getPkMember()); - boolean assessFlag = EYesNo.NO.getIntValue() == parentMemberTree.getPurchaseStatus() && cuMemberAssess == null; - if (ECategory.NORMAL.getValue() != parentMemberTree.getCategory() || EAccountStatus.STOP_INCOME.getValue() == parentMemberTree.getAccountStatus() || - validatePkBonusItems(bonusConfigDTO, parentMemberTree.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()) || - parentRangeDto.getRangeValue() < sourceRangeDto.getRangeValue() || assessFlag) { - parentMemberTree = cuMemberTreeMap.get(parentMemberTree.getPkParent()); - if (parentMemberTree == null) { - return null; - } - parentMemberTree = getRangeCuMemberTree(cuMemberTreeMap, rangeDtoMap, awardsMap, bonusConfigDTO, sourceMemberTree, parentMemberTree, cuAwardsControlMap, cuMemberAssessMap); - } - return parentMemberTree; - } - - private CuMemberSettleExt getSpecialRangeCuMemberTree(Map cuMemberTreeMap, - BonusConfigDTO bonusConfigDTO, CuMemberSettleExt sourceMemberTree, CuMemberSettleExt parentMemberTree, - Map cuMemberAssessMap, int pkGrade) { - // 需要复购考核,复购考核未通过的没有奖金 -// CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(parentMemberTree.getPkMember()); -// boolean assessFlag = EYesNo.NO.getIntValue() == parentMemberTree.getPurchaseStatus() && cuMemberAssess == null; - if (ECategory.NORMAL.getValue() != parentMemberTree.getCategory() || EAccountStatus.STOP_INCOME.getValue() == parentMemberTree.getAccountStatus() || - validatePkBonusItems(bonusConfigDTO, parentMemberTree.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue()) || - parentMemberTree.getPkGrade() <= pkGrade || parentMemberTree.getPkGrade() <= sourceMemberTree.getPkGrade()) { -// if(parentMemberTree.getPkAwards() > 1 && ECategory.NORMAL.getValue() == parentMemberTree.getCategory()) { -// return parentMemberTree; -// } - parentMemberTree = cuMemberTreeMap.get(parentMemberTree.getPkParent()); - if (parentMemberTree == null) { - return null; - } - parentMemberTree = getSpecialRangeCuMemberTree(cuMemberTreeMap, bonusConfigDTO, sourceMemberTree, parentMemberTree, cuMemberAssessMap, pkGrade); - } - return parentMemberTree; - } - - /** - * @param period 期间 - * @param cuMemberBonusMap 奖金汇总 - * @param cuMemberBonusExpandList 拓展奖奖金明细 - * @param saOrderExt 订单 - * @param touchNum 碰次 - * @param i 当前碰次 - * @param sourceMemberSettleExt 提供奖金的人 - * @param targetMemberSettleExt 获得奖金的人 - * @param bdGrade 等级对应的参数 - * @param countryExpandRatio 4-n时计算国家对应的参数 - * @Description: 计算量碰 - * @return: void - * @Author: sui q - * @Date: 2022/11/16 15:51 - */ - private void calculateRepurchaseExpandBonusByAchieve(Integer period, Map weekMemberBonusMap, Map cuMemberBonusMap, - BonusConfigDTO bonusConfigDTO, Map systemConfigMap, List cuMemberBonusExpandList, SaOrderExt saOrderExt, int touchNum, int i, - CuMemberSettleExt sourceMemberSettleExt, CuMemberSettleExt targetMemberSettleExt, BdGrade bdGrade, BigDecimal countryExpandRatio, Integer pkBonusItems, - Map cuMemberAssessMap) { - // 验证封顶方式 1=日 2=周,若是周的话需要获取 周奖金 - BigDecimal weekRepExpandIncome = BigDecimal.ZERO; - if (systemConfigMap.containsKey(targetMemberSettleExt.getPkSettleCountry() + ESystemConfig.EXPAND_CAP_METHOD.getKey())) { - String expandCapMethod = systemConfigMap.get(targetMemberSettleExt.getPkSettleCountry() + ESystemConfig.EXPAND_CAP_METHOD.getKey()); - if (Objects.equals(expandCapMethod, EExpandCapMethod.WEEK_SETTLE.toString()) && - weekMemberBonusMap.containsKey(targetMemberSettleExt.getPkMember())) { - weekRepExpandIncome = weekMemberBonusMap.get(targetMemberSettleExt.getPkMember()).getRepurExpandIncome(); - } - } - // 国内使用首购比例首购封顶 - BigDecimal gradeExpandRatio = bdGrade.getRepurchaseRatio(); - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - gradeExpandRatio = bdGrade.getExpandRatio(); - // 验证受益人等级 - CuMember cuMember = cuMemberService.getMember(targetMemberSettleExt.getMemberCode()); - if (cuMember != null && DateUtils.compareDate(DateUtils.parseStringToDate("2024-09-11"), cuMember.getPayTime()) > 0) { - if (targetMemberSettleExt.getGradeValue() == EGrade.VIP.getValue()) { - if (ComputeUtil.compareValue(countryExpandRatio, BigDecimal.valueOf(11)) && (i <= 3 || touchNum <= 10)) { - countryExpandRatio = BigDecimal.valueOf(13); - } - } else if (targetMemberSettleExt.getGradeValue() == EGrade.MAKER.getValue()) { - if (ComputeUtil.compareValue(countryExpandRatio, BigDecimal.valueOf(10)) && (i <= 3 || touchNum <= 10)) { - countryExpandRatio = BigDecimal.valueOf(11); - } - } - } - } - // 获取等级封顶值 - CuMemberBonus cuMemberBonus = getCuMemberBonus(period, cuMemberBonusMap, saOrderExt, targetMemberSettleExt); - BigDecimal calAchieve; - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - calAchieve = ComputeUtil.obtainMinAchieve(targetMemberSettleExt.getABalance(), targetMemberSettleExt.getBBalance()); - } else { - calAchieve = ComputeUtil.obtainMinAchieve(targetMemberSettleExt.getRepABalance(), targetMemberSettleExt.getRepBBalance()); - } - CuMemberBonusExpand cuMemberBonusExpand = getCuMemberBonusExpand(saOrderExt, touchNum, i, targetMemberSettleExt, countryExpandRatio, cuMemberBonus, calAchieve, pkBonusItems, BigDecimal.ZERO); - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - targetMemberSettleExt.setABalance(ComputeUtil.computeSubtract(targetMemberSettleExt.getABalance(), calAchieve)); - targetMemberSettleExt.setBBalance(ComputeUtil.computeSubtract(targetMemberSettleExt.getBBalance(), calAchieve)); - } else { - // 扣减a、b区结余 - targetMemberSettleExt.setRepABalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRepABalance(), calAchieve)); - targetMemberSettleExt.setRepBBalance(ComputeUtil.computeSubtractAbs(targetMemberSettleExt.getRepBBalance(), calAchieve)); - } - // 计算收益 先计算出会员最大的收益 - BigDecimal maxIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), gradeExpandRatio); - BigDecimal actualIncome = ComputeUtil.computeBonusMultiply(cuMemberBonusExpand.getCalAchieve(), countryExpandRatio); - // 获取等级对应的封顶值 - BigDecimal expandIncome = ComputeUtil.computeAdd(ComputeUtil.computeAdd(cuMemberBonus.getRepurExpandIncome(), actualIncome), weekRepExpandIncome); - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - // 获取等级对应的封顶值 - expandIncome = ComputeUtil.computeAdd(ComputeUtil.computeAdd(cuMemberBonus.getExpandIncome(), expandIncome), weekRepExpandIncome); - // 判断收益 是否超过封顶值,超过的话变为封顶值 - // 判断是否烧伤,判断原奖金是否>=封顶值,奖金到了就是烧伤 - // 验证会员状态 封停状态跟冻结都正常计算奖金,封停的账号发放的时候奖金发放为0,冻结的账号正常发放,不能登录 - packageCuMemberBonusExpand(cuMemberBonusExpand, cuMemberBonus, bdGrade.getExpandCapping(), maxIncome, actualIncome); - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberBonus.getExpandIncome(), cuMemberBonus.getRepurExpandIncome()), bdGrade.getExpandCapping())) { - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusExpand.getIncomeStatus()) { - cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - expandIncome = ComputeUtil.computeSubtract(bdGrade.getExpandCapping(), ComputeUtil.computeAdd(cuMemberBonus.getExpandIncome(), cuMemberBonus.getRepurExpandIncome())); - } else if (ComputeUtil.compareGreaterThan(expandIncome, bdGrade.getExpandCapping())) { - BigDecimal realIncome = ComputeUtil.computeSubtract(ComputeUtil.computeSubtract(bdGrade.getExpandCapping(), weekRepExpandIncome), ComputeUtil.computeAdd(cuMemberBonus.getExpandIncome(), cuMemberBonus.getRepurExpandIncome())); - //存在一半烧伤一半正常的值,拆2条 - // 拓展明细表 进行修改 - packageCuMemberBonusExpand(cuMemberBonusExpand, cuMemberBonus, bdGrade.getExpandCapping(), realIncome, realIncome); - CuMemberBonusExpand fireCuMemberBonusExpand = BeanUtil.copyProperties(cuMemberBonusExpand, CuMemberBonusExpand.class); - BigDecimal fireIncome = ComputeUtil.computeSubtract(maxIncome, realIncome); - if (EBonusIncomeStatus.NORMAL.getValue() == fireCuMemberBonusExpand.getIncomeStatus()) { - fireCuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - packageCuMemberBonusExpand(fireCuMemberBonusExpand, cuMemberBonus, bdGrade.getExpandCapping(), fireIncome, fireIncome); - // 收益占比 - setBonusDetailDeduct(bonusConfigDTO, fireCuMemberBonusExpand, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - expandRemark(saOrderExt, fireCuMemberBonusExpand, sourceMemberSettleExt, targetMemberSettleExt); - cuMemberBonusExpandList.add(fireCuMemberBonusExpand); - // 拓展收益取封顶最大值 - expandIncome = ComputeUtil.computeSubtract(bdGrade.getExpandCapping(), weekRepExpandIncome); - } - } else { - // 判断收益 是否超过封顶值,超过的话变为封顶值 - // 判断是否烧伤,判断原奖金是否>=封顶值,奖金到了就是烧伤 - packageCuMemberBonusRepurchaseExpand(cuMemberBonusExpand, cuMemberBonus, bdGrade.getRepurchaseCapping(), maxIncome, actualIncome); - if (ComputeUtil.compareValue(ComputeUtil.computeAdd(cuMemberBonus.getRepurExpandIncome(), weekRepExpandIncome), bdGrade.getRepurchaseCapping())) { - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusExpand.getIncomeStatus()) { - cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - expandIncome = ComputeUtil.computeSubtract(bdGrade.getRepurchaseCapping(), weekRepExpandIncome); - } else if (ComputeUtil.compareGreaterThan(expandIncome, bdGrade.getRepurchaseCapping())) { - BigDecimal realIncome = ComputeUtil.computeSubtract(ComputeUtil.computeSubtract(bdGrade.getRepurchaseCapping(), weekRepExpandIncome), cuMemberBonus.getRepurExpandIncome()); - //存在一半烧伤一半正常的值,拆2条 - // 拓展明细表 进行修改 - packageCuMemberBonusRepurchaseExpand(cuMemberBonusExpand, cuMemberBonus, bdGrade.getRepurchaseCapping(), realIncome, realIncome); - CuMemberBonusExpand fireCuMemberBonusExpand = BeanUtil.copyProperties(cuMemberBonusExpand, CuMemberBonusExpand.class); - BigDecimal fireIncome = ComputeUtil.computeSubtract(maxIncome, realIncome); - if (EBonusIncomeStatus.NORMAL.getValue() == fireCuMemberBonusExpand.getIncomeStatus()) { - fireCuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - packageCuMemberBonusRepurchaseExpand(fireCuMemberBonusExpand, cuMemberBonus, bdGrade.getRepurchaseCapping(), fireIncome, fireIncome); - // 收益占比 - setBonusDetailDeduct(bonusConfigDTO, fireCuMemberBonusExpand, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - repurchaseExpandRemark(saOrderExt, fireCuMemberBonusExpand, sourceMemberSettleExt, targetMemberSettleExt); - cuMemberBonusExpandList.add(fireCuMemberBonusExpand); - // 拓展收益取封顶最大值 - expandIncome = ComputeUtil.computeSubtract(bdGrade.getRepurchaseCapping(), weekRepExpandIncome); - } - } - BdBonusDeduct bdBonusDeduct = setBonusDetailDeduct(bonusConfigDTO, cuMemberBonusExpand, saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()); - // 正常状态的辅导奖需要判断复购考核,复购考核不通过的状态变为烧伤 - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusExpand.getIncomeStatus() - && EYesNo.NO.getIntValue() == targetMemberSettleExt.getPurchaseStatus()) { - // 需要复购考核的 - CuMemberAssess cuMemberAssess = cuMemberAssessMap.get(targetMemberSettleExt.getPkMember()); - if (cuMemberAssess == null) { - cuMemberBonusExpand.setIncomeStatus(EBonusIncomeStatus.FIRE_BURN.getValue()); - } - } - if (EBonusIncomeStatus.NORMAL.getValue() == cuMemberBonusExpand.getIncomeStatus()) { - if (targetMemberSettleExt.getPkSettleCountry().equals(CountryConstants.CHINA_COUNTRY)) { - cuMemberBonus.setRepurExpandIncome(ComputeUtil.computeSubtract(expandIncome, cuMemberBonus.getExpandIncome())); - setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusExpand); - } else { - cuMemberBonus.setRepurExpandIncome(ComputeUtil.computeSubtract(expandIncome, weekRepExpandIncome)); - setPurchaseTotal(bdBonusDeduct, cuMemberBonus, cuMemberBonusExpand); - } - } - repurchaseExpandRemark(saOrderExt, cuMemberBonusExpand, sourceMemberSettleExt, targetMemberSettleExt); - cuMemberBonusExpandList.add(cuMemberBonusExpand); - } - - - private CuMemberBonusRange getCuMemberBonusRange(BonusConfigDTO bonusConfigDTO, SaOrderExt saOrderExt, CuMemberSettleExt cuMemberSettleExt, CuMemberBonus cuMemberBonus) { - CuMemberBonusRange cuMemberBonusRange = CuMemberBonusRange.builder() - .pkOrder(saOrderExt.getPkId()) - .pkBonus(cuMemberBonus.getPkId()) - .pkBonusItems(getPkBonusItems(bonusConfigDTO, cuMemberSettleExt.getPkSettleCountry(), EBonusItems.REPURCHASE_RANGE_INCOME.getValue())) - // 正常还是烧伤 - .incomeStatus(cuMemberSettleExt.getIncomeStatus()) - .calType(ECalType.VALUE.getValue()) - .calAchieve(saOrderExt.getOrderAmount()) - .calValue(BigDecimal.ZERO) - .incomeRatio(BigDecimal.ZERO) - .incomeDialRatio(BigDecimal.ZERO) - .orderDialRatio(BigDecimal.ZERO) - .build(); - cuMemberBonusRange.setPkCountry(cuMemberSettleExt.getPkSettleCountry()); - cuMemberBonusRange.setPkCreator(MagicNumberConstants.PK_ADMIN); - return cuMemberBonusRange; - } -} 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 33e98b72..47593621 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 @@ -5,9 +5,7 @@ import cn.hutool.core.collection.CollectionUtil; import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService; import com.hzs.bonus.achieve.service.ICuMemberTreeService; import com.hzs.bonus.base.service.ICuAwardsControlService; -import com.hzs.bonus.base.service.ICuMemberService; import com.hzs.bonus.bonus.param.BonusExpandParam; -import com.hzs.bonus.bonus.param.LeXueRangeParam; import com.hzs.bonus.bonus.service.*; import com.hzs.bonus.bonus.vo.BonusRecordDetailVO; import com.hzs.bonus.bonus.vo.MemberBonusDetailCalVO; @@ -33,7 +31,6 @@ import com.hzs.system.base.ISystemConfigServiceApi; import com.hzs.system.config.IAwardsServiceApi; import com.hzs.system.config.IBonusItemsServiceApi; import com.hzs.system.config.dto.BonusConfigDTO; -import com.hzs.system.config.dto.RangeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.beans.factory.annotation.Autowired; @@ -77,8 +74,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { @Autowired private BonusSettleFirstPurchaseHandle bonusSettleFirstPurchaseHandle; @Autowired - private BonusSettlePurchaseHandle bonusSettlePurchaseHandle; - @Autowired private ICuMemberRiskControlService cuMemberRiskControlService; private ICuMemberBonusService cuMemberBonusService; @@ -438,11 +433,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { bonusRecordDetailVO.getCuMemberBonusExpandList().addAll(cuMemberBonusExpandList); } } - //*********************************计算领导奖************************/ - // 判断是否有量奖,有量奖有辅导奖 -// List cuMemberBonusCoachList = bonusSettleFirstPurchaseHandle.calculateCoachBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, firPurchaseOrderList, -// cuMemberBonusExpandList, period, cuMemberBonusMap, cuAwardsControlMap, riskControlMap); -// bonusRecordDetailVO.setCuMemberBonusCoachList(cuMemberBonusCoachList); //*********************************计算服务奖************************/ List cuMemberBonusDetailList = bonusSettleFirstPurchaseHandle.calculateServiceBonus(cuMemberSettleExtMap, settleDate, settleTableName, bonusConfigDTO, firPurchaseOrderList, period, cuMemberBonusMap); bonusRecordDetailVO.setCuMemberBonusDetailList(cuMemberBonusDetailList); @@ -456,10 +446,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusExpand); memberBonusDetailCalVO.setExpandIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getExpandIncome(), cuMemberBonusExpand.getRealIncome())); }); -// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { -// MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusCoach); -// memberBonusDetailCalVO.setCoachIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getCoachIncome(), cuMemberBonusCoach.getRealIncome())); -// }); cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> { MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusDetail); memberBonusDetailCalVO.setServiceIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getServiceIncome(), cuMemberBonusDetail.getRealIncome())); @@ -481,13 +467,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusExpand.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getExpandIncome(), memberBonusDetailCalVO.getRealIncome())); cuMemberBonusExpand.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount())); }); - // 辅导收益 -// cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> { -// MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusCoach.getPkOrder()); -// SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder()); -// cuMemberBonusCoach.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getCoachIncome(), memberBonusDetailCalVO.getRealIncome())); -// cuMemberBonusCoach.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount())); -// }); // 报单服务费 cuMemberBonusDetailList.forEach(cuMemberBonusDetail -> { MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusDetail.getPkOrder()); @@ -495,97 +474,6 @@ public class BonusSettleServiceImpl implements IBonusSettleService { cuMemberBonusDetail.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getServiceIncome(), memberBonusDetailCalVO.getRealIncome())); cuMemberBonusDetail.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), ComputeUtil.computeDivide(saOrderExt.getOrderAmount(), saOrderExt.getInExchangeRate()))); }); -// //*********************************计算分红奖,理论最大值************************/ -// Map> saOrderMap = new HashMap<>(ComputeUtil.mapInitCapacity(firPurchaseOrderList.size())); -// firPurchaseOrderList.forEach(saOrderExt -> { -// Integer key = saOrderExt.getPkCountry(); -// if (saOrderMap.containsKey(key)) { -// saOrderMap.get(key).add(saOrderExt); -// } else { -// List saOrderExtList = new ArrayList<>(); -// saOrderExtList.add(saOrderExt); -// saOrderMap.put(key, saOrderExtList); -// } -// }); -// saOrderMap.forEach((pkCountry, saOrderExtList) -> { -// CuMemberShareMax cuMemberShareMax = CuMemberShareMax.builder() -// .period(period) -// .pkRate(saOrderExtList.get(0).getPkRate()) -// .shareIncome(BigDecimal.ZERO) -// .orderAchieve(BigDecimal.ZERO) -// .build(); -// cuMemberShareMax.setPkCountry(pkCountry); -// cuMemberShareMax.setPkCreator(MagicNumberConstants.PK_ADMIN); -// saOrderExtList.forEach(saOrderExt -> { -// cuMemberShareMax.setOrderAchieve(ComputeUtil.computeAdd(cuMemberShareMax.getOrderAchieve(), saOrderExt.getOrderAchieve())); -// cuMemberShareMax.setShareIncome(ComputeUtil.computeAdd(cuMemberShareMax.getShareIncome(), ComputeUtil.computeBonusMultiply(saOrderExt.getOrderAchieve(), BigDecimal.valueOf(5)))); -// }); -// cuMemberShareMaxService.insertMaxShareBonus(cuMemberShareMax); -// }); - } - - /** - * 计算首购订单的奖金 - * - * @param settleTableName 结算日表 - * @param settleDate 结算日期 - * @param bonusConfigDTO 各个国家奖金参数 - * @param purchaseOrderList 首购订单 - */ - private LeXueRangeParam calculatePurchaseOrder(Map riskControlMap, Map cuMemberSettleExtMap, String settleTableName, String settleDate, Map rangeDtoMap, - Map awardsMap, BonusConfigDTO bonusConfigDTO, Map systemConfigMap, List purchaseOrderList, Integer period, Map weekMemberBonusMap, - Map cuMemberBonusMap, BonusRecordDetailVO bonusRecordDetailVO, Map cuAwardsControlMap, Map cuBonusExpandExtMap) { - //****************************复购直推*****************************/ 查找10代血缘,验证复购考核,考核通过的给与奖金 紧缩 -// List cuMemberBonusPushList = bonusSettlePurchaseHandle.calculateRepurchasePushBonus(cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, purchaseOrderList, period, cuMemberBonusMap); -// if (cuMemberBonusPushList.size() > 0) { -// if (bonusRecordDetailVO.getCuMemberBonusPushList() == null) { -// bonusRecordDetailVO.setCuMemberBonusPushList(cuMemberBonusPushList); -// } else { -// bonusRecordDetailVO.getCuMemberBonusPushList().addAll(cuMemberBonusPushList); -// } -// } - //****************************复购量奖*****************************/ - List cuMemberBonusExpandList = bonusSettlePurchaseHandle.calculateRepurchaseExpandBonus(riskControlMap, cuMemberSettleExtMap, settleTableName, settleDate, bonusConfigDTO, systemConfigMap, purchaseOrderList, period, weekMemberBonusMap, cuMemberBonusMap, cuBonusExpandExtMap); - if (cuMemberBonusExpandList.size() > 0) { - if (bonusRecordDetailVO.getCuMemberBonusExpandList() == null) { - bonusRecordDetailVO.setCuMemberBonusExpandList(cuMemberBonusExpandList); - } else { - bonusRecordDetailVO.getCuMemberBonusExpandList().addAll(cuMemberBonusExpandList); - } - } - LeXueRangeParam leXueRangeParam = new LeXueRangeParam(); - //****************************复购极差*****************************/ - List cuMemberBonusRangeList = bonusSettlePurchaseHandle.calculateRepurchaseRangeBonus(cuMemberSettleExtMap, settleTableName, settleDate, rangeDtoMap, awardsMap, - bonusConfigDTO, purchaseOrderList, period, cuMemberBonusMap, cuAwardsControlMap, leXueRangeParam); - bonusRecordDetailVO.setCuMemberBonusRangeList(cuMemberBonusRangeList); - Map memberBonusDetailCalVoMap = new HashMap<>(ComputeUtil.mapInitCapacity(purchaseOrderList.size())); - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusExpand); - memberBonusDetailCalVO.setRepExpandIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getRepExpandIncome(), cuMemberBonusExpand.getRealIncome())); - }); - cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { - MemberBonusDetailCalVO memberBonusDetailCalVO = calculateOrderRatio(memberBonusDetailCalVoMap, cuMemberBonusRange); - memberBonusDetailCalVO.setRepRangeIncome(ComputeUtil.computeAdd(memberBonusDetailCalVO.getRepRangeIncome(), cuMemberBonusRange.getRealIncome())); - }); - Map saOrderExtMap = new HashMap<>(ComputeUtil.mapInitCapacity(purchaseOrderList.size())); - purchaseOrderList.forEach(saOrderExt -> - saOrderExtMap.put(saOrderExt.getPkId(), saOrderExt)); - // 复购拓展 - cuMemberBonusExpandList.forEach(cuMemberBonusExpand -> { - MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusExpand.getPkOrder()); - SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder()); - cuMemberBonusExpand.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRepExpandIncome(), memberBonusDetailCalVO.getRealIncome())); - cuMemberBonusExpand.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount())); - }); - // 复购极差 - cuMemberBonusRangeList.forEach(cuMemberBonusRange -> { - MemberBonusDetailCalVO memberBonusDetailCalVO = memberBonusDetailCalVoMap.get(cuMemberBonusRange.getPkOrder()); - SaOrderExt saOrderExt = saOrderExtMap.get(memberBonusDetailCalVO.getPkOrder()); - cuMemberBonusRange.setIncomeDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRepRangeIncome(), memberBonusDetailCalVO.getRealIncome())); - cuMemberBonusRange.setOrderDialRatio(ComputeUtil.computeDivide(memberBonusDetailCalVO.getRealIncome(), saOrderExt.getOrderAmount())); - }); - // 插入奖金表 奖金明细表 - return leXueRangeParam; } /** 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 fbfcc117..486a739d 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 @@ -13,12 +13,7 @@ import java.util.List; import java.util.Set; /** - *

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

- * - * @author hzs - * @since 2022-11-15 */ @Service public class CuMemberBonusCoachServiceImpl extends ServiceImpl implements ICuMemberBonusCoachService { @@ -37,16 +32,16 @@ public class CuMemberBonusCoachServiceImpl extends ServiceImpl cuMemberBonusCoachList, Set memberIdSet) { - if(cuMemberBonusCoachList.size() == 0){ + if (cuMemberBonusCoachList.size() == 0) { return; } List cuMemberBonusCoaches = new ArrayList<>(); for (CuMemberBonusCoach cuMemberBonusCoach : cuMemberBonusCoachList) { - if(memberIdSet.contains(cuMemberBonusCoach.getPkBonus())){ + if (memberIdSet.contains(cuMemberBonusCoach.getPkBonus())) { cuMemberBonusCoaches.add(cuMemberBonusCoach); } } - if(cuMemberBonusCoaches.size()==0){ + if (cuMemberBonusCoaches.size() == 0) { return; } List> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusCoaches); diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusDetailServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusDetailServiceImpl.java index b64edc9d..31393c29 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusDetailServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusDetailServiceImpl.java @@ -13,22 +13,13 @@ import java.util.List; import java.util.Set; /** - *

* 会员奖金-奖金收益明细表(报单费) 服务实现类 - *

- * - * @author hzs - * @since 2022-11-17 */ @Service public class CuMemberBonusDetailServiceImpl extends ServiceImpl implements ICuMemberBonusDetailService { - private CuMemberBonusSettle cuMemberBonusSettle; - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private CuMemberBonusSettle cuMemberBonusSettle; @Override public void deleteCuMemberBonusDetail(Integer period) { @@ -37,16 +28,16 @@ public class CuMemberBonusDetailServiceImpl extends ServiceImpl cuMemberBonusDetailList, Set memberIdSet) { - if(cuMemberBonusDetailList.size() == 0){ + if (cuMemberBonusDetailList.size() == 0) { return; } List cuMemberBonusDetails = new ArrayList<>(); for (CuMemberBonusDetail cuMemberBonusDetail : cuMemberBonusDetailList) { - if(memberIdSet.contains(cuMemberBonusDetail.getPkBonus())){ + if (memberIdSet.contains(cuMemberBonusDetail.getPkBonus())) { cuMemberBonusDetails.add(cuMemberBonusDetail); } } - if(cuMemberBonusDetails.size()==0){ + if (cuMemberBonusDetails.size() == 0) { return; } List> lists = cuMemberBonusSettle.handleCutList(cuMemberBonusDetails); @@ -54,8 +45,4 @@ public class CuMemberBonusDetailServiceImpl extends ServiceImpl * 会员奖金-拓展收益明细表 服务实现类 - *

- * - * @author hzs - * @since 2022-11-15 */ @Service public class CuMemberBonusExpandServiceImpl extends ServiceImpl implements ICuMemberBonusExpandService { - private CuMemberBonusSettle cuMemberBonusSettle; - @Autowired - public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) { - this.cuMemberBonusSettle = cuMemberBonusSettle; - } + private CuMemberBonusSettle cuMemberBonusSettle; @Override public void deleteCuMemberBonusExpand(Integer period) { @@ -37,16 +28,16 @@ public class CuMemberBonusExpandServiceImpl extends ServiceImpl cuMemberBonusExpandList, Set memberIdSet) { - if(cuMemberBonusExpandList.size() == 0){ + if (cuMemberBonusExpandList.size() == 0) { return; } List memberBonusExpands = new ArrayList<>(); for (CuMemberBonusExpand cuMemberBonusExpand : cuMemberBonusExpandList) { - if(memberIdSet.contains(cuMemberBonusExpand.getPkBonus())){ + if (memberIdSet.contains(cuMemberBonusExpand.getPkBonus())) { memberBonusExpands.add(cuMemberBonusExpand); } } - if(memberBonusExpands.size()==0){ + if (memberBonusExpands.size() == 0) { return; } List> lists = cuMemberBonusSettle.handleCutList(memberBonusExpands); @@ -54,9 +45,5 @@ public class CuMemberBonusExpandServiceImpl extends ServiceImpl cuMemberBonusExpandList) { - baseMapper.insertCuMemberBonusExpand(cuMemberBonusExpandList); - } } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java index f160257b..5d4a1fb7 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberBonusPushHisServiceImpl.java @@ -1,32 +1,15 @@ package com.hzs.bonus.bonus.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.bonus.bonus.service.ICuMemberBonusPushHisService; -import com.hzs.common.core.constant.MemberFieldConstants; import com.hzs.common.domain.member.bonus.CuMemberBonusPushHis; import com.hzs.bonus.bonus.mapper.CuMemberBonusPushHisMapper; 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-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 7909b72c..c4505f47 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 @@ -2,11 +2,9 @@ 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.param.TripleCycleListParam; import com.hzs.bonus.bonus.service.ICuMemberBonusPushService; import com.hzs.common.domain.member.bonus.CuMemberBonusPush; import com.hzs.bonus.bonus.mapper.CuMemberBonusPushMapper; -import com.hzs.common.domain.member.ext.CuMemberBonusPushExt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -15,22 +13,13 @@ import java.util.List; import java.util.Set; /** - *

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

- * - * @author hzs - * @since 2022-11-10 */ @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) { @@ -39,16 +28,16 @@ public class CuMemberBonusPushServiceImpl extends ServiceImpl cuMemberBonusPushList, Set memberIdSet) { - if(cuMemberBonusPushList.size() == 0){ + if (cuMemberBonusPushList.size() == 0) { 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); @@ -56,9 +45,4 @@ public class CuMemberBonusPushServiceImpl extends ServiceImpl implements ICuMemberBonusService { - @DubboReference - ISystemConfigServiceApi iSystemConfigServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; @DubboReference @@ -120,34 +116,13 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryMemberBonusTotalVoByCondition(BonusParam bonusParam) { - List memberBonusVoList = new ArrayList<>(); - List cuMemberBonusList = baseMapper.queryMemberBonusTotalByCondition(bonusParam); - cuMemberBonusList.forEach(cuMemberBonus -> { - MemberBonusVO memberBonusVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusVO.class); - memberBonusVoList.add(memberBonusVO); - }); - return memberBonusVoList; - } - @Override public List 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)); @@ -568,16 +543,6 @@ public class CuMemberBonusServiceImpl extends ServiceImpl queryExistsPurchaseBonusMember(Integer period, List pkCountryList) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("pk_member,pk_country,direct_income,expand_income,coach_income,share_income,pur_real_subtotal"); - queryWrapper.eq(MemberFieldConstants.PERIOD, period); - queryWrapper.in(SystemFieldConstants.PK_COUNTRY, pkCountryList); - queryWrapper.gt("PUR_REAL_SUBTOTAL", 0); - return baseMapper.selectList(queryWrapper); - } - @Override public Boolean updateCuMemberBonusStatus(Integer pkCountry, Integer grantStatus, Integer oldGrantStatus, Integer startPeriod, Integer endPeriod) { return baseMapper.updateCuMemberBonusStatus(pkCountry, grantStatus, oldGrantStatus, startPeriod, endPeriod) > 0 ? Boolean.TRUE : Boolean.FALSE; diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberRepeatBonusServiceImpl.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberRepeatBonusServiceImpl.java index 83efffa4..ac587875 100644 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberRepeatBonusServiceImpl.java +++ b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/bonus/service/impl/CuMemberRepeatBonusServiceImpl.java @@ -9,12 +9,7 @@ import org.springframework.stereotype.Service; import java.util.List; /** - *

* 会员奖金-4-n碰次重算奖金表 服务实现类 - *

- * - * @author hzs - * @since 2024-07-23 */ @Service public class CuMemberRepeatBonusServiceImpl extends ServiceImpl implements ICuMemberRepeatBonusService { 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 c4ac873f..17626a00 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 @@ -36,21 +36,17 @@ import java.math.BigDecimal; import java.util.*; /** - *

* 会员奖金-分红奖金配置 服务实现类 - *

- * - * @author hzs - * @since 2023-07-03 */ @Service public class CuMemberShareBonusServiceImpl extends ServiceImpl implements ICuMemberShareBonusService { @DubboReference - private ISaOrderServiceApi saOrderServiceApi; - + ISaOrderServiceApi saOrderServiceApi; @DubboReference - private IAwardsServiceApi awardsServiceApi; + IAwardsServiceApi awardsServiceApi; + @DubboReference + ICurrencyServiceApi currencyServiceApi; private ICuMemberShareDetailService cuMemberShareDetailService; @@ -60,8 +56,6 @@ public class CuMemberShareBonusServiceImpl extends ServiceImpl 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())){ + 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){ + if (cuMemberShareDetail.getPkId() == null) { cuMemberShareDetail.setPkCountry(cuMemberShareBonusParam.getPkCountry()); cuMemberShareDetail.setPkShareBonus(cuMemberShareBonus.getPkId()); cuMemberShareDetail.setCreationTime(currentDateTime); cuMemberShareDetail.setPkCreator(cuMemberShareBonusParam.getPkCreator()); - }else{ + } else { cuMemberShareDetail.setPkModified(cuMemberShareBonusParam.getPkCreator()); cuMemberShareDetail.setModifiedTime(DateUtils.currentDateTime()); } @@ -129,7 +123,7 @@ public class CuMemberShareBonusServiceImpl extends ServiceImpl 0) { + if (count > 0) { cuMemberShareDetail.setExpectShareSubtotal(ComputeUtil.computeDivide(cuMemberShareBonusExt.getExpectShareTotal(), BigDecimal.valueOf(count))); cuMemberShareDetail.setExpectShareIncome(ComputeUtil.computeDivide(cuMemberShareDetail.getExpectShareSubtotal(), BigDecimal.valueOf(cuMemberShareDetail.getPromoteTotal()))); - }else{ + } else { cuMemberShareDetail.setExpectShareSubtotal(BigDecimal.ZERO); cuMemberShareDetail.setExpectShareIncome(BigDecimal.ZERO); } 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 bba51a65..929be9f8 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 @@ -14,12 +14,7 @@ import java.util.List; import java.util.Map; /** - *

* 会员奖金-分红奖金配置明细 服务实现类 - *

- * - * @author hzs - * @since 2023-07-03 */ @Service public class CuMemberShareDetailServiceImpl extends ServiceImpl implements ICuMemberShareDetailService { @@ -29,23 +24,4 @@ public class CuMemberShareDetailServiceImpl extends ServiceImpl queryCuMemberShareBonusByPeriod(Integer period){ - List cuMemberShareDetailList = baseMapper.queryCuMemberShareBonusByPeriod(period); - Map cuMemberShareDetailMap = new HashMap<>(ComputeUtil.mapInitCapacity(cuMemberShareDetailList.size())); - if(CollectionUtil.isNotEmpty(cuMemberShareDetailList)){ - for (CuMemberShareDetail cuMemberShareDetail : cuMemberShareDetailList) { - String key =cuMemberShareDetail.getPkCountry().toString() + cuMemberShareDetail.getPkAwards(); - cuMemberShareDetailMap.put(key, cuMemberShareDetail); - } - } - return cuMemberShareDetailMap; - } - } diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/param/CensusSummaryParam.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/param/CensusSummaryParam.java deleted file mode 100644 index 81928678..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/param/CensusSummaryParam.java +++ /dev/null @@ -1,57 +0,0 @@ -package com.hzs.bonus.census.param; - -import lombok.Data; - -import java.util.Date; -import java.util.List; - -/** - * @Description: - * @Author: yuhui - * @Time: 2023/2/22 10:25 - * @Classname: CensusSummaryParam - * @PackageName: com.hzs.member.censusSummary.param - */ -@Data -public class CensusSummaryParam { - - /** - * 结算期数 - */ - private Long memberSettlePeriodId; - - /** - * 币种展示 - */ - private Long pkCurrency; - - /** - * 所属国家 - */ - private Integer pkCountry; - - /** - * 开始时间 - */ - private Date startDate; - - /** - * 结束时间 - */ - private Date endDate; - - /** - * 查询时间 - */ - private String time; - - /** - * 体系 - */ - private List pkVertex; - - /** - * 团队 - */ - private List pkMemberTeam; -} diff --git a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/vo/CensusSummaryVo.java b/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/vo/CensusSummaryVo.java deleted file mode 100644 index 581082f2..00000000 --- a/bd-business/bd-business-bonus/src/main/java/com/hzs/bonus/census/vo/CensusSummaryVo.java +++ /dev/null @@ -1,166 +0,0 @@ -package com.hzs.bonus.census.vo; - -import com.hzs.common.core.annotation.Excel; -import lombok.Data; - -import java.math.BigDecimal; - -/** - * @Description: - * @Author: yuhui - * @Time: 2023/2/6 15:36 - * @Classname: censusSummaryVo - * @PackageName: com.hzs.member.censusSummary.vo - */ -@Data -public class CensusSummaryVo { - - /** - * 结算期数 - */ - @Excel(name = "结算期数") - private Integer numberPeriods; - - /** - * 结算日期 - */ -// @TableField("SETTLE_DATE") - @Excel(name = "结算时间") - private String settleDate; - - /** - * 注册金额 - */ - @Excel(name = "注册金额(¥)") - private BigDecimal registerAmount; - - - /** - * 升级金额 - */ - @Excel(name = "升级金额(¥)") - private BigDecimal upgradeAmount; - - /** - * 首购金额(¥) - */ - @Excel(name = "首购金额(¥)") - private BigDecimal firstPurchaseAmount; - - /** - * 直供金额 - */ - @Excel(name = "直供金额(¥)") - private BigDecimal directSupplyAmount; - - /** - * 嗨粉金额 - */ - @Excel(name = "嗨粉金额(¥)") - private BigDecimal fansAmount; - - /** - * 复购金额 - */ - private BigDecimal repurchaseAmount; - /** - * 三方金额 - */ - @Excel(name = "三方金额(¥)") - private BigDecimal tripartiteAmount; - /** - * 注册金额($) - */ - @Excel(name = "注册金额($)") - private BigDecimal registerAmountDollar; - - - /** - * 升级金额($) - */ - @Excel(name = "升级金额($)") - private BigDecimal upgradeAmountDollar; - - /** - * 首购金额 - */ - @Excel(name = "首购金额($)") - private BigDecimal firstPurchaseAmountDollar; - - /** - * 直供金额($) - */ - @Excel(name = "直供金额($)") - private BigDecimal directSupplyAmountDollar; - - /** - * 嗨粉金额($) - */ - @Excel(name = "嗨粉金额($)") - private BigDecimal fansAmountDollar; - - /** - * 复购金额($) - */ - private BigDecimal repurchaseAmountDollar; - /** - * 三方金额 - */ - @Excel(name = "三方金额($)") - private BigDecimal tripartiteAmountDollar; - - /** - * 注册业绩 - */ - private BigDecimal registerPv; - /** - *升级业绩 - */ - private BigDecimal upgradePv; - - /** - * 首购业绩 - */ - @Excel(name = "首购业绩") - private BigDecimal firstPurchasePv; - /** - * - * 直供业绩 - */ - private BigDecimal directSupplyPv; - - /** - * 嗨粉业绩 - */ - private BigDecimal hiFunPv; - /** - * 复购pv - */ - private BigDecimal repurchasePv; - /** - * 三方业绩 - */ - @Excel(name = "三方业绩") - private BigDecimal tripartitePv; - - - /** - * 金额总计 - */ - @Excel(name = "金额总计") - private BigDecimal amountTotal; - - /** - * 金额总计($) - */ - private BigDecimal amountTotalDollar; - - /** - * 业绩汇总 - */ - private BigDecimal pvTotal; - - - - -} 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 index 6646c098..b186fe1b 100644 --- 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 @@ -18,12 +18,7 @@ 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") @@ -36,7 +31,7 @@ public class ApiCuRegionAssessController extends BaseController { * 查询会员昨天奖金的值 */ @GetMapping("/query") - public TableDataInfo listRegionAssess(){ + public TableDataInfo listRegionAssess() { CuRegionAssessParam cuRegionAssessParam = new CuRegionAssessParam(); cuRegionAssessParam.setPkCountry(SecurityUtils.getPkCountry()); cuRegionAssessParam.setPkMember(SecurityUtils.getUserId()); 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 index 7f5f2bc5..7492ed46 100644 --- 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 @@ -12,13 +12,6 @@ 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 { diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/BdWaresBonusMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/BdWaresBonusMapper.xml index be3096c0..9231fac3 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/BdWaresBonusMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/bonus/BdWaresBonusMapper.xml @@ -4,22 +4,23 @@ - - - - - - - - - - + + + + + + + + + + - - - + + + + + - select cb.*,cb.pk_id pk_detail_id,cd.pk_awards,pk_share_bonus,promote_total,reach_total,expect_share_income, - expect_share_subtotal,real_share_income,real_share_subtotal,ba.awards_name pk_awards_val from cu_member_share_bonus cb - inner join cu_member_share_detail cd - on cb.pk_id = cd.pk_share_bonus - left join bd_awards ba - on cd.pk_awards = ba.pk_id - where cb.del_flag=0 and cd.del_flag=0 and - cb.settle_month = #{settleMonth} and cb.pk_country = #{pkCountry} + select cb.*, + cb.pk_id pk_detail_id, + cd.pk_awards, + pk_share_bonus, + promote_total, + reach_total, + expect_share_income, + expect_share_subtotal, + real_share_income, + real_share_subtotal, + ba.awards_name pk_awards_val + from cu_member_share_bonus cb + inner join cu_member_share_detail cd + on cb.pk_id = cd.pk_share_bonus + left join bd_awards ba + on cd.pk_awards = ba.pk_id + where cb.del_flag = 0 + and cd.del_flag = 0 + and cb.settle_month = #{settleMonth} + and cb.pk_country = #{pkCountry} order by pk_awards 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 638b8e49..85414320 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 @@ -4,62 +4,55 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + - - - DEL_FLAG, - CREATION_TIME, - MODIFIED_TIME, - PK_COUNTRY, - PK_CREATOR, - PK_MODIFIED, - PK_ID, PK_AWARDS,PK_SHARE_BONUS, PROMOTE_TOTAL, REACH_TOTAL, EXPECT_SHARE_INCOME, EXPECT_SHARE_SUBTOTAL, REAL_SHARE_INCOME, REAL_SHARE_SUBTOTAL - 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 + + 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) + 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 + 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-member/src/main/java/com/hzs/member/empty/service/impl/MemberEmptyServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/empty/service/impl/MemberEmptyServiceImpl.java index 3eca5bb6..1a303ed5 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/empty/service/impl/MemberEmptyServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/empty/service/impl/MemberEmptyServiceImpl.java @@ -65,11 +65,7 @@ import java.util.*; import java.util.stream.Collectors; /** - * @Description: 空单处理服务 - * @Author: jiang chao - * @Time: 2023/6/17 14:07 - * @Classname: MemberEmptyServiceImpl - * @PackageName: com.hzs.member.empty.service.impl + * 空单处理服务 */ @Slf4j @Service diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfModifyAddressController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfModifyAddressController.java index 548b4439..2626961e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfModifyAddressController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/self/controller/api/ApiSelfModifyAddressController.java @@ -5,13 +5,11 @@ import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.hzs.activity.pick.IAcPickServiceApi; import com.hzs.common.core.constant.msg.CommonMsgConstants; 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.EApproveRechargeStatus; -import com.hzs.common.core.enums.EOrderType; import com.hzs.common.core.utils.DateUtils; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.controller.BaseController; @@ -28,28 +26,20 @@ import com.hzs.member.self.vo.*; import com.hzs.sale.order.ISaOrderItemsServiceApi; import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.sale.order.dto.OrderItemsParamDTO; -import com.hzs.sale.order.dto.OrderParamDTO; import com.hzs.sale.order.dto.WaresOrderDTO; import com.hzs.system.base.IAreaServiceApi; import com.hzs.system.base.ICurrencyServiceApi; -import com.hzs.system.config.IServiceChargeServiceApi; -import com.hzs.system.sys.IApprovalServiceApi; 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.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; /** - * @description: 自助服务-修改收货地址 - * @author: zhang jing - * @date: 2023/4/17 11:57 - * @param: - * @return: + * 自助服务-修改收货地址 **/ @Slf4j @RequestMapping("/api/self-modify-address") @@ -60,27 +50,17 @@ public class ApiSelfModifyAddressController extends BaseController { private ICuSelfServiceLogService serviceLogService; @DubboReference - private IAreaServiceApi iAreaServiceApi; + IAreaServiceApi iAreaServiceApi; @DubboReference - private IServiceChargeServiceApi serviceChargeServiceApi; + ISaOrderServiceApi iSaOrderServiceApi; @DubboReference - private IApprovalServiceApi iApprovalServiceApi; + ISaOrderItemsServiceApi iSaOrderItemsServiceApi; @DubboReference - private ISaOrderServiceApi iSaOrderServiceApi; - @DubboReference - private ISaOrderItemsServiceApi iSaOrderItemsServiceApi; - @DubboReference - private IAcPickServiceApi acPickServiceApi; - @DubboReference - private ICurrencyServiceApi iCurrencyServiceApi; + ICurrencyServiceApi iCurrencyServiceApi; /** - * @description: 自助服务-查询已申请修改收货地址 - * @author: zhang jing - * @date: 2023/4/17 14:40 - * @param: [cuSelfServiceLogVO] - * @return: com.hzs.common.core.web.page.TableDataInfo + * 自助服务-查询已申请修改收货地址 **/ @GetMapping("/list") public TableDataInfo list(SelfModifyAddressVO selfModifyAddressVO) { @@ -128,33 +108,10 @@ public class ApiSelfModifyAddressController extends BaseController { /** - * @description: 自助服务-申请修改收货地址-发起签呈申请 - * @author: zhang jing DATA_SOURCES - * @date: 2023/4/17 14:48 - * @param: [cuSelfServiceLogVO] - * @return: com.hzs.common.core.web.domain.AjaxResult + * 自助服务-申请修改收货地址-发起签呈申请 **/ @PostMapping("/putin") public AjaxResult putin(@RequestBody SelfModifyAddressVO selVO) throws Exception { - System.out.println( - "getRecName " + selVO.getRecName() + - "getRecPhone " + selVO.getRecPhone() + - "getRecAddress " + selVO.getRecAddress() + - "getOrderCode " + selVO.getOrderCode() + - "getNewRecName " + selVO.getNewRecName() + - "getNewRecPhone " + selVO.getNewRecPhone() + - "getNewRecAddress " + selVO.getNewRecAddress() + -// "getNewPostage " + selVO.getNewPostage() + - "getPostage " + selVO.getPostage() + - "getRecProvince " + selVO.getRecProvince() + - "getRecCity " + selVO.getRecCity() + - "getRecCounty " + selVO.getRecCounty() + - "getNewRecProvince " + selVO.getNewRecProvince() + - "getNewRecCity " + selVO.getNewRecCity() + - "getNewRecCounty " + selVO.getNewRecCounty() + - "getPayTime " + selVO.getPayTime() - - ); //校验是否重复提交记录 QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("ORDER_CODE", "APPROVE_STATUS") @@ -259,19 +216,5 @@ public class ApiSelfModifyAddressController extends BaseController { return AjaxResult.success(serviceLogService.putin(selVO)); } - /** - * 检查输入的条件 - * - * @param orderParam 条件 - * @return boolean - */ - protected Boolean checkRecPostageMsgBoolean(OrderParamDTO orderParam) { - return orderParam.getSpecialArea() != null - && orderParam.getDeliveryWay() != null && orderParam.getTransType() != null - && orderParam.getRecProvince() != null && orderParam.getRecCity() != null - && orderParam.getOrderItemsParams() != null - && orderParam.getOrderItemsParams().size() > 0; - } - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcPickMemberLogMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcPickMemberLogMapper.java index c454a7a7..928586cc 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcPickMemberLogMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/mapper/AcPickMemberLogMapper.java @@ -33,17 +33,4 @@ public interface AcPickMemberLogMapper extends BaseMapper { @Param("quantity") Integer quantity, @Param("source") Integer source); - /** - * 批量插入提货日志 - * - * @param acPickExtList 批量插入数据 - * @param source 来源(1=后台,2=前台) - * @return - */ - int insertBatchPick(@Param("list") List acPickExtList, @Param("source") Integer source); - - /** - * 批量删除使用记录数据 - */ - int deleteBatch(@Param("acPickMemberLogList") List acPickMemberLogList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcPickProviderApi.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcPickProviderApi.java deleted file mode 100644 index 2ada6c2b..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/provider/AcPickProviderApi.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.hzs.activity.pick.provider; - -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.activity.pick.IAcPickServiceApi; -import com.hzs.activity.pick.service.IAcPickMemberLogService; -import com.hzs.activity.pick.service.IAcPickService; -import com.hzs.common.core.domain.R; -import com.hzs.common.core.exception.ServiceException; -import com.hzs.common.domain.activity.pick.AcPick; -import com.hzs.common.domain.activity.pick.AcPickMemberLog; -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.math.BigDecimal; -import java.util.List; - -/** - * @Description: 提货相关dubbo服务入口 - * @Author: jiang chao - * @Time: 2023/5/15 11:21 - * @Classname: AcPickProviderApi - * @PackageName: com.hzs.activity.pick.provider - */ -@Slf4j -@DubboService -public class AcPickProviderApi implements IAcPickServiceApi { - - @Autowired - private IAcPickService iAcPickService; - @Autowired - private IAcPickMemberLogService acPickMemberLogService; - - @Override - public R> queryPickMemberLog(List saOrderExtList) { - return R.ok(acPickMemberLogService.queryPickMemberLog(saOrderExtList)); - } - - @Override - public R queryOrderPostage(String orderCode, Integer recProvince, Integer recCity, Integer pkCountry) { - try { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(AcPickMemberLog::getPickOrder, orderCode); - AcPickMemberLog acPickMemberLog = acPickMemberLogService.getOne(queryWrapper); - if (null != acPickMemberLog) { - AcPick acPick = iAcPickService.getById(acPickMemberLog.getPkPick()); - if (null != acPick) { - return R.ok(iAcPickService.postageHandle(acPick, acPickMemberLog.getPickQuantity(), recProvince, recCity, pkCountry)); - } - } - return R.fail("提货数据不存在"); - } catch (ServiceException se) { - log.error("撤销订单查询提货邮费异常: {}", se.getMessage(), se); - return R.fail(se.getMessage()); - } catch (Exception e) { - log.error("撤销订单查询提货邮费异常", e); - } - return R.fail("查询提货邮费失败"); - } - -} 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 index af4a2660..64d3ec15 100644 --- 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 @@ -7,30 +7,16 @@ 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: + * 会员提货赠送活动日志dubbo服务 **/ @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 { diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickMemberLogService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickMemberLogService.java index 769b8485..e9eb4927 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickMemberLogService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickMemberLogService.java @@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.activity.pick.vo.AcPickMemberLogVO; import com.hzs.common.domain.activity.pick.AcPickMemberLog; import com.hzs.common.domain.activity.pick.ext.AcPickExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; import java.util.List; @@ -30,23 +29,4 @@ public interface IAcPickMemberLogService extends IService { * @return */ int insertBatch(List acPickExtList, Integer quantity, Integer source); - - /** - * 批量插入提货日志 - * - * @param acPickExtList 批量插入数据 - * @param source 来源(1=后台,2=前台) - * @return - */ - int insertBatchPick(List acPickExtList, Integer source); - - /** - * 批量删除使用记录数据 - */ - int deleteBatch(List acPickMemberLogList); - - /** - * 查询会员提货使用记录 - */ - List queryPickMemberLog(List saOrderExtList); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java index 96b3d320..2ad5b051 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java @@ -5,7 +5,6 @@ import com.hzs.activity.pick.param.AcPickQueryParam; import com.hzs.activity.pick.param.AcPickSaveParam; import com.hzs.activity.pick.vo.ApiPickListVO; import com.hzs.common.domain.activity.pick.AcPick; -import com.hzs.common.domain.activity.pick.AcPickMemberLog; import com.hzs.common.domain.activity.pick.ext.AcPickExt; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import com.hzs.system.sys.dto.LoginUser; @@ -16,9 +15,6 @@ import java.util.List; /** * 提货基础表 服务类 - * - * @author hzs - * @since 2023-04-21 */ public interface IAcPickService extends IService { @@ -85,7 +81,8 @@ public interface IAcPickService extends IService { String pickSubmit(AcPickSaveParam param, LoginUser loginUser); /** - * @description: 删除充值提货卡发起签呈 + * 删除充值提货卡发起签呈 + * * @author: zhang jing * @date: 2023/10/17 18:00 * @param: [anpParam] @@ -102,13 +99,8 @@ public interface IAcPickService extends IService { String pickApprovalAgree(ApprovalBusinessResultDTO resultDTO); /** - * @description: 审核删除充值提货卡 - * @author: zhang jing - * @date: 2023/10/18 16:19 - * @param: [resultDTO] - * @return: java.lang.String + * 审核删除充值提货卡 **/ - String delpickApprovalAgree(ApprovalBusinessResultDTO resultDTO); /** 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..f27c298d 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,15 @@ 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(); + void deliveryLog(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickMemberLogServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickMemberLogServiceImpl.java index 3cb0fcd8..b6f5d58f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickMemberLogServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickMemberLogServiceImpl.java @@ -1,17 +1,14 @@ package com.hzs.activity.pick.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.pick.mapper.AcPickMemberLogMapper; import com.hzs.activity.pick.service.IAcPickMemberLogService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.pick.vo.AcPickMemberLogVO; import com.hzs.common.domain.activity.pick.AcPickMemberLog; import com.hzs.common.domain.activity.pick.ext.AcPickExt; -import com.hzs.common.domain.sale.ext.SaOrderExt; import org.springframework.stereotype.Service; import java.util.*; -import java.util.stream.Collectors; /** * 会员提货记录 服务实现类 @@ -29,30 +26,4 @@ public class AcPickMemberLogServiceImpl extends ServiceImpl acPickExtList, Integer source) { - return baseMapper.insertBatchPick(acPickExtList, source); - } - - @Override - public int deleteBatch(List acPickMemberLogList) { - return baseMapper.deleteBatch(acPickMemberLogList); - } - - @Override - public List queryPickMemberLog(List saOrderExtList) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - Set orderCodeSet = saOrderExtList.stream().distinct().map(SaOrderExt::getOrderCode).collect(Collectors.toSet()); - queryWrapper.in(AcPickMemberLog::getPickOrder, orderCodeSet); - Set orderKey = new HashSet<>(); - saOrderExtList.forEach(saOrderExt -> orderKey.add(saOrderExt.getOrderCode() + saOrderExt.getPkMember())); - List retPickMemberLogList = new ArrayList<>(); - List acPickMemberLogList = baseMapper.selectList(queryWrapper); - for (AcPickMemberLog acPickMemberLog : acPickMemberLogList) { - if (!orderKey.contains(acPickMemberLog.getPickOrder() + acPickMemberLog.getPkMember())) { - retPickMemberLogList.add(acPickMemberLog); - } - } - return retPickMemberLogList; - } } 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..03e7d604 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 @@ -26,9 +26,6 @@ import java.util.stream.Collectors; /** * 会员提货赠送活动日志表 服务实现类 - * - * @author zhangjing - * @since 2025-01-15 */ @Service @Slf4j @@ -41,13 +38,6 @@ public class AcRetailPickLogServiceImpl extends ServiceImpl pkWaresList, Integer systemType) { Date nowDate = new Date(); @@ -99,5 +88,4 @@ public class AcRetailPickLogServiceImpl extends ServiceImpl - - delete from AC_PICK_MEMBER_LOG - where pk_id in - - #{item.pkId} - -