## 会员奖金明细显示处理;去掉荣誉墙等;
This commit is contained in:
parent
12d67fa68d
commit
8b163de8c1
|
@ -42,48 +42,19 @@ import java.util.List;
|
|||
@RequestMapping("/manage/settle")
|
||||
public class CuMemberSettleController extends BaseController {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberBonusService cuMemberBonusService;
|
||||
|
||||
@Autowired
|
||||
private IBonusSettleService bonusSettleService;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberTreeService cuMemberTreeService;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService cuMemberSettlePeriodService;
|
||||
|
||||
@Autowired
|
||||
private IBonusGrantService bonusGrantService;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberMonthAchieveService cuMemberMonthAchieveService;
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberBonusService(ICuMemberBonusService cuMemberBonusService) {
|
||||
this.cuMemberBonusService = cuMemberBonusService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberMonthAchieveService(ICuMemberMonthAchieveService cuMemberMonthAchieveService) {
|
||||
this.cuMemberMonthAchieveService = cuMemberMonthAchieveService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setBonusGrantService(IBonusGrantService bonusGrantService) {
|
||||
this.bonusGrantService = bonusGrantService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) {
|
||||
this.cuMemberSettlePeriodService = cuMemberSettlePeriodService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) {
|
||||
this.cuMemberTreeService = cuMemberTreeService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setBonusSettleService(IBonusSettleService bonusSettleService) {
|
||||
this.bonusSettleService = bonusSettleService;
|
||||
}
|
||||
|
||||
/**
|
||||
* 初始化奖金结算表
|
||||
*
|
||||
|
@ -231,7 +202,6 @@ public class CuMemberSettleController extends BaseController {
|
|||
|
||||
/**
|
||||
* 秒接结算业绩,仅用于测试
|
||||
* w
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
|
@ -243,7 +213,6 @@ public class CuMemberSettleController extends BaseController {
|
|||
|
||||
/**
|
||||
* 发放直推达人、抗衰达人
|
||||
* w
|
||||
*
|
||||
* @return AjaxResult
|
||||
*/
|
||||
|
|
|
@ -6,9 +6,7 @@ import com.hzs.common.domain.member.achieve.CuMemberMonthAchieve;
|
|||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员月数据 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-06-06
|
||||
|
@ -38,4 +36,5 @@ public interface ICuMemberMonthAchieveService extends IService<CuMemberMonthAchi
|
|||
* @param: null null
|
||||
**/
|
||||
void insertCuMemberCuMemberMonthYearAchieve(Date settleDate);
|
||||
|
||||
}
|
||||
|
|
|
@ -9,9 +9,7 @@ import java.util.Date;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员结算期间 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-10-26
|
||||
|
@ -22,15 +20,17 @@ public interface ICuMemberSettlePeriodService extends IService<CuMemberSettlePer
|
|||
|
||||
/**
|
||||
* 根据日期获得日期对应的期间
|
||||
*
|
||||
* @param date 日期 2023-02-02
|
||||
* @return: CuMemberSettlePeriod
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/2 13:32
|
||||
*/
|
||||
* @return: CuMemberSettlePeriod
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/2 13:32
|
||||
*/
|
||||
CuMemberSettlePeriod getCuMemberSettlePeriodByDate(String date);
|
||||
|
||||
/**
|
||||
* 根据日期获得日期对应的期间
|
||||
*
|
||||
* @param date 日期 2023-02-02
|
||||
* @return: CuMemberSettlePeriod
|
||||
* @Author: sui q
|
||||
|
@ -40,6 +40,7 @@ public interface ICuMemberSettlePeriodService extends IService<CuMemberSettlePer
|
|||
|
||||
/**
|
||||
* 根据国家查询奖金期数返回到前台
|
||||
*
|
||||
* @return: List<CuMemberSettlePeriod>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/30 17:27
|
||||
|
@ -48,19 +49,21 @@ public interface ICuMemberSettlePeriodService extends IService<CuMemberSettlePer
|
|||
|
||||
/**
|
||||
* 根据国家查询奖金期数返回到前台
|
||||
*
|
||||
* @param periodParam 查询参数
|
||||
* @return: List<CuMemberSettlePeriod>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/30 17:27
|
||||
*/
|
||||
* @return: List<CuMemberSettlePeriod>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/1/30 17:27
|
||||
*/
|
||||
List<CuMemberSettlePeriodExt> queryCuMemberSettlePeriod(MemberPeriodParam periodParam);
|
||||
|
||||
/**
|
||||
* 根据时间更新会员结算期间状态
|
||||
*
|
||||
* @param cuMemberSettlePeriodByDate 修改的期间
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/20 18:37
|
||||
*/
|
||||
* @Author: sui q
|
||||
* @Date: 2023/3/20 18:37
|
||||
*/
|
||||
void updateCuMemberSettlePeriodByDate(CuMemberSettlePeriodExt cuMemberSettlePeriodByDate);
|
||||
|
||||
}
|
||||
|
|
|
@ -17,9 +17,7 @@ import java.util.Map;
|
|||
import java.util.Set;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员网体历史记录 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-10-31
|
||||
|
@ -111,8 +109,8 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
*
|
||||
* @param revokeRegSaOrderList 注册撤销订单
|
||||
* @param revokeUpdSaOrderList 升级撤销订单
|
||||
* @param settleDate 计算日期
|
||||
* @param settleTableName 结算表名
|
||||
* @param settleDate 计算日期
|
||||
* @param settleTableName 结算表名
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/4 15:42
|
||||
|
@ -154,13 +152,14 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 将结算日表的值插入到结算月表中
|
||||
* @param settleDate 结算日期
|
||||
*
|
||||
* @param settleDate 结算日期
|
||||
* @param settleTableName 结算日表
|
||||
* @param period 期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2023/2/16 11:35
|
||||
*/
|
||||
* @param period 期间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2023/2/16 11:35
|
||||
*/
|
||||
void insertCuMemberTreeBySettleDate(String settleDate, String settleTableName, Integer period);
|
||||
|
||||
/**
|
||||
|
@ -215,8 +214,8 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
/**
|
||||
* 查询会员结算表,查询出结算表中会员血缘关系满足等级
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param pkMember 会员
|
||||
* @param settleTableName 结算表
|
||||
* @param pkMember 会员
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/4 18:21
|
||||
|
@ -246,17 +245,19 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 根据订单,查询出网体中记录的会员数据,推荐人、安置人
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param saOrderExtList 订单
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/10 18:49
|
||||
*/
|
||||
* @param saOrderExtList 订单
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/10 18:49
|
||||
*/
|
||||
List<CuMemberSettleExt> batchQueryMemberSettleBySaOrder(String settleTableName, List<SaOrderExt> saOrderExtList);
|
||||
|
||||
/**
|
||||
* 根据订单,查询出网体中记录的会员数据,推荐人、安置人
|
||||
* @param settleTableName 结算表
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param serviceMemberSet 会员编号
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
|
@ -274,7 +275,8 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 根据订单,查询出网体中记录的会员数据及推荐人
|
||||
* @param settleTableName 结算表
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param serviceMemberSet 会员编号
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
|
@ -284,9 +286,10 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 批量根据订单信息查询会员结算表中的父级安置数据
|
||||
* @param settleTableName 结算表
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param firPurchaseOrderList 首单列表
|
||||
* @return: Map<Long, List<CuMemberSettleExt>>
|
||||
* @return: Map<Long, List < CuMemberSettleExt>>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/15 13:43
|
||||
*/
|
||||
|
@ -294,6 +297,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 批量根据量奖信息查询会员结算表中的父级血缘数据
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param expandMemberSet 有量奖的会员
|
||||
* @return: Map<Long, CuMemberSettleExt> 主键,通过推荐人向上找父级
|
||||
|
@ -304,6 +308,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 批量根据量奖信息查询会员结算表中的父级血缘数据
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param expandMemberSet 有量奖的会员
|
||||
* @return: Map<Long, CuMemberSettleExt> 主键,通过推荐人向上找父级
|
||||
|
@ -324,7 +329,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
* 批量根据量奖信息查询会员结算表中的父级血缘数据
|
||||
*
|
||||
* @param settleTableName 结算表
|
||||
* @param expandMemberSet 有量奖的会员列表
|
||||
* @param expandMemberSet 有量奖的会员列表
|
||||
* @return: Map<Long, List < CuMemberSettleExt>>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/15 13:43
|
||||
|
@ -333,6 +338,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 更新会员树的累计业绩
|
||||
*
|
||||
* @param settleTableName 结算日期
|
||||
* @param cuMemberTreeMap 树
|
||||
* @return: void
|
||||
|
@ -343,6 +349,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 更新会员树的累计业绩
|
||||
*
|
||||
* @param settleTableName 结算日期
|
||||
* @param cuMemberTreeMap 树
|
||||
* @return: void
|
||||
|
@ -350,8 +357,10 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
* @Date: 2022/12/9 16:57
|
||||
*/
|
||||
void updateCuMemberExpandSettle(String settleTableName, Map<Long, CuMemberSettleExt> cuMemberTreeMap);
|
||||
|
||||
/**
|
||||
* 更新会员树的累计业绩
|
||||
*
|
||||
* @param settleTableName 结算日期
|
||||
* @param cuMemberTreeMap 树
|
||||
* @return: void
|
||||
|
@ -362,11 +371,12 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 根据会员编号更新会员伞上秒结数据,新增或修改
|
||||
* @param secondTableName 秒结表
|
||||
* @param settleTableName 结算表
|
||||
* @param pkMember 会员表
|
||||
*
|
||||
* @param secondTableName 秒结表
|
||||
* @param settleTableName 结算表
|
||||
* @param pkMember 会员表
|
||||
* @param cuMemberTreeList 树
|
||||
* @param isPlace 是否安置
|
||||
* @param isPlace 是否安置
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/12/9 16:57
|
||||
|
@ -377,8 +387,9 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 根据会员编号查询会员伞上安置秒结数据
|
||||
*
|
||||
* @param secondTableName 秒接
|
||||
* @param pkMember 会员
|
||||
* @param pkMember 会员
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/2/2 21:01
|
||||
|
@ -388,8 +399,8 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
/**
|
||||
* 根据会员编号查询会员伞上安置人秒结数据
|
||||
*
|
||||
* @param secondTableName 秒接
|
||||
* @param pkMember 会员
|
||||
* @param secondTableName 秒接
|
||||
* @param pkMember 会员
|
||||
* @return: List<CuMemberSettleExt>
|
||||
* @Author: sui q
|
||||
* @Date: 2023/2/2 21:01
|
||||
|
@ -409,14 +420,16 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询安置上下级
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
*/
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentTable(String settleTableName,Long pkMember,List<Long> memberIdList,Integer level );
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentTable(String settleTableName, Long pkMember, List<Long> memberIdList, Integer level);
|
||||
|
||||
/**
|
||||
* 根据pkmember查询
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
|
@ -425,6 +438,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询推荐关系
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
|
@ -433,27 +447,30 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询直推人数
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
*/
|
||||
Long queryCuMemberTreeParentTableCount(String settleTableName, Long pkMember);
|
||||
|
||||
/**
|
||||
* 查询历史安置上下级
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
*/
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentHistoryTable(String settleTableName, Long pkMember, List<Long> memberIdList,Integer level);
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentHistoryTable(String settleTableName, Long pkMember, List<Long> memberIdList, Integer level);
|
||||
|
||||
/**
|
||||
* @description: 查询每一期汇总
|
||||
* @author: yh
|
||||
* @date: 2023/3/1 17:18
|
||||
* @param:
|
||||
* @return:
|
||||
**/
|
||||
CensusSummaryVo queryCuMemberTreeParentSumTable( String settleTableName, CensusSummaryParam censusSummaryParam);
|
||||
/**
|
||||
* @description: 查询每一期汇总
|
||||
* @author: yh
|
||||
* @date: 2023/3/1 17:18
|
||||
* @param:
|
||||
* @return:
|
||||
**/
|
||||
CensusSummaryVo queryCuMemberTreeParentSumTable(String settleTableName, CensusSummaryParam censusSummaryParam);
|
||||
|
||||
/*
|
||||
* description: 查询历史网体的最末安置人,左右区一起查出来
|
||||
|
@ -475,22 +492,25 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询秒结表会员信息
|
||||
*
|
||||
* @param pkMember
|
||||
* @param settleTableName
|
||||
* @param level
|
||||
* @return
|
||||
*/
|
||||
List<CuMemberSettleExt> selectByTreeMemberList(Long pkMember, String settleTableName,Integer level);
|
||||
List<CuMemberSettleExt> selectByTreeMemberList(Long pkMember, String settleTableName, Integer level);
|
||||
|
||||
/**
|
||||
* 查询会员真实业绩
|
||||
*
|
||||
* @param pkMember
|
||||
* @return
|
||||
*/
|
||||
CuMemberSettleExt getCuMemberRealPerformanceByMemberId(Long pkMember,String tableName);
|
||||
CuMemberSettleExt getCuMemberRealPerformanceByMemberId(Long pkMember, String tableName);
|
||||
|
||||
/**
|
||||
* 查询会员安置左右区
|
||||
*
|
||||
* @param userId
|
||||
* @param settleTableName
|
||||
* @return
|
||||
|
@ -499,14 +519,16 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询安置左右区人数
|
||||
*
|
||||
* @param memberId 会员id
|
||||
* @param placeDept
|
||||
* @return
|
||||
*/
|
||||
Long queryPlaceParentPeopleNumber(Long memberId, Integer placeDept);
|
||||
Long queryPlaceParentPeopleNumber(Long memberId, Integer placeDept);
|
||||
|
||||
/**
|
||||
* 查询推荐大小区人数
|
||||
*
|
||||
* @param memberId
|
||||
* @param placeDept
|
||||
* @return
|
||||
|
@ -515,20 +537,24 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询秒结表是否有值
|
||||
*
|
||||
* @param settleTableName
|
||||
* @return
|
||||
*/
|
||||
Long selectByselectByTreeMemberCount(String settleTableName,Long pkMember);
|
||||
Long selectByselectByTreeMemberCount(String settleTableName, Long pkMember);
|
||||
|
||||
/**
|
||||
* 查询伞下安置新增业绩
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
*/
|
||||
List<CuMemberSettleExt> brollyBelowResettle(String settleTableName, Long pkMember);
|
||||
|
||||
/**
|
||||
* 根据pkmember查询 关联parent
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @return
|
||||
|
@ -537,6 +563,7 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询会员直推业绩
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param memberIds
|
||||
* @return
|
||||
|
@ -545,15 +572,18 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询历史安置上下架
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @param memberIdList
|
||||
* @param level
|
||||
* @return
|
||||
*/
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentHistoryFramework(String settleTableName, Long pkMember, List<Long> memberIdList,Integer level);
|
||||
List<CuMemberSettleExt> queryCuMemberTreePlaceParentHistoryFramework(String settleTableName, Long pkMember, List<Long> memberIdList, Integer level);
|
||||
|
||||
/**
|
||||
* 查询历史推荐上下架
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param pkMember
|
||||
* @param level
|
||||
|
@ -615,11 +645,12 @@ public interface ICuMemberTreeService extends IService<CuMemberTree> {
|
|||
|
||||
/**
|
||||
* 查询会员历史直推业绩
|
||||
*
|
||||
* @param settleTableName
|
||||
* @param memberIds
|
||||
* @return
|
||||
*/
|
||||
List<MemberParentCountParam> queryByMemberParentSettleSumPv(@Param("settleTableName") String settleTableName,@Param("memberIds") List<Long> memberIds);
|
||||
List<MemberParentCountParam> queryByMemberParentSettleSumPv(@Param("settleTableName") String settleTableName, @Param("memberIds") List<Long> memberIds);
|
||||
|
||||
/*
|
||||
* @description: 根据结算表更新奖衔
|
||||
|
|
|
@ -12,7 +12,6 @@ import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
|||
import com.hzs.common.domain.member.achieve.ext.CuMemberAchieveExt;
|
||||
import com.hzs.common.domain.member.swing.ext.CuMemberSwingNetExt;
|
||||
import com.hzs.common.domain.sale.order.SaOrder;
|
||||
import com.hzs.common.service.ITransactionCommonService;
|
||||
import com.hzs.bonus.achieve.mapper.CuMemberAchieveMapper;
|
||||
import com.hzs.bonus.achieve.param.MemberAchieveParam;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
@ -33,31 +32,13 @@ import java.util.*;
|
|||
@Service
|
||||
public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMapper, CuMemberAchieve> implements ICuMemberAchieveService {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberTreeService cuMemberTreeService;
|
||||
|
||||
@Autowired
|
||||
private CuMemberBonusSettle cuMemberBonusSettle;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService cuMemberSettlePeriodService;
|
||||
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) {
|
||||
this.cuMemberSettlePeriodService = cuMemberSettlePeriodService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) {
|
||||
this.cuMemberBonusSettle = cuMemberBonusSettle;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberTreeService(ICuMemberTreeService cuMemberTreeService) {
|
||||
this.cuMemberTreeService = cuMemberTreeService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
ITransactionCommonService iTransactionCommonService;
|
||||
|
||||
@Override
|
||||
public String createCuMemberAchieve(String date) {
|
||||
// 创建业绩月表记录表
|
||||
|
|
|
@ -5,10 +5,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|||
import com.hzs.bonus.achieve.service.ICuMemberAchieveService;
|
||||
import com.hzs.bonus.achieve.service.ICuMemberMonthAchieveService;
|
||||
import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService;
|
||||
import com.hzs.bonus.base.service.ICuMemberHonorWallService;
|
||||
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||
import com.hzs.common.core.constant.TableNameConstants;
|
||||
import com.hzs.common.core.enums.HonorWallType;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberMonthAchieve;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
|
@ -17,7 +15,6 @@ import com.hzs.common.domain.member.honor.CuHonorWall;
|
|||
import com.hzs.common.domain.member.honor.CuMemberHonorWall;
|
||||
import com.hzs.bonus.achieve.mapper.CuMemberMonthAchieveMapper;
|
||||
import com.hzs.bonus.achieve.service.ICuMemberTreeService;
|
||||
import com.hzs.bonus.base.service.ICuHonorWallService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
@ -25,9 +22,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
import java.util.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员月数据 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-06-06
|
||||
|
@ -38,10 +33,6 @@ public class CuMemberMonthAchieveServiceImpl extends ServiceImpl<CuMemberMonthAc
|
|||
@Autowired
|
||||
private ICuMemberSettlePeriodService cuMemberSettlePeriodService;
|
||||
@Autowired
|
||||
private ICuHonorWallService cuHonorWallService;
|
||||
@Autowired
|
||||
private ICuMemberHonorWallService cuMemberHonorWallService;
|
||||
@Autowired
|
||||
private ICuMemberTreeService cuMemberTreeService;
|
||||
@Autowired
|
||||
private ICuMemberAchieveService cuMemberAchieveService;
|
||||
|
@ -60,7 +51,6 @@ public class CuMemberMonthAchieveServiceImpl extends ServiceImpl<CuMemberMonthAc
|
|||
public void insertCuMemberMonthAchieve(Date settleDate) {
|
||||
// 判断日期 1月7日 发放去年奖章 1 4 7 10 计算季度
|
||||
// 1-6号计算上个月
|
||||
int month = DateUtils.currentMonth(settleDate);
|
||||
int day = DateUtils.currentDay(settleDate);
|
||||
String settleDateStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, settleDate);
|
||||
String table = TableNameConstants.CU_MEMBER_ACHIEVE + DateUtils.getMonth(settleDateStr);
|
||||
|
@ -77,44 +67,6 @@ public class CuMemberMonthAchieveServiceImpl extends ServiceImpl<CuMemberMonthAc
|
|||
// 计算当前月
|
||||
String settleMonth = DateUtils.getMonth(currentMonthDate);
|
||||
baseMapper.insertCuMemberMonthAchieve(table, cuMemberSettlePeriod.getPkId(), settleMonth);
|
||||
// // 每月7号发放徽章,发放上个月的
|
||||
// if (day == 7) {
|
||||
// // 查询徽章
|
||||
// List<CuHonorWall> cuHonorWallList = cuHonorWallService.queryCuHonorWall();
|
||||
// Map<String, CuHonorWall> honorWallMap = new HashMap<>();
|
||||
// cuHonorWallList.forEach(cuHonorWall -> {
|
||||
// String key = cuHonorWall.getPkCountry().toString() + cuHonorWall.getType() + cuHonorWall.getValue();
|
||||
// honorWallMap.put(key, cuHonorWall);
|
||||
// });
|
||||
// List<CuMemberHonorWall> cuMemberHonorWallList = new ArrayList<>();
|
||||
// // 上月期间,作为结束期间
|
||||
// String beforeFirstMonthDate = DateUtils.beforeMonthFirstDateStr(settleDate);
|
||||
// CuMemberSettlePeriod beforePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(beforeFirstMonthDate);
|
||||
// // 月徽章
|
||||
// grantHonorWall(beforePeriod.getPkId(), cuMemberSettlePeriod.getPkId(), settleMonth,
|
||||
// HonorWallType.RECOMMEND_MONTH.getValue(), HonorWallType.ANTIFADING_MONTH.getValue(), honorWallMap, cuMemberHonorWallList);
|
||||
// // 再发季度徽章
|
||||
// if (month == 1 || month == 4 || month == 7 || month == 10) {
|
||||
// // 3个月期间,作为开始期间
|
||||
// String quarterFirstMonthDate = DateUtils.beforeMonthFirstDateStr(3, settleDate);
|
||||
// CuMemberSettlePeriod quarterPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(quarterFirstMonthDate);
|
||||
// grantHonorWall(quarterPeriod.getPkId(), cuMemberSettlePeriod.getPkId(), settleMonth,
|
||||
// HonorWallType.RECOMMEND_QUARTER.getValue(), HonorWallType.ANTIFADING_QUARTER.getValue(), honorWallMap, cuMemberHonorWallList);
|
||||
// if (month == 1) {
|
||||
// // 再发年度徽章
|
||||
// // 3个月期间,作为开始期间
|
||||
// String yearFirstMonthDate = DateUtils.beforeMonthFirstDateStr(12, settleDate);
|
||||
// CuMemberSettlePeriod yearPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yearFirstMonthDate);
|
||||
// if (yearPeriod != null) {
|
||||
// grantHonorWall(yearPeriod.getPkId(), cuMemberSettlePeriod.getPkId(), settleMonth,
|
||||
// HonorWallType.RECOMMEND_QUARTER.getValue(), HonorWallType.ANTIFADING_QUARTER.getValue(), honorWallMap, cuMemberHonorWallList);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// if (cuMemberHonorWallList.size() > 0) {
|
||||
// cuMemberHonorWallService.saveBatch(cuMemberHonorWallList);
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -28,9 +28,7 @@ import java.time.temporal.ChronoUnit;
|
|||
import java.util.*;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员结算期间 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-10-26
|
||||
|
@ -38,22 +36,15 @@ import java.util.*;
|
|||
@Service
|
||||
public class CuMemberSettlePeriodServiceImpl extends ServiceImpl<CuMemberSettlePeriodMapper, CuMemberSettlePeriod> implements ICuMemberSettlePeriodService {
|
||||
|
||||
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodDetailService cuMemberSettlePeriodDetailService;
|
||||
|
||||
@DubboReference
|
||||
private ICountryServiceApi countryServiceApi;
|
||||
|
||||
ICountryServiceApi countryServiceApi;
|
||||
@DubboReference
|
||||
private ISystemConfigServiceApi systemConfigServiceApi;
|
||||
|
||||
@Autowired
|
||||
public void setRedisService(RedisService redisService) {
|
||||
this.redisService = redisService;
|
||||
}
|
||||
ISystemConfigServiceApi systemConfigServiceApi;
|
||||
|
||||
@Override
|
||||
public void initCuMemberPeriod(String settleDate) {
|
||||
|
@ -63,11 +54,10 @@ public class CuMemberSettlePeriodServiceImpl extends ServiceImpl<CuMemberSettleP
|
|||
packageSettleCountry(weekSettleCountry, daySettleCountry);
|
||||
List<CuMemberSettlePeriodDetail> cuMemberSettlePeriodDetailList = new ArrayList<>();
|
||||
Date startDate = DateUtils.parseStringToDate("2021-01-12");
|
||||
Date endDate = DateUtils.parseStringToDate(settleDate);
|
||||
Map<String, CuMemberSettlePeriod> memberSettlePeriodMap = queryCuMemberSettlePeriod(startDate,
|
||||
endDate);
|
||||
Date endDate = DateUtils.parseStringToDate(settleDate);
|
||||
Map<String, CuMemberSettlePeriod> memberSettlePeriodMap = queryCuMemberSettlePeriod(startDate, endDate);
|
||||
List<String> periodList = new ArrayList<>();
|
||||
while (DateUtils.compareDate(endDate, startDate) >=0) {
|
||||
while (DateUtils.compareDate(endDate, startDate) >= 0) {
|
||||
if (daySettleCountry.size() > 0) {
|
||||
CuMemberSettlePeriod cuMemberSettlePeriod = memberSettlePeriodMap.get(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, startDate));
|
||||
for (Integer pkCountry : daySettleCountry) {
|
||||
|
|
|
@ -32,9 +32,7 @@ import java.util.*;
|
|||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员网体历史记录 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-10-31
|
||||
|
@ -42,39 +40,20 @@ import java.util.stream.Collectors;
|
|||
@Slf4j
|
||||
@Service
|
||||
public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuMemberTree> implements ICuMemberTreeService {
|
||||
|
||||
@Autowired
|
||||
private ICuMemberTreeService memberTreeService;
|
||||
@Autowired
|
||||
private ICuMemberAchieveService cuMemberAchieveService;
|
||||
|
||||
@Autowired
|
||||
private CuMemberBonusSettle cuMemberBonusSettle;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService cuMemberSettlePeriodService;
|
||||
|
||||
@Autowired
|
||||
private ICuMemberAssessService cuMemberAssessService;
|
||||
|
||||
@Autowired
|
||||
private ICuBonusExpandService bonusExpandService;
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberAssessService(ICuMemberAssessService cuMemberAssessService) {
|
||||
this.cuMemberAssessService = cuMemberAssessService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberSettlePeriodService(ICuMemberSettlePeriodService cuMemberSettlePeriodService) {
|
||||
this.cuMemberSettlePeriodService = cuMemberSettlePeriodService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberBonusSettle(CuMemberBonusSettle cuMemberBonusSettle) {
|
||||
this.cuMemberBonusSettle = cuMemberBonusSettle;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setCuMemberAchieveService(ICuMemberAchieveService cuMemberAchieveService) {
|
||||
this.cuMemberAchieveService = cuMemberAchieveService;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void createCuMemberTree(String date) {
|
||||
|
@ -138,11 +117,11 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
|
|||
baseMapper.createCuMemberTreeDayOnlyIndex(secondRangeTableName);
|
||||
}
|
||||
|
||||
// 删除30天前的结算日表,结算秒表
|
||||
Date beforeDate = DateUtils.beforeDate(30, ChronoUnit.DAYS, DateUtils.parseStringToDate(date));
|
||||
// 删除60天前的结算日表,结算秒表
|
||||
Date beforeDate = DateUtils.beforeDate(60, ChronoUnit.DAYS, DateUtils.parseStringToDate(date));
|
||||
// 上个月最后一天
|
||||
int beforePeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, beforeDate)).getPkId();
|
||||
// 不删除每月最后一条数据
|
||||
// 不删除每月最后一天数据
|
||||
String afterDate = DateUtils.parseDateTimeToStr(DateUtils.YYYY_MM_DD, DateUtils.afterDate(1, ChronoUnit.DAYS, beforeDate));
|
||||
if (!afterDate.endsWith("01")) {
|
||||
String beforeSettleTableName = TableNameConstants.CU_MEMBER_SETTLE + beforePeriod;
|
||||
|
@ -807,14 +786,16 @@ public class CuMemberTreeServiceImpl extends ServiceImpl<CuMemberTreeMapper, CuM
|
|||
public void updateCuMemberAwardsBySettle(String settleTableName, String rangeTableName, Integer startPeriod, Integer period) {
|
||||
// 每月重新初始化奖衔,初始化为会员
|
||||
baseMapper.updateCuMemberSettleAwardsInit(settleTableName);
|
||||
baseMapper.updateCuMemberRangeAwardsInit(rangeTableName);
|
||||
// 根据新计算的奖衔更新奖衔
|
||||
baseMapper.updateCuMemberSettleAwardsBySettle(settleTableName, startPeriod, period);
|
||||
baseMapper.updateCuMemberRangeAwardsBySettle(rangeTableName, startPeriod, period);
|
||||
baseMapper.updateCuMemberAwardsInit();
|
||||
baseMapper.updateMemberRangeAwardsInit();
|
||||
baseMapper.updateCuMemberAwardsBySettle(startPeriod, period);
|
||||
|
||||
baseMapper.updateCuMemberRangeAwardsInit(rangeTableName);
|
||||
baseMapper.updateCuMemberRangeAwardsBySettle(rangeTableName, startPeriod, period);
|
||||
baseMapper.updateMemberRangeAwardsInit();
|
||||
baseMapper.updateMemberRangeAwardsBySettle(startPeriod, period);
|
||||
|
||||
baseMapper.updateCuMemberMaxAwardsBySettle();
|
||||
}
|
||||
|
||||
|
|
|
@ -1,25 +1,14 @@
|
|||
package com.hzs.bonus.base.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.ext.CuHonorWallExt;
|
||||
import com.hzs.common.domain.member.honor.CuHonorWall;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 荣誉墙 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
*/
|
||||
public interface CuHonorWallMapper extends BaseMapper<CuHonorWall> {
|
||||
/**
|
||||
* 查询荣誉墙全量信息
|
||||
* @param pkCountry
|
||||
* @return
|
||||
*/
|
||||
List<CuHonorWallExt> queryAll(@Param("pkCountry") Integer pkCountry, @Param("pkMember") Long pkMember);
|
||||
|
||||
}
|
||||
|
|
|
@ -4,9 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|||
import com.hzs.common.domain.member.honor.CuMemberHonorWall;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员荣誉墙关联表 Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
|
|
|
@ -1,27 +1,14 @@
|
|||
package com.hzs.bonus.base.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.hzs.common.domain.member.ext.CuHonorWallExt;
|
||||
import com.hzs.common.domain.member.honor.CuHonorWall;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 荣誉墙 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
*/
|
||||
public interface ICuHonorWallService extends IService<CuHonorWall> {
|
||||
|
||||
/*
|
||||
* @description: 查询所有的徽章
|
||||
* @author: sui q
|
||||
* @date: 2023/6/7 14:30
|
||||
* @param: null null
|
||||
**/
|
||||
List<CuHonorWall> queryCuHonorWall();
|
||||
|
||||
}
|
||||
|
|
|
@ -4,9 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
|||
import com.hzs.common.domain.member.honor.CuMemberHonorWall;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员荣誉墙关联表 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
|
|
|
@ -1,18 +1,13 @@
|
|||
package com.hzs.bonus.base.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.bonus.base.mapper.CuHonorWallMapper;
|
||||
import com.hzs.bonus.base.service.ICuHonorWallService;
|
||||
import com.hzs.common.domain.member.honor.CuHonorWall;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 荣誉墙 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
|
@ -20,11 +15,4 @@ import java.util.List;
|
|||
@Service
|
||||
public class CuHonorWallServiceImpl extends ServiceImpl<CuHonorWallMapper, CuHonorWall> implements ICuHonorWallService {
|
||||
|
||||
@Override
|
||||
public List<CuHonorWall> queryCuHonorWall() {
|
||||
QueryWrapper<CuHonorWall> queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.select("pk_id,PK_COUNTRY,TYPE,VALUE,IMG");
|
||||
return baseMapper.selectList(queryWrapper);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -7,9 +7,7 @@ import com.hzs.common.domain.member.honor.CuMemberHonorWall;
|
|||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 会员荣誉墙关联表 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2023-04-26
|
||||
|
|
|
@ -36,7 +36,7 @@ import java.util.List;
|
|||
@RestController
|
||||
@RequestMapping("/api/bonus")
|
||||
@Slf4j
|
||||
public class ApiCuMemberBonusController extends BaseController {
|
||||
public class ApiCuMemberBonusController extends BaseController {
|
||||
|
||||
private ICuMemberBonusService cuMemberBonusService;
|
||||
|
||||
|
@ -83,7 +83,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询直推
|
||||
*/
|
||||
@PostMapping("/query-bonus-first")
|
||||
public TableDataInfo listFirstRepurchaseBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listFirstRepurchaseBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusFirstPurchaseVO> firstPurchaseVOList = new ArrayList<>();
|
||||
|
@ -96,14 +96,29 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
// memberBonusFirstPurchaseVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// memberBonusFirstPurchaseVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// if(DateUtils.compareDate(cuMemberBonus.getSettleDate(), DateUtils.parseStringToDate("2024-09-09"))>0) {
|
||||
BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getDirectIncome(), memberBonusFirstPurchaseVO.getExpandIncome(),
|
||||
memberBonusFirstPurchaseVO.getCoachIncome(), memberBonusFirstPurchaseVO.getServiceIncome(), memberBonusFirstPurchaseVO.getShareIncome(),
|
||||
memberBonusFirstPurchaseVO.getRepurExpandIncome(), memberBonusFirstPurchaseVO.getRepurRangeIncome(), memberBonusFirstPurchaseVO.getRepurPushIncome()),
|
||||
ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getRepurRealSubtotal()));
|
||||
memberBonusFirstPurchaseVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
memberBonusFirstPurchaseVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// 新版逻辑,首购+复购合并计算显示
|
||||
|
||||
// TODO new 乐学直推级差收益现在扣20%,所以直接使用库中的就可以
|
||||
// BigDecimal serviceSpend = ComputeUtil.computeSubtract(
|
||||
// // 直推收益 + 拓展收益 + 辅导收益 + 分红收益 + 报单收益 + 复购拓展收益 + 复购级差收益 + 复购推荐收益 + 乐学直推收益
|
||||
// ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getDirectIncome(), memberBonusFirstPurchaseVO.getExpandIncome(),
|
||||
// memberBonusFirstPurchaseVO.getCoachIncome(), memberBonusFirstPurchaseVO.getShareIncome(), memberBonusFirstPurchaseVO.getServiceIncome(),
|
||||
// memberBonusFirstPurchaseVO.getRepurExpandIncome(), memberBonusFirstPurchaseVO.getRepurRangeIncome(), memberBonusFirstPurchaseVO.getRepurPushIncome(),
|
||||
// memberBonusFirstPurchaseVO.getGlobalPoints()),
|
||||
//
|
||||
// ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getRepurRealSubtotal())
|
||||
//
|
||||
// );
|
||||
// memberBonusFirstPurchaseVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// memberBonusFirstPurchaseVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
memberBonusFirstPurchaseVO.setBackPoints(cuMemberBonus.getBackPoints());
|
||||
memberBonusFirstPurchaseVO.setServiceSpend(cuMemberBonus.getServiceSpend());
|
||||
|
||||
// 拓展收益 = 首购拓展 + 复购拓展 + 复购推荐
|
||||
memberBonusFirstPurchaseVO.setExpandIncome(ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getExpandIncome(), memberBonusFirstPurchaseVO.getRepurExpandIncome(), memberBonusFirstPurchaseVO.getRepurPushIncome()));
|
||||
// 首购实发小计 = 首购实发小计 + 复购实发小计
|
||||
memberBonusFirstPurchaseVO.setPurRealSubtotal(ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getRepurRealSubtotal()));
|
||||
|
||||
// }else{
|
||||
// BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(memberBonusFirstPurchaseVO.getDirectIncome(), memberBonusFirstPurchaseVO.getExpandIncome(),
|
||||
// memberBonusFirstPurchaseVO.getCoachIncome(), memberBonusFirstPurchaseVO.getServiceIncome(), memberBonusFirstPurchaseVO.getShareIncome(),
|
||||
|
@ -112,7 +127,9 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
// memberBonusFirstPurchaseVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// memberBonusFirstPurchaseVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
// }
|
||||
memberBonusFirstPurchaseVO.setPurRealSubtotal(ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getGlobalPoints()));
|
||||
// TODO new 乐学直推结算时,已经加到首购实发小计,此处不需要再累加
|
||||
// memberBonusFirstPurchaseVO.setPurRealSubtotal(ComputeUtil.computeAdd(memberBonusFirstPurchaseVO.getPurRealSubtotal(), memberBonusFirstPurchaseVO.getGlobalPoints()));
|
||||
|
||||
firstPurchaseVOList.add(memberBonusFirstPurchaseVO);
|
||||
});
|
||||
return getDataTable(firstPurchaseVOList);
|
||||
|
@ -122,7 +139,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员实时奖金,当日的奖金
|
||||
*/
|
||||
@PostMapping("/query-current-bonus")
|
||||
public TableDataInfo listCurrentBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listCurrentBonus(@RequestBody BonusParam bonusParam) {
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
bonusParam.setPkMember(SecurityUtils.getUserId());
|
||||
bonusParam.setStartDate(DateUtils.currentDate());
|
||||
|
@ -131,7 +148,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberSecondBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusVO> memberBonusVOList = new ArrayList<>();
|
||||
cuMemberBonusList.forEach(cuMemberBonus -> {
|
||||
if(ComputeUtil.compareValue(cuMemberBonus.getRealIncomeTotal())) {
|
||||
if (ComputeUtil.compareValue(cuMemberBonus.getRealIncomeTotal())) {
|
||||
MemberBonusVO memberBonusVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusVO.class, "settleDate");
|
||||
// // 首购
|
||||
// BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(memberBonusVO.getDirectIncome(), memberBonusVO.getExpandIncome(),
|
||||
|
@ -160,8 +177,8 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
memberBonusVO.setServiceSpend(BigDecimal.ZERO);
|
||||
memberBonusVO.setSettleDate(DateUtils.currentDate());
|
||||
BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(cuMemberBonus.getDirectIncome(), cuMemberBonus.getExpandIncome(),
|
||||
cuMemberBonus.getCoachIncome(), cuMemberBonus.getServiceIncome(), cuMemberBonus.getShareIncome(),
|
||||
cuMemberBonus.getRepurExpandIncome(), cuMemberBonus.getRepurRangeIncome(), cuMemberBonus.getRepurPushIncome()),
|
||||
cuMemberBonus.getCoachIncome(), cuMemberBonus.getServiceIncome(), cuMemberBonus.getShareIncome(),
|
||||
cuMemberBonus.getRepurExpandIncome(), cuMemberBonus.getRepurRangeIncome(), cuMemberBonus.getRepurPushIncome()),
|
||||
ComputeUtil.computeAdd(cuMemberBonus.getPurRealSubtotal(), cuMemberBonus.getRepurRealSubtotal()));
|
||||
memberBonusVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
memberBonusVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
|
@ -181,16 +198,16 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员昨天奖金的值
|
||||
*/
|
||||
@PostMapping("/query-bonus-total")
|
||||
public TableDataInfo lisBonusTotal(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo lisBonusTotal(@RequestBody BonusParam bonusParam) {
|
||||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
bonusParam.setPkMember(SecurityUtils.getUserId());
|
||||
bonusParam.setStartDate(DateUtils.beforeDate(1, ChronoUnit.DAYS));
|
||||
bonusParam.setEndDate(DateUtils.currentDate());
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusTotalByCondition(bonusParam);
|
||||
MemberRealIncomeVO memberRealIncomeVO = new MemberRealIncomeVO();
|
||||
if(CollectionUtil.isEmpty(cuMemberBonusList)){
|
||||
if (CollectionUtil.isEmpty(cuMemberBonusList)) {
|
||||
memberRealIncomeVO.setRealIncomeTotal(BigDecimal.ZERO);
|
||||
}else {
|
||||
} else {
|
||||
memberRealIncomeVO.setRealIncomeTotal(cuMemberBonusList.get(0).getRealIncomeTotal());
|
||||
}
|
||||
return getDataTable(Collections.singletonList(memberRealIncomeVO));
|
||||
|
@ -200,7 +217,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-repurchase")
|
||||
public TableDataInfo listRepurchaseBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listRepurchaseBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusPurchaseVO> memberBonusPurchaseVoList = new ArrayList<>();
|
||||
|
@ -217,7 +234,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
}
|
||||
|
||||
@PostMapping("/query-bonus-range")
|
||||
public TableDataInfo listRangeBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listRangeBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusPurchaseVO> memberBonusPurchaseVoList = new ArrayList<>();
|
||||
|
@ -232,7 +249,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
.build();
|
||||
packageSettleDate(cuMemberBonus, memberBonusPurchaseVO);
|
||||
BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(memberBonusPurchaseVO.getRepurPushIncome(), memberBonusPurchaseVO.getRepurExpandIncome(),
|
||||
memberBonusPurchaseVO.getRepurRangeIncome(), memberBonusPurchaseVO.getDirectIncome(), memberBonusPurchaseVO.getStoreIncome()),
|
||||
memberBonusPurchaseVO.getRepurRangeIncome(), memberBonusPurchaseVO.getDirectIncome(), memberBonusPurchaseVO.getStoreIncome()),
|
||||
memberBonusPurchaseVO.getRepurRealSubtotal());
|
||||
memberBonusPurchaseVO.setBackPoints(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
memberBonusPurchaseVO.setServiceSpend(ComputeUtil.computeMultiplyHalf(serviceSpend));
|
||||
|
@ -245,7 +262,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-hi-fun")
|
||||
public TableDataInfo listHiFunBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listHiFunBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusHiFunVO> bonusHiFunVoList = new ArrayList<>();
|
||||
|
@ -259,11 +276,11 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
}
|
||||
|
||||
private static void packageSettleDate(CuMemberBonusExt cuMemberBonus, PubMemberBonusVO pubMemberBonusVO) {
|
||||
if(cuMemberBonus.getEndSettleDate() == null){
|
||||
if (cuMemberBonus.getEndSettleDate() == null) {
|
||||
pubMemberBonusVO.setSettleDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonus.getSettleDate()));
|
||||
}else{
|
||||
} else {
|
||||
pubMemberBonusVO.setSettleDate(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonus.getSettleDate()) + "-" +
|
||||
DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonus.getEndSettleDate()) );
|
||||
DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, cuMemberBonus.getEndSettleDate()));
|
||||
}
|
||||
pubMemberBonusVO.setServiceSpend(BigDecimal.ZERO);
|
||||
}
|
||||
|
@ -272,16 +289,16 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-cloud")
|
||||
public TableDataInfo listCloudAgentBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listCloudAgentBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusCloudAgentVO> memberBonusCloudAgentVoArrayList = new ArrayList<>();
|
||||
cuMemberBonusList.forEach(cuMemberBonus -> {
|
||||
if(ComputeUtil.compareValue(cuMemberBonus.getCloudRepurIncome())) {
|
||||
if (ComputeUtil.compareValue(cuMemberBonus.getCloudRepurIncome())) {
|
||||
MemberBonusCloudAgentVO bonusCloudAgentVO = BeanUtil.copyProperties(cuMemberBonus, MemberBonusCloudAgentVO.class, "settleDate");
|
||||
packageSettleDate(cuMemberBonus, bonusCloudAgentVO);
|
||||
BigDecimal serviceSpend = ComputeUtil.computeSubtract(ComputeUtil.computeAddNum(bonusCloudAgentVO.getCloudDirectIncome(),
|
||||
bonusCloudAgentVO.getCloudPurIncome(), bonusCloudAgentVO.getCloudRepurIncome()),
|
||||
bonusCloudAgentVO.getCloudPurIncome(), bonusCloudAgentVO.getCloudRepurIncome()),
|
||||
bonusCloudAgentVO.getCloudRealSubtotal());
|
||||
bonusCloudAgentVO.setServiceSpend(serviceSpend);
|
||||
memberBonusCloudAgentVoArrayList.add(bonusCloudAgentVO);
|
||||
|
@ -294,7 +311,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-coupon")
|
||||
public TableDataInfo listRepurchaseCouponBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listRepurchaseCouponBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusRepurchaseCouponVO> memberBonusRepurchaseCouponList = new ArrayList<>();
|
||||
|
@ -313,7 +330,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-maker")
|
||||
public TableDataInfo listMakerSpaceBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listMakerSpaceBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusMakerSpaceVO> memberBonusMakerSpaceVoList = new ArrayList<>();
|
||||
|
@ -333,7 +350,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金,默认查询15天内,查询复购
|
||||
*/
|
||||
@PostMapping("/query-bonus-hai-fun")
|
||||
public TableDataInfo listHaiFunBonus(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listHaiFunBonus(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
List<CuMemberBonusExt> cuMemberBonusList = cuMemberBonusService.queryMemberBonusVoByCondition(bonusParam);
|
||||
List<MemberBonusHaiFunVO> bonusHaiFunVoList = new ArrayList<>();
|
||||
|
@ -352,14 +369,14 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
bonusParam.setPkCountry(SecurityUtils.getPkCountry());
|
||||
bonusParam.setPkMember(SecurityUtils.getUserId());
|
||||
Date startDate = DateUtils.beforeDate(15, ChronoUnit.DAYS, DateUtils.currentDate());
|
||||
if(bonusParam.getStartDate() == null){
|
||||
if (bonusParam.getStartDate() == null) {
|
||||
bonusParam.setStartDate(startDate);
|
||||
}else if(DateUtils.compareDateBefore(bonusParam.getStartDate(), startDate)){
|
||||
} else if (DateUtils.compareDateBefore(bonusParam.getStartDate(), startDate)) {
|
||||
bonusParam.setStartDate(startDate);
|
||||
}
|
||||
if(bonusParam.getEndDate() == null){
|
||||
if (bonusParam.getEndDate() == null) {
|
||||
bonusParam.setEndDate(DateUtils.currentDate());
|
||||
}else {
|
||||
} else {
|
||||
bonusParam.setEndDate(DateUtils.afterDate(1, ChronoUnit.DAYS, bonusParam.getEndDate()));
|
||||
}
|
||||
}
|
||||
|
@ -368,7 +385,7 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金来源
|
||||
*/
|
||||
@PostMapping("/query-bonus-detail")
|
||||
public TableDataInfo listBonusSource(@RequestBody BonusParam bonusParam){
|
||||
public TableDataInfo listBonusSource(@RequestBody BonusParam bonusParam) {
|
||||
setBonusParam(bonusParam);
|
||||
startPage();
|
||||
// List<MemberBonusVO> memberBonusVoList = new ArrayList<>();
|
||||
|
@ -386,8 +403,8 @@ public class ApiCuMemberBonusController extends BaseController {
|
|||
* 查询会员某个时间段内的奖金来源
|
||||
*/
|
||||
@PostMapping("/query-mark-bonus-detail")
|
||||
public TableDataInfo listMarkBonusSource(@RequestBody BonusParam bonusParam){
|
||||
if(bonusParam.getStartDate() == null || bonusParam.getBonusValue() == null){
|
||||
public TableDataInfo listMarkBonusSource(@RequestBody BonusParam bonusParam) {
|
||||
if (bonusParam.getStartDate() == null || bonusParam.getBonusValue() == null) {
|
||||
return getDataTable(null);
|
||||
}
|
||||
bonusParam.setEndDate(DateUtils.afterDate(1, ChronoUnit.DAYS, bonusParam.getStartDate()));
|
||||
|
|
|
@ -985,7 +985,9 @@ public abstract class BonusSettleHandle {
|
|||
// 处理扣项
|
||||
setBonusDeduct(bdBonusDeduct, cuMemberBonus, bonusDetail);
|
||||
BigDecimal realIncome = ReflectUtils.invokeGetter(bonusDetail, BonusFieldConstants.REAL_INCOME);
|
||||
// 首购实发小计
|
||||
cuMemberBonus.setPurRealSubtotal(ComputeUtil.computeAdd(cuMemberBonus.getPurRealSubtotal(), realIncome));
|
||||
// 实发收益总计
|
||||
cuMemberBonus.setRealIncomeTotal(ComputeUtil.computeAdd(cuMemberBonus.getRealIncomeTotal(), realIncome));
|
||||
}
|
||||
|
||||
|
|
|
@ -347,9 +347,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public void calculateCuMemberBonus(String settleDate, List<SaOrderExt> saOrderExtList) {
|
||||
try {
|
||||
// 期间
|
||||
Integer period = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(settleDate).getPkId();
|
||||
// 会员结算日表(cu_member_settle) + 期间
|
||||
String currentSettleTableName = TableNameConstants.CU_MEMBER_SETTLE + period;
|
||||
String yesterday = DateUtils.beforeDateStr(1, ChronoUnit.DAYS, DateUtils.YYYY_MM_DD, settleDate);
|
||||
// 昨日期间
|
||||
Integer yesterdayPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday).getPkId();
|
||||
// 查询日期-1的网体数据,从日历史表中获得
|
||||
// 将结算日昨日业绩数据 迁移到 网体业绩历史记录结算表
|
||||
|
@ -362,8 +365,7 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
List<CuMemberAchieveLog> cuMemberAchieveLogList = cuMemberAchieveLogService.queryMemberAchieveLogByPeriod(period);
|
||||
// 有特殊业务
|
||||
if (cuMemberAchieveLogList.size() > 0) {
|
||||
cuMemberAchieveLogList.forEach(cuMemberAchieveLog ->
|
||||
cuMemberAchieveService.updateCuMemberSettleAchieveBySpecialBus(currentSettleTableName, period, cuMemberAchieveLog.getPkId()));
|
||||
cuMemberAchieveLogList.forEach(cuMemberAchieveLog -> cuMemberAchieveService.updateCuMemberSettleAchieveBySpecialBus(currentSettleTableName, period, cuMemberAchieveLog.getPkId()));
|
||||
}
|
||||
// 注水到期回退
|
||||
cuMemberAchieveService.mergeCuMemberSettleByAchieveLogByDate(currentSettleTableName, DateUtils.parseStringToDate(settleDate));
|
||||
|
@ -397,9 +399,12 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
saOrderExtList.forEach(saOrderExt -> {
|
||||
//根据订单状态回退网体,查询撤销订单, 撤销订单不进行结算
|
||||
if (saOrderExt.getDelFlag() == EYesNo.NO.getIntValue()) {
|
||||
if (Objects.equals(EOrderType.REGISTER_ORDER.getValue(), saOrderExt.getOrderType())) {
|
||||
if (Objects.equals(EOrderType.REGISTER_ORDER.getValue(), saOrderExt.getOrderType())
|
||||
|| Objects.equals(EOrderType.SPECIAL_REGISTER_ORDER.getValue(), saOrderExt.getOrderType())
|
||||
) {
|
||||
revokeRegSaOrderList.add(saOrderExt);
|
||||
} else if (Objects.equals(EOrderType.UPGRADE_ORDER.getValue(), saOrderExt.getOrderType())) {
|
||||
} else if (Objects.equals(EOrderType.UPGRADE_ORDER.getValue(), saOrderExt.getOrderType())
|
||||
|| Objects.equals(EOrderType.SPECIAL_UPGRADE_ORDER.getValue(), saOrderExt.getOrderType())) {
|
||||
revokeUpdSaOrderList.add(saOrderExt);
|
||||
}
|
||||
return;
|
||||
|
@ -428,16 +433,16 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
// cuMemberTreeService.updateCuMemberBackSettle(cuMemberAchieveHashMap, currentSettleTableName);
|
||||
|
||||
//********************************重新考核*********************************/
|
||||
// TODO new 乐学没有分红、复购考核,这个位置需要去掉???
|
||||
cuMemberAssessService.retryCalculationAssess(DateUtils.parseStringToDate(settleDate), Boolean.TRUE);
|
||||
// TODO new 乐学没有分红、复购考核,这个位置需要去掉
|
||||
// cuMemberAssessService.retryCalculationAssess(DateUtils.parseStringToDate(settleDate), Boolean.TRUE);
|
||||
//*********************************计算奖金********************************/
|
||||
// 首购订单 (注册+升级) 直推奖、量奖、领导奖、(注册)报单服务费
|
||||
Map<Long, CuMemberBonus> cuMemberBonusMap = new HashMap<>();
|
||||
//*********************************根据首购订单计算奖金************************/
|
||||
//计算 直推奖、拓展奖、辅导奖
|
||||
Map<Long, CuMemberSettleExt> cuMemberSettleExtMap = new HashMap<>();
|
||||
// 奖金记录明细(统一入库使用)
|
||||
BonusRecordDetailVO recordDetailVO = new BonusRecordDetailVO();
|
||||
|
||||
// 计算奖金(主入口)
|
||||
// 乐学易考奖金计算,回写代金券数量
|
||||
LeXueRangeParam leXueRangeParam = calculateBonusBySaOrderList(settleDate, period, currentSettleTableName,
|
||||
|
@ -507,16 +512,19 @@ public class BonusSettleServiceImpl implements IBonusSettleService {
|
|||
// 计算完当日奖金后,根据业绩计算下月奖衔
|
||||
String afterDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, currentDate);
|
||||
if (afterDate.endsWith("01")) {
|
||||
String rangeTableName = TableNameConstants.CU_MEMBER_RANGE + period;
|
||||
String monthFirstDate = DateUtils.currentMonthFirstDateStr(DateUtils.parseStringToDate(settleDate));
|
||||
Integer startPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(monthFirstDate).getPkId();
|
||||
// 更新奖衔,根据新结算的奖衔
|
||||
cuMemberTreeService.updateCuMemberAwardsBySettle(currentSettleTableName, rangeTableName, startPeriod, period);
|
||||
// String rangeTableName = TableNameConstants.CU_MEMBER_RANGE + period;
|
||||
// // 月第一天日期
|
||||
// String monthFirstDate = DateUtils.currentMonthFirstDateStr(DateUtils.parseStringToDate(settleDate));
|
||||
// // 月第一天期数
|
||||
// Integer startPeriod = cuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(monthFirstDate).getPkId();
|
||||
// TODO new 不是月奖衔,每月初不更新
|
||||
// // 更新奖衔,根据新结算的奖衔
|
||||
// cuMemberTreeService.updateCuMemberAwardsBySettle(currentSettleTableName, rangeTableName, startPeriod, period);
|
||||
// 结算每月月末那一天,都是先删除,在新增,重新考核
|
||||
cuMemberTreeService.initCuMemberAssessData(settleDate);
|
||||
// 更新奖衔考核结果
|
||||
cuMemberAwardsService.updateCuMemberAwardsExamine(currentDate, period);
|
||||
// 生成月表
|
||||
// 生成月表(cu_member_month)
|
||||
String monthTableName = TableNameConstants.CU_MEMBER_MONTH + DateUtils.getMonth(afterDate);
|
||||
Integer number = cuMemberTreeService.queryExistOracleTable(monthTableName);
|
||||
if (number == null || number <= 0) {
|
||||
|
|
|
@ -3,6 +3,7 @@ package com.hzs.bonus.bonus.vo;
|
|||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.hzs.common.core.annotation.BigDecimalFormat;
|
||||
import com.hzs.common.core.annotation.Transaction;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
@ -68,11 +69,13 @@ public class MemberBonusDetailVO implements Serializable {
|
|||
/**
|
||||
* 订单金额
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal orderAmount;
|
||||
|
||||
/**
|
||||
* 订单业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal orderAchieve;
|
||||
|
||||
/**
|
||||
|
@ -83,6 +86,7 @@ public class MemberBonusDetailVO implements Serializable {
|
|||
/**
|
||||
* 实际收益
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal realIncome;
|
||||
|
||||
/**
|
||||
|
|
|
@ -252,11 +252,6 @@ public class CuMemberAssessServiceImpl extends ServiceImpl<CuMemberAssessMapper,
|
|||
|
||||
/**
|
||||
* 奖金计算时重算考核 (复购考核、分红考核),只重算免考的、撤单的
|
||||
*
|
||||
* @param currentDate 考核时间
|
||||
* @return: void
|
||||
* @Author: sui q
|
||||
* @Date: 2022/11/7 11:19
|
||||
*/
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
|
@ -284,12 +279,7 @@ public class CuMemberAssessServiceImpl extends ServiceImpl<CuMemberAssessMapper,
|
|||
// baseMapper.updateAssessCuMemberToRepExempt(tableName, settleTableName, monthFirstPeriod, startDate, endDate, startPeriod, endPeriod);
|
||||
// // 奖金重算时更新结算表,flag=true代表奖金重算时,重算考核需要更新网体 flag=false 代表重算考核
|
||||
if (flag) {
|
||||
// 2024-09-09 所有人全部免考通过,之后的当月免考通过
|
||||
if (DateUtils.compareDateBefore(currentDate, DateUtils.parseStringToDate("2024-10-01"))) {
|
||||
baseMapper.updateAllCuMemberSettleToRepExempt(settleTableName);
|
||||
} else {
|
||||
baseMapper.updateCuMemberSettleToRepExempt(settleTableName, startDate, endDate, startPeriod, endPeriod);
|
||||
}
|
||||
baseMapper.updateCuMemberSettleToRepExempt(settleTableName, startDate, endDate, startPeriod, endPeriod);
|
||||
}
|
||||
// // 分红免考通过
|
||||
// baseMapper.updateAssessCuMemberToShareExempt(tableName, settleTableName, monthFirstPeriod);
|
||||
|
|
|
@ -27,7 +27,13 @@
|
|||
<insert id="insertCuMemberMonthAchieve">
|
||||
merge into CU_MEMBER_MONTH_ACHIEVE a
|
||||
using (
|
||||
select pk_member, #{period} period, RECOMMEND_MONEY, RECOMMEND_ACHIEVE, REPURCHASE_MONEY, REPURCHASE_ACHIEVE, pk_country
|
||||
select pk_member,
|
||||
#{period} period,
|
||||
RECOMMEND_MONEY,
|
||||
RECOMMEND_ACHIEVE,
|
||||
REPURCHASE_MONEY,
|
||||
REPURCHASE_ACHIEVE,
|
||||
pk_country
|
||||
from (
|
||||
select pk_member,
|
||||
pk_country,
|
||||
|
|
|
@ -22,19 +22,35 @@
|
|||
<result column="IS_RETRY" property="isRetry" />
|
||||
<result column="PK_COUNTRY" property="pkCountry" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="memberPeriod">
|
||||
select cp.pk_id,cp.settle_date,cd.settle_cycle,cd.start_period,cd.end_period,cd.is_settle,
|
||||
cd.publish_date,cd.is_publish,cd.grant_date,cd.is_grant,
|
||||
cd.withdrawal_date,cd.is_withdrawal,cd.is_retry,cd.pk_country from cu_member_settle_period cp
|
||||
inner join cu_member_settle_period_detail cd
|
||||
on cp.pk_id>=cd.start_period and cp.pk_id <= cd.end_period
|
||||
where cp.del_flag=0 and cd.del_flag=0
|
||||
select cp.pk_id,
|
||||
cp.settle_date,
|
||||
cd.settle_cycle,
|
||||
cd.start_period,
|
||||
cd.end_period,
|
||||
cd.is_settle,
|
||||
cd.publish_date,
|
||||
cd.is_publish,
|
||||
cd.grant_date,
|
||||
cd.is_grant,
|
||||
cd.withdrawal_date,
|
||||
cd.is_withdrawal,
|
||||
cd.is_retry,
|
||||
cd.pk_country
|
||||
from cu_member_settle_period cp
|
||||
inner join cu_member_settle_period_detail cd
|
||||
on cp.pk_id >= cd.start_period and cp.pk_id <= cd.end_period
|
||||
where cp.del_flag = 0
|
||||
and cd.del_flag = 0
|
||||
</sql>
|
||||
|
||||
<select id="queryMemberSettlePeriod" resultMap="CuMemberSettlePeriodExt">
|
||||
<include refid="memberPeriod"></include>
|
||||
and cd.pk_country=#{pkCountry}
|
||||
and cd.pk_country=#{pkCountry}
|
||||
and cp.settle_date = #{settleDate, jdbcType=DATE}
|
||||
</select>
|
||||
|
||||
<select id="queryMemberSettlePeriodByCondition" resultMap="CuMemberSettlePeriodExt">
|
||||
<include refid="memberPeriod"></include>
|
||||
and cd.pk_country=#{pkCountry}
|
||||
|
|
|
@ -471,7 +471,7 @@
|
|||
</update>
|
||||
|
||||
<update id="updateCuMemberTreeByCancelOrder">
|
||||
update ${settleTableName} set customer_type =2,category =1
|
||||
update ${settleTableName} set customer_type = 2,category = 1
|
||||
where pk_member in
|
||||
<foreach collection="saOrderExtList" item="item" open="(" close=")" separator=",">
|
||||
#{item.pkMember}
|
||||
|
@ -863,8 +863,8 @@
|
|||
merge into ${settleTableName} a
|
||||
using (select cl.pk_id,cl.pk_member,cl.new_level from cu_member_level cl
|
||||
inner join (
|
||||
select pk_member,max(pk_id) pk_id from cu_member_level
|
||||
where del_flag=0 and upgrade_time < #{currentDate, jdbcType=DATE}
|
||||
select pk_member, max(pk_id) pk_id from cu_member_level
|
||||
where del_flag = 0 and upgrade_time < #{currentDate, jdbcType=DATE}
|
||||
and pk_member in
|
||||
<foreach collection="saOrderExtList" item="item" open="(" close=")" separator=",">
|
||||
#{item.pkMember}
|
||||
|
|
|
@ -2,58 +2,4 @@
|
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.hzs.bonus.base.mapper.CuHonorWallMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.hzs.common.domain.member.honor.CuHonorWall">
|
||||
<id column="PK_ID" property="pkId" />
|
||||
<result column="PK_CREATOR" property="pkCreator" />
|
||||
<result column="CREATION_TIME" property="creationTime" />
|
||||
<result column="PK_MODIFIED" property="pkModified" />
|
||||
<result column="MODIFIED_TIME" property="modifiedTime" />
|
||||
<result column="DEL_FLAG" property="delFlag" />
|
||||
<result column="PK_COUNTRY" property="pkCountry" />
|
||||
<result column="TYPE" property="type" />
|
||||
<result column="VALUE" property="value" />
|
||||
<result column="IMG" property="img" />
|
||||
<result column="NAME" property="name" />
|
||||
</resultMap>
|
||||
<resultMap id="BaseExtResultMap" type="com.hzs.common.domain.member.ext.CuHonorWallExt">
|
||||
<id column="PK_ID" property="pkId" />
|
||||
<result column="PK_CREATOR" property="pkCreator" />
|
||||
<result column="CREATION_TIME" property="creationTime" />
|
||||
<result column="PK_MODIFIED" property="pkModified" />
|
||||
<result column="MODIFIED_TIME" property="modifiedTime" />
|
||||
<result column="DEL_FLAG" property="delFlag" />
|
||||
<result column="PK_COUNTRY" property="pkCountry" />
|
||||
<result column="TYPE" property="type" />
|
||||
<result column="VALUE" property="value" />
|
||||
<result column="IMG" property="img" />
|
||||
<result column="remarks" property="remarks" />
|
||||
<result column="NAME" property="name" />
|
||||
<result column="haveTime" property="haveTime" />
|
||||
<result column="PK_MEMBER" property="pkMember" />
|
||||
|
||||
</resultMap>
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
PK_CREATOR,
|
||||
CREATION_TIME,
|
||||
PK_MODIFIED,
|
||||
MODIFIED_TIME,
|
||||
DEL_FLAG,
|
||||
PK_COUNTRY,
|
||||
PK_ID, TYPE, VALUE, IMG,NAME
|
||||
</sql>
|
||||
|
||||
<select id="queryAll" resultMap="BaseExtResultMap">
|
||||
select
|
||||
hw.*,a.CREATION_TIME haveTime,a.PK_MEMBER
|
||||
from CU_HONOR_WALL hw
|
||||
|
||||
left join (
|
||||
select mhw.CREATION_TIME,mhw.PK_MEMBER,mhw.PK_HONOR_WALL from CU_MEMBER_HONOR_WALL mhw where mhw.PK_MEMBER = #{pkMember}
|
||||
) a on a.PK_HONOR_WALL = hw.pk_id
|
||||
where hw.PK_COUNTRY = #{pkCountry}
|
||||
order by hw.type,hw.value
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -2,12 +2,4 @@
|
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.hzs.bonus.base.mapper.CuMemberHonorWallMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.hzs.common.domain.member.honor.CuMemberHonorWall">
|
||||
<id column="PK_ID" property="pkId"/>
|
||||
<result column="PK_MEMBER" property="pkMember"/>
|
||||
<result column="PK_HONOR_WALL" property="pkHonorWall"/>
|
||||
<result column="SETTLE_MONTH" property="settleMonth"/>
|
||||
</resultMap>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -74,6 +74,7 @@
|
|||
and pk_country = #{pkCountry}
|
||||
</if>
|
||||
</update>
|
||||
|
||||
<delete id="deleteCuMemberBonus">
|
||||
delete
|
||||
from cu_member_bonus
|
||||
|
@ -217,14 +218,19 @@
|
|||
</select>
|
||||
|
||||
<select id="queryMemberBonusByCondition" resultMap="CuMemberBonus">
|
||||
select cp.settle_date,cb.direct_income,cb.expand_income,cb.expand_no_capping,
|
||||
cb.expand_capping,cb.coach_income,cb.share_income,cb.service_income,cb.back_points,cb.service_spend,
|
||||
cb.pur_real_subtotal,cb.repur_push_income,cb.repur_range_income,cb.repur_expand_income,cb.repur_real_subtotal,
|
||||
select
|
||||
cp.settle_date,cb.direct_income,cb.expand_income,
|
||||
cb.expand_no_capping, cb.expand_capping,
|
||||
cb.coach_income,cb.share_income,cb.service_income,
|
||||
cb.back_points,cb.service_spend, cb.pur_real_subtotal,
|
||||
cb.repur_push_income,cb.repur_range_income,cb.repur_expand_income,cb.repur_real_subtotal,
|
||||
cb.cloud_direct_income,cb.cloud_pur_income,cb.cloud_repur_income,cb.cloud_real_subtotal,
|
||||
cb.repur_coupon,cb.repur_coupon_share,cb.repur_coupon_subtotal,cb.store_income,
|
||||
cb.maker_direct_income,cb.maker_share_income,cb.maker_real_subtotal,
|
||||
cb.global_points,cb.car_award_points,cb.hi_fun_income,cb.hai_fun_income,
|
||||
cb.real_income_total from cu_member_bonus cb
|
||||
cb.repur_coupon,cb.repur_coupon_share,cb.repur_coupon_subtotal,
|
||||
cb.store_income, cb.maker_direct_income, cb.maker_share_income, cb.maker_real_subtotal,
|
||||
cb.global_points, cb.car_award_points,
|
||||
cb.hi_fun_income,cb.hai_fun_income,
|
||||
cb.real_income_total
|
||||
from cu_member_bonus cb
|
||||
inner join cu_member_settle_period cp
|
||||
on cb.period = cp.pk_id
|
||||
where cb.del_flag=0 and cp.del_flag=0
|
||||
|
@ -240,6 +246,7 @@
|
|||
</if>
|
||||
order by cp.settle_date desc
|
||||
</select>
|
||||
|
||||
<select id="queryMemberBonusByConditionForServer" resultMap="CuMemberBonus">
|
||||
select cm.member_code,cm.member_name,cm.pk_settle_grade,cm.pk_awards,bv.vertex_name,ct.team_name,
|
||||
cb.period,cp.settle_date,cb.direct_income,cb.expand_income,cb.expand_no_capping,
|
||||
|
|
|
@ -132,6 +132,7 @@
|
|||
<include refid="CuMemberAssessColumn"></include>
|
||||
)
|
||||
</update>
|
||||
|
||||
<update id="createCuMemberTableUniqueIndex">
|
||||
create unique index ${tableName}_PK_M on ${tableName}(PK_MEMBER,period, assess_type)
|
||||
</update>
|
||||
|
|
|
@ -95,17 +95,21 @@
|
|||
#{item.pkMember}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
<update id="updateCuMemberAwardsExamine">
|
||||
merge into cu_member_settle_awards a
|
||||
using(
|
||||
select ca.pk_member,ca.period,ce.assess_target,ce.assess_status from cu_member_settle_awards ca
|
||||
inner join ${assessTableName} ce
|
||||
on ca.pk_member=ce.pk_member
|
||||
where ca.period=#{awardPeriod} and ce.period=#{assessPeriod}
|
||||
) b on (a.pk_member=b.pk_member and a.period=b.period)
|
||||
when matched then
|
||||
update set a.assess_target=b.assess_target,a.assess_status=b.assess_status
|
||||
using (
|
||||
select ca.pk_member, ca.period, ce.assess_target, ce.assess_status
|
||||
from cu_member_settle_awards ca
|
||||
inner join ${assessTableName} ce
|
||||
on ca.pk_member = ce.pk_member
|
||||
where ca.period = #{awardPeriod}
|
||||
and ce.period = #{assessPeriod}
|
||||
) b on (a.pk_member = b.pk_member and a.period = b.period)
|
||||
when matched then
|
||||
update set a.assess_target = b.assess_target,a.assess_status = b.assess_status
|
||||
</update>
|
||||
|
||||
<update id="calculateCuMemberRangeAwardsEveryMonth">
|
||||
merge into cu_member_settle_awards a
|
||||
using(
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.BigDecimalFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import com.hzs.common.core.annotation.Transaction;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
|
@ -8,7 +9,6 @@ import lombok.AllArgsConstructor;
|
|||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
@ -102,7 +102,6 @@ public class CuMemberVO implements Serializable {
|
|||
/**
|
||||
* 历史荣誉
|
||||
*/
|
||||
@Excel(name = "历史荣誉")
|
||||
private String histroyAwardsName;
|
||||
|
||||
/**
|
||||
|
@ -110,8 +109,8 @@ public class CuMemberVO implements Serializable {
|
|||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.KEY_GRADE)
|
||||
private Integer agentGrade;
|
||||
@Excel(name = "代理等级")
|
||||
private String agentGradeVal;
|
||||
|
||||
/**
|
||||
* 订单来源 (1=实单注册,2=空单注册)订单状态 EOrderSource
|
||||
*/
|
||||
|
@ -133,9 +132,7 @@ public class CuMemberVO implements Serializable {
|
|||
/**
|
||||
* 讲师级别
|
||||
*/
|
||||
@Excel(name = "讲师级别")
|
||||
private String lecturerLevelVal;
|
||||
@Excel(name = "系统级别")
|
||||
private String systemLevelVal;
|
||||
|
||||
/**
|
||||
|
@ -156,13 +153,15 @@ public class CuMemberVO implements Serializable {
|
|||
/**
|
||||
* 消费金额 注册金额
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
@Excel(name = "注册金额")
|
||||
private BigDecimal consumeMoney;
|
||||
|
||||
/**
|
||||
* 消费业绩 注册业绩
|
||||
*/
|
||||
@Excel(name = "注册业绩($)")
|
||||
@BigDecimalFormat
|
||||
@Excel(name = "注册业绩")
|
||||
private BigDecimal consumeAchieve;
|
||||
/**
|
||||
* 隶属体系
|
||||
|
@ -215,13 +214,11 @@ public class CuMemberVO implements Serializable {
|
|||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.YES_NO_ATTESTATION)
|
||||
private Integer isMakerSpace;
|
||||
@Excel(name = "创客空间")
|
||||
private String isMakerSpaceVal;
|
||||
/**
|
||||
* 是否创客空间体验中心(2=已认证;其他是=未认证)EYesNoAttestation 将0转为2
|
||||
*/
|
||||
private Integer storeType;
|
||||
@Excel(name = "体验中心")
|
||||
private String storeTypeVal;
|
||||
/**
|
||||
* 账户状态(0=正常,1=冻结,2=封停) EAccountStatus
|
||||
|
@ -296,12 +293,10 @@ public class CuMemberVO implements Serializable {
|
|||
*/
|
||||
@Transaction(transactionKey = EnumsPrefixConstants.DEALER_YES_NO)
|
||||
private Integer isMakerGift;
|
||||
@Excel(name = "创客合伙人")
|
||||
private String isMakerGiftVal;
|
||||
/**
|
||||
* 系统类型 ESystemType
|
||||
*/
|
||||
@Excel(name = "系统类型")
|
||||
private String systemTypeStr;
|
||||
/**
|
||||
* 创客合伙时间
|
||||
|
@ -587,7 +582,6 @@ public class CuMemberVO implements Serializable {
|
|||
private Integer pkBdBank;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 会员头像
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue