Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
5ade87a91d
|
@ -128,6 +128,12 @@ public interface CuMemberRetailRangeMapper extends BaseMapper<CuMemberRetailRang
|
|||
*/
|
||||
void updateMemberRetailSecondRangeParent(@Param("tableName") String tableName, @Param("orderExt") SaOrderExt orderExt, @Param("memberList") List<CuMemberExt> memberList, @Param("updateType") Integer updateType, @Param("symbol") String symbol);
|
||||
|
||||
|
||||
void initMemberRetailSecondRange(@Param("tableName") String tableName, @Param("member") CuMemberExt memberList);
|
||||
|
||||
/**
|
||||
* 查询直推会员数据
|
||||
*/
|
||||
List<CuMemberRetailRangeExt> listChildRetail(@Param("rangeTableName") String rangeTableName,
|
||||
@Param("pkParentList") List<Long> pkParentList);
|
||||
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ public interface ICuMemberRetailDetailService extends IService<CuMemberRetailDet
|
|||
/**
|
||||
* 会员直推对应的点位数据
|
||||
*/
|
||||
void listChildRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
|
||||
List<Long> queryMemberList, EBonusStage eBonusStage);
|
||||
void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
|
||||
CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage);
|
||||
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.hzs.bonus.achieve.service.impl;
|
|||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.hzs.bonus.achieve.mapper.CuMemberRetailDetailMapper;
|
||||
import com.hzs.bonus.achieve.mapper.CuMemberRetailRangeMapper;
|
||||
import com.hzs.bonus.achieve.service.ICuMemberRetailDetailService;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||
|
@ -12,6 +13,7 @@ import com.hzs.common.domain.member.achieve.ext.CuMemberRetailRangeExt;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
|
@ -20,6 +22,9 @@ import java.util.*;
|
|||
@Service
|
||||
public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailDetailMapper, CuMemberRetailDetail> implements ICuMemberRetailDetailService {
|
||||
|
||||
@Resource
|
||||
private CuMemberRetailRangeMapper cuMemberRetailRangeMapper;
|
||||
|
||||
@Autowired
|
||||
private CuMemberBonusSettle cuMemberBonusSettle;
|
||||
|
||||
|
@ -35,32 +40,7 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailD
|
|||
pkMemberList.forEach(tmpIdList -> {
|
||||
// 查询明细数据(指定阶段,未完成的)
|
||||
List<CuMemberRetailDetail> tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), null != eBonusStageStatus ? eBonusStageStatus.getValue() : null);
|
||||
if (CollectionUtil.isNotEmpty(tmpList)) {
|
||||
// 明细数据放到对应的会员数据中
|
||||
for (CuMemberRetailDetail cuMemberRetailDetail : tmpList) {
|
||||
CuMemberRetailRangeExt cuMemberRetailRangeExt = memberRangeExtMap.get(cuMemberRetailDetail.getPkMember());
|
||||
if (null == cuMemberRetailRangeExt.getOneDetailMap()) {
|
||||
cuMemberRetailRangeExt.setOneDetailMap(new LinkedHashMap<>());
|
||||
}
|
||||
if (null == cuMemberRetailRangeExt.getTwoDetailMap()) {
|
||||
cuMemberRetailRangeExt.setTwoDetailMap(new LinkedHashMap<>());
|
||||
}
|
||||
if (null == cuMemberRetailRangeExt.getThreeDetailMap()) {
|
||||
cuMemberRetailRangeExt.setThreeDetailMap(new LinkedHashMap<>());
|
||||
}
|
||||
// 使用有序map,为了后续业务处理方便
|
||||
if (EBonusStage.ONE.getValue() == eBonusStage.getValue()) {
|
||||
// 阶段一点位列表
|
||||
cuMemberRetailRangeExt.getOneDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail);
|
||||
} else if (EBonusStage.TWO.getValue() == eBonusStage.getValue()) {
|
||||
// 阶段二点位列表
|
||||
cuMemberRetailRangeExt.getTwoDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail);
|
||||
} else if (EBonusStage.THREE.getValue() == eBonusStage.getValue()) {
|
||||
// 阶段三点位列表
|
||||
cuMemberRetailRangeExt.getThreeDetailMap().put(cuMemberRetailDetail.getChildNode(), cuMemberRetailDetail);
|
||||
}
|
||||
}
|
||||
}
|
||||
packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -69,6 +49,13 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailD
|
|||
List<Long> queryMemberList, EBonusStage eBonusStage) {
|
||||
// 查询明细数据(指定阶段,未完成的)
|
||||
List<CuMemberRetailDetail> tmpDetailList = baseMapper.listMemberRetailDetail(retailDetailTableName, queryMemberList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue());
|
||||
packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpDetailList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 封装三个明细map
|
||||
*/
|
||||
private void packageThreeDetailMap(Map<Long, CuMemberRetailRangeExt> memberRangeExtMap, EBonusStage eBonusStage, List<CuMemberRetailDetail> tmpDetailList) {
|
||||
if (CollectionUtil.isNotEmpty(tmpDetailList)) {
|
||||
// 明细数据放到对应的会员数据中
|
||||
for (CuMemberRetailDetail cuMemberRetailDetail : tmpDetailList) {
|
||||
|
@ -99,9 +86,42 @@ public class CuMemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailD
|
|||
}
|
||||
|
||||
@Override
|
||||
public void listChildRetailDetail(String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
|
||||
List<Long> queryMemberList, EBonusStage eBonusStage) {
|
||||
public void listChildRetailDetail(String rangeTableName, String retailDetailTableName, Map<Long, CuMemberRetailRangeExt> memberRangeExtMap,
|
||||
CuMemberRetailRangeExt sourceMember, EBonusStage eBonusStage) {
|
||||
if (null != sourceMember.getChildRetailMap()) {
|
||||
// 直推会员列表存在,则直接结束
|
||||
return;
|
||||
}
|
||||
sourceMember.setChildRetailMap(new LinkedHashMap<>());
|
||||
|
||||
// 会员直推数据
|
||||
List<CuMemberRetailRangeExt> retailRangeList = cuMemberRetailRangeMapper.listChildRetail(rangeTableName, Collections.singletonList(sourceMember.getPkParent()));
|
||||
if (CollectionUtil.isNotEmpty(retailRangeList)) {
|
||||
// 直推数据列表
|
||||
LinkedHashMap<Date, CuMemberRetailRangeExt> childRetailMap = sourceMember.getChildRetailMap();
|
||||
|
||||
List<Long> queryMemberList = new ArrayList<>();
|
||||
for (CuMemberRetailRangeExt cuMemberRetailRangeExt : retailRangeList) {
|
||||
CuMemberRetailRangeExt tmpMemberRetailRange = memberRangeExtMap.get(cuMemberRetailRangeExt.getPkMember());
|
||||
if (null != tmpMemberRetailRange) {
|
||||
// 直推会员已经存在
|
||||
childRetailMap.put(tmpMemberRetailRange.getPayTime(), tmpMemberRetailRange);
|
||||
} else {
|
||||
// 直推会员不存在
|
||||
childRetailMap.put(cuMemberRetailRangeExt.getPayTime(), cuMemberRetailRangeExt);
|
||||
memberRangeExtMap.put(cuMemberRetailRangeExt.getPkMember(), cuMemberRetailRangeExt);
|
||||
queryMemberList.add(cuMemberRetailRangeExt.getPkMember());
|
||||
}
|
||||
}
|
||||
if (queryMemberList.size() > 0) {
|
||||
List<List<?>> pkMemberList = cuMemberBonusSettle.handleCutList(queryMemberList, MagicNumberConstants.BATCH_QUERY_NUM);
|
||||
pkMemberList.forEach(tmpIdList -> {
|
||||
// 查询明细数据(指定阶段,未完成的)
|
||||
List<CuMemberRetailDetail> tmpList = baseMapper.listMemberRetailDetail(retailDetailTableName, tmpIdList, eBonusStage.getValue(), EBonusStageStatus.NO.getValue());
|
||||
packageThreeDetailMap(memberRangeExtMap, eBonusStage, tmpList);
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1026,6 +1026,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
.build();
|
||||
detailList.put(newRetailDetail.getChildNode(), newRetailDetail);
|
||||
|
||||
// 处理阶段点位填充(一阶段)
|
||||
this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period,
|
||||
memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE,
|
||||
sourceMember, newRetailDetail, returnRetailDetailList);
|
||||
|
@ -1052,6 +1053,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
.build();
|
||||
detailList.put(newRetailDetail.getChildNode(), newRetailDetail);
|
||||
|
||||
// 处理阶段点位填充(一阶段赠点)
|
||||
this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period,
|
||||
memberRangeExtMap, saOrderExt, settleDate, rangeTableName, rangeDetailTableName, EBonusStage.ONE,
|
||||
sourceMember, newRetailDetail, returnRetailDetailList);
|
||||
|
@ -1084,6 +1086,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
return returnRetailDetailList;
|
||||
}
|
||||
|
||||
// 处理阶段点位填充
|
||||
this.handleStageIncome(cuMemberBonusStageList, cuMemberBonusMap, bonusConfigDTO, period,
|
||||
memberRangeExtMap, null, settleDate, rangeTableName, rangeDetailTableName, eBonusStage,
|
||||
sourceMember, memberRetailDetail, returnRetailDetailList);
|
||||
|
@ -1103,7 +1106,62 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 阶段奖金处理列表
|
||||
List<BonusStageData> bonusStageDataList = new ArrayList<>();
|
||||
|
||||
if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()) {
|
||||
boolean giftBool = false;
|
||||
if (EBonusStageType.GIFT.getValue() == newRetailDetail.getPointType()) {
|
||||
// 赠送点位处理,赠送点位给自己直推会员轮流布点
|
||||
iCuMemberRetailDetailService.listChildRetailDetail(rangeTableName, rangeDetailTableName, memberRangeExtMap,
|
||||
sourceMember, eBonusStage);
|
||||
// 判断是不是都已经填充过一轮了,如果是则需要重新开始从第一个开始填充
|
||||
LinkedHashMap<Date, CuMemberRetailRangeExt> childRetailMap = sourceMember.getChildRetailMap();
|
||||
if (childRetailMap.size() > 0) {
|
||||
// 获取最后一条数据 key
|
||||
Date lastKey = new ArrayList<>(childRetailMap.keySet()).get(childRetailMap.size() - 1);
|
||||
// 获取最新的会员注册时间,如果没有则设置一个初始化时间
|
||||
Date giftPayTime = sourceMember.getGiftPayTime();
|
||||
if (null == giftPayTime || giftPayTime.compareTo(lastKey) == 0) {
|
||||
giftPayTime = BonusConstants.GIFT_PAY_TIME;
|
||||
}
|
||||
|
||||
for (Date keyDate : childRetailMap.keySet()) {
|
||||
if (keyDate.compareTo(giftPayTime) > 0) {
|
||||
// 当前会员注册比之前的要晚,则顺序进行填充
|
||||
giftPayTime = keyDate;
|
||||
// 需要填充的直推会员
|
||||
CuMemberRetailRangeExt targetMember = childRetailMap.get(keyDate);
|
||||
// 推荐人一阶段子点位列表
|
||||
LinkedHashMap<Integer, CuMemberRetailDetail> parentDetailList = targetMember.getOneDetailMap();
|
||||
|
||||
// 推荐人第一层点位处理
|
||||
giftBool = iCuMemberBonusStageService.firstLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName,
|
||||
memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList);
|
||||
if (giftBool) {
|
||||
// 在第一层找到并填充点位,就开始下一个点位的处理
|
||||
break;
|
||||
}
|
||||
// 推荐人第二层点位处理
|
||||
giftBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName,
|
||||
memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList);
|
||||
if (giftBool) {
|
||||
// 在第二层找到并填充点位,就开始下一个点位的处理
|
||||
break;
|
||||
}
|
||||
// 推荐人第三层点位处理
|
||||
giftBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName,
|
||||
memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList);
|
||||
if (giftBool) {
|
||||
// 在第三层找到并填充点位,就开始下一个点位的处理
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (giftBool) {
|
||||
sourceMember.setGiftPayTime(giftPayTime);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (EBonusStageType.NORMAL.getValue() == newRetailDetail.getPointType()
|
||||
|| !giftBool) {
|
||||
// 普通点位处理
|
||||
// 推荐人
|
||||
Long pkParent = sourceMember.getPkParent();
|
||||
|
@ -1136,7 +1194,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 在第一层找到并填充点位,就开始下一个点位的处理
|
||||
break;
|
||||
}
|
||||
|
||||
// 推荐人第二层点位处理
|
||||
forBool = iCuMemberBonusStageService.secondLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName,
|
||||
memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList);
|
||||
|
@ -1144,7 +1201,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
// 在第二层找到并填充点位,就开始下一个点位的处理
|
||||
break;
|
||||
}
|
||||
|
||||
// 推荐人第三层点位处理
|
||||
forBool = iCuMemberBonusStageService.thirdLevelhandle(parentDetailList, newRetailDetail, rangeTableName, rangeDetailTableName,
|
||||
memberRangeExtMap, settleDate, eBonusStage, bonusStageDataList);
|
||||
|
@ -1153,9 +1209,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
|
|||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
// TODO 赠送点位处理,赠送点位给自己直推会员轮流布点
|
||||
|
||||
}
|
||||
|
||||
if (CollectionUtil.isNotEmpty(bonusStageDataList)) {
|
||||
|
|
|
@ -1,14 +1,12 @@
|
|||
package com.hzs.bonus.constant;
|
||||
|
||||
import cn.hutool.core.util.ReflectUtil;
|
||||
import com.hzs.common.core.utils.DateUtils;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.*;
|
||||
|
||||
public class BonusConstants {
|
||||
|
||||
|
@ -46,6 +44,11 @@ public class BonusConstants {
|
|||
*/
|
||||
public static final BigDecimal THREE_BONUS_38 = new BigDecimal("155");
|
||||
|
||||
/**
|
||||
* 赠点初始时间
|
||||
*/
|
||||
public static final Date GIFT_PAY_TIME = DateUtils.parseStringToDateTime("2025-09-01 00:00:00");
|
||||
|
||||
public static final String POINT_11 = "11";
|
||||
public static final String POINT_12 = "12";
|
||||
public static final String POINT_21 = "21";
|
||||
|
|
|
@ -54,6 +54,7 @@
|
|||
<result column="wait_point_count" property="waitPointCount"/>
|
||||
<result column="rep_pv_balance" property="repPvBalance"/>
|
||||
<result column="gift_point" property="giftPoint"/>
|
||||
<result column="gift_pay_time" property="giftPayTime"/>
|
||||
|
||||
<result column="AWARDS_VALUE" property="awardsValue"/>
|
||||
<result column="AWARDS_NAME" property="awardsName"/>
|
||||
|
@ -99,7 +100,8 @@
|
|||
point_count = 0,
|
||||
wait_point_count = 0,
|
||||
rep_pv_balance = 0,
|
||||
gift_point = 0
|
||||
gift_point = 0,
|
||||
gift_pay_time = null
|
||||
</update>
|
||||
|
||||
<update id="mergeMemberRetailRangeByYesterday">
|
||||
|
@ -112,7 +114,7 @@
|
|||
team_consume_amount, team_month_amount,
|
||||
recommend_num, team_num, big_team_pv, small_team_pv,
|
||||
point_count, wait_point_count, rep_pv_balance,
|
||||
gift_point
|
||||
gift_point, gift_pay_time
|
||||
from ${yesterdayRangeTableName}
|
||||
) b
|
||||
on (a.pk_member = b.pk_member)
|
||||
|
@ -127,7 +129,7 @@
|
|||
a.big_team_pv = b.big_team_pv, a.small_team_pv = b.small_team_pv,
|
||||
a.point_count = b.point_count, a.wait_point_count = b.wait_point_count,
|
||||
a.rep_pv_balance = b.rep_pv_balance,
|
||||
a.gift_point = b.gift_point
|
||||
a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time
|
||||
<if test="isSameMonth == 0">
|
||||
,a.month_consume_pv = b.month_consume_pv
|
||||
,a.month_consume_amount = b.month_consume_amount
|
||||
|
@ -347,7 +349,7 @@
|
|||
#{item.repConsumeNewAmount} rep_consume_new_amount, #{item.repConsumeNewPv} rep_consume_new_pv,
|
||||
#{item.repTeamNewAmount} rep_team_new_amount, #{item.repTeamNewPv} rep_team_new_pv,
|
||||
#{item.pointCount} point_count, #{item.waitPointCount} wait_point_count, #{item.repPvBalance} rep_pv_balance,
|
||||
#{item.giftPoint} gift_point
|
||||
#{item.giftPoint} gift_point, #{item.giftPayTime, jdbcType=TIMESTAMP} gift_pay_time
|
||||
from dual
|
||||
</foreach>
|
||||
) b
|
||||
|
@ -364,7 +366,7 @@
|
|||
a.rep_consume_new_amount = b.rep_consume_new_amount, a.rep_consume_new_pv = b.rep_consume_new_pv,
|
||||
a.rep_team_new_amount = b.rep_team_new_amount, a.rep_team_new_pv = b.rep_team_new_pv,
|
||||
a.point_count = b.point_count, a.wait_point_count = b.wait_point_count, a.rep_pv_balance = b.rep_pv_balance,
|
||||
a.gift_point = b.gift_point
|
||||
a.gift_point = b.gift_point, a.gift_pay_time = b.gift_pay_time
|
||||
</update>
|
||||
|
||||
<!-- 更新会员日结数据 -->
|
||||
|
@ -595,46 +597,43 @@
|
|||
</foreach>
|
||||
</update>
|
||||
<insert id="initMemberRetailSecondRange">
|
||||
INSERT INTO ${tableName} (
|
||||
"PK_MEMBER",
|
||||
"PK_PARENT",
|
||||
"PK_GRADE",
|
||||
"PK_AWARDS",
|
||||
"ALL_CONSUME_NEW_AMOUNT",
|
||||
"ALL_CONSUME_NEW_PV",
|
||||
"ALL_TEAM_NEW_AMOUNT",
|
||||
"ALL_TEAM_NEW_PV",
|
||||
"REG_CONSUME_NEW_AMOUNT",
|
||||
"REG_CONSUME_NEW_PV",
|
||||
"REG_TEAM_NEW_AMOUNT",
|
||||
"REG_TEAM_NEW_PV",
|
||||
"REP_CONSUME_NEW_AMOUNT",
|
||||
"REP_CONSUME_NEW_PV",
|
||||
"REP_TEAM_NEW_AMOUNT",
|
||||
"REP_TEAM_NEW_PV"
|
||||
)
|
||||
SELECT
|
||||
#{member.pkId},
|
||||
#{member.pkParent},
|
||||
#{member.pkSettleGrade},
|
||||
#{member.pkAwards},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
FROM DUAL
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1
|
||||
FROM ${tableName}
|
||||
WHERE "PK_MEMBER" = #{member.pkId}
|
||||
INSERT INTO ${tableName} ("PK_MEMBER",
|
||||
"PK_PARENT",
|
||||
"PK_GRADE",
|
||||
"PK_AWARDS",
|
||||
"ALL_CONSUME_NEW_AMOUNT",
|
||||
"ALL_CONSUME_NEW_PV",
|
||||
"ALL_TEAM_NEW_AMOUNT",
|
||||
"ALL_TEAM_NEW_PV",
|
||||
"REG_CONSUME_NEW_AMOUNT",
|
||||
"REG_CONSUME_NEW_PV",
|
||||
"REG_TEAM_NEW_AMOUNT",
|
||||
"REG_TEAM_NEW_PV",
|
||||
"REP_CONSUME_NEW_AMOUNT",
|
||||
"REP_CONSUME_NEW_PV",
|
||||
"REP_TEAM_NEW_AMOUNT",
|
||||
"REP_TEAM_NEW_PV")
|
||||
SELECT #{member.pkId},
|
||||
#{member.pkParent},
|
||||
#{member.pkSettleGrade},
|
||||
#{member.pkAwards},
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0
|
||||
FROM DUAL
|
||||
WHERE NOT EXISTS(
|
||||
SELECT 1
|
||||
FROM ${tableName}
|
||||
WHERE "PK_MEMBER" = #{member.pkId}
|
||||
)
|
||||
</insert>
|
||||
|
||||
|
@ -683,6 +682,7 @@
|
|||
wait_point_count,
|
||||
rep_pv_balance,
|
||||
gift_point,
|
||||
gift_pay_time,
|
||||
bw.awards_value,
|
||||
bw.awards_name
|
||||
from (
|
||||
|
@ -888,15 +888,79 @@
|
|||
from ${tableName}
|
||||
where pk_parent = #{pkParent}
|
||||
</select>
|
||||
|
||||
<select id="findParentMemberList" resultType="com.hzs.common.domain.member.ext.CuMemberExt">
|
||||
select * from (
|
||||
select cm.*
|
||||
from cu_member cm
|
||||
start
|
||||
with cm.pk_id = #{pkMember}
|
||||
connect by cm.pk_id = prior cm.pk_parent
|
||||
order by level
|
||||
) r where r.pk_id != #{pkMember}
|
||||
select *
|
||||
from (
|
||||
select cm.*
|
||||
from cu_member cm
|
||||
start
|
||||
with cm.pk_id = #{pkMember}
|
||||
connect by cm.pk_id = prior cm.pk_parent
|
||||
order by level
|
||||
) r
|
||||
where r.pk_id != #{pkMember}
|
||||
</select>
|
||||
|
||||
<!-- 查询会员直推结算数据列表 -->
|
||||
<select id="listChildRetail" resultMap="CuMemberRetailRangeExt">
|
||||
select a.pk_member,
|
||||
a.pk_parent,
|
||||
a.member_code,
|
||||
a.member_name,
|
||||
a.pk_grade,
|
||||
a.pk_awards,
|
||||
a.pk_share_awards,
|
||||
a.account_status,
|
||||
a.pay_time,
|
||||
a.category,
|
||||
a.income_status,
|
||||
a.pk_vertex,
|
||||
a.pk_settle_country,
|
||||
a.pk_rate,
|
||||
new_consume_pv,
|
||||
consume_pv,
|
||||
month_consume_pv,
|
||||
new_consume_amount,
|
||||
consume_amount,
|
||||
month_consume_amount,
|
||||
team_new_pv,
|
||||
team_consume_pv,
|
||||
team_month_pv,
|
||||
team_new_amount,
|
||||
team_consume_amount,
|
||||
team_month_amount,
|
||||
recommend_num,
|
||||
team_num,
|
||||
big_team_pv,
|
||||
small_team_pv,
|
||||
reg_consume_new_amount,
|
||||
reg_consume_new_pv,
|
||||
reg_team_new_amount,
|
||||
reg_team_new_pv,
|
||||
rep_consume_new_amount,
|
||||
rep_consume_new_pv,
|
||||
rep_team_new_amount,
|
||||
rep_team_new_pv,
|
||||
point_count,
|
||||
wait_point_count,
|
||||
rep_pv_balance,
|
||||
gift_point,
|
||||
gift_pay_time,
|
||||
bw.awards_value,
|
||||
bw.awards_name
|
||||
from #{rangeTableName} a
|
||||
inner join bd_awards bw
|
||||
on bw.pk_id = a.pk_awards
|
||||
left join bd_vertex bv
|
||||
on bv.pk_id = a.pk_vertex
|
||||
where a.pk_parent in
|
||||
<foreach collection="pkParentList" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
and a.pay_time is not null
|
||||
and a.category = 0
|
||||
order by a.pk_parent, a.pay_time
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
|
|
@ -578,7 +578,8 @@
|
|||
point_count number(8) default 0 not null,
|
||||
wait_point_count number(8) default 0 not null,
|
||||
rep_pv_balance number(17,6) default 0 not null,
|
||||
gift_point number(2) default 1 not null
|
||||
gift_point number(2) default 1 not null,
|
||||
gift_pay_time DATE
|
||||
)
|
||||
</update>
|
||||
|
||||
|
|
|
@ -2,9 +2,11 @@ package com.hzs.member.base.controller.api;
|
|||
|
||||
import cn.hutool.core.codec.Base64Decoder;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
|
||||
import com.hzs.common.core.config.BdConfig;
|
||||
import com.hzs.common.core.constant.CacheConstants;
|
||||
import com.hzs.common.core.constant.TableNameConstants;
|
||||
import com.hzs.common.core.constant.msg.CommonMsgConstants;
|
||||
import com.hzs.common.core.constant.msg.ConfigMsgConstants;
|
||||
import com.hzs.common.core.constant.msg.MemberMsgConstants;
|
||||
|
@ -18,13 +20,17 @@ import com.hzs.common.core.utils.uuid.IdUtils;
|
|||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.detail.CuMemberChangeLog;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.achieve.service.ICuMemberSettlePeriodService;
|
||||
import com.hzs.member.base.param.ForgetPasswordParam;
|
||||
import com.hzs.member.base.param.MemberDataParam;
|
||||
import com.hzs.member.base.service.ICuMemberRetailService;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.base.service.IMemberInfoService;
|
||||
import com.hzs.common.core.utils.UploadFileUtil;
|
||||
|
@ -39,6 +45,8 @@ import org.springframework.web.bind.annotation.*;
|
|||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.validation.Valid;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
|
@ -56,6 +64,11 @@ public class ApiMemberController extends BaseController {
|
|||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private IApiAliSmsService iApiAliSmsService;
|
||||
@Autowired
|
||||
private ICuMemberRetailService iCuMemberRetailService;
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService iCuMemberSettlePeriodService;
|
||||
|
||||
|
||||
@Autowired
|
||||
private RedisService redisService;
|
||||
|
@ -427,4 +440,38 @@ public class ApiMemberController extends BaseController {
|
|||
.uuid(uuid)
|
||||
.build());
|
||||
}
|
||||
/**
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/member-point")
|
||||
public AjaxResult memberPoint() {
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
if (userId == null) {
|
||||
log.error("用户登录信息错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
// 获取当前时间 -1 天
|
||||
String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
||||
// 查询相关日结表
|
||||
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday);
|
||||
log.info("会员结算表信息{}",csPeriod);
|
||||
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId();
|
||||
log.info("会员结算表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前表名不存在{}",settleTableName);
|
||||
return AjaxResult.error("数据查询错误,请联系客服处理");
|
||||
}
|
||||
List<memberPointVO> list = iCuMemberRetailService.getMemberPointByUserId(settleTableName,userId);
|
||||
if (CollectionUtil.isEmpty(list)) {
|
||||
return AjaxResult.success();
|
||||
}
|
||||
memberPointVO memberPointVO = list.get(0);
|
||||
memberPointVO.setMemberSettlePeriod(csPeriod.getSettleDate());
|
||||
startPage();
|
||||
return AjaxResult.success(memberPointVO);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@ import com.hzs.common.core.annotation.ColumnAuthority;
|
|||
import com.hzs.common.core.annotation.Log;
|
||||
import com.hzs.common.core.constant.CountryConstants;
|
||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
|
||||
import com.hzs.common.core.constant.TableNameConstants;
|
||||
import com.hzs.common.core.constant.VertexConstants;
|
||||
import com.hzs.common.core.constant.msg.MemberMsgConstants;
|
||||
import com.hzs.common.core.domain.R;
|
||||
|
@ -19,6 +20,7 @@ import com.hzs.common.core.utils.poi.ExcelUtil;
|
|||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.domain.member.ext.CuMemberExt;
|
||||
import com.hzs.common.domain.system.config.BdAwards;
|
||||
|
@ -26,9 +28,11 @@ import com.hzs.common.security.service.MemberTokenService;
|
|||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.common.service.ITransactionCommonService;
|
||||
import com.hzs.common.util.TransactionUtils;
|
||||
import com.hzs.member.achieve.service.ICuMemberSettlePeriodService;
|
||||
import com.hzs.member.base.dto.LoginMember;
|
||||
import com.hzs.member.base.dto.MemberBusinessTemplate;
|
||||
import com.hzs.member.base.param.*;
|
||||
import com.hzs.member.base.service.ICuMemberRetailService;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.base.vo.*;
|
||||
import com.hzs.member.login.service.IMemberLoginService;
|
||||
|
@ -42,6 +46,7 @@ import com.hzs.system.config.dto.GradeDTO;
|
|||
import com.hzs.system.sys.IMenuColumnServiceApi;
|
||||
import com.hzs.system.sys.IUserServiceApi;
|
||||
import com.hzs.system.sys.dto.UserAuthorityDTO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.dubbo.config.annotation.DubboReference;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
@ -53,6 +58,7 @@ import java.nio.charset.StandardCharsets;
|
|||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Slf4j
|
||||
@RequestMapping("/manager/member")
|
||||
@RestController
|
||||
public class CuMemberController extends BaseController {
|
||||
|
@ -65,6 +71,10 @@ public class CuMemberController extends BaseController {
|
|||
private MemberTokenService memberTokenService;
|
||||
@Autowired
|
||||
private IMemberLoginService iMemberLoginService;
|
||||
@Autowired
|
||||
private ICuMemberRetailService iCuMemberRetailService;
|
||||
@Autowired
|
||||
private ICuMemberSettlePeriodService iCuMemberSettlePeriodService;
|
||||
|
||||
@DubboReference
|
||||
IUserServiceApi iUserServiceApi;
|
||||
|
@ -778,4 +788,56 @@ public class CuMemberController extends BaseController {
|
|||
return AjaxResult.success("", Base64Encoder.encode(tmpPwd.getBytes(StandardCharsets.UTF_8)));
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param memberCode
|
||||
* @param memberSettlePeriodId
|
||||
* @return
|
||||
*/
|
||||
@Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/member-point")
|
||||
public AjaxResult memberPoint(String memberCode,Long memberSettlePeriodId,String sort,String sortColumn) {
|
||||
if (memberSettlePeriodId == null) {
|
||||
log.error("参数错误{}", memberSettlePeriodId);
|
||||
return AjaxResult.error();
|
||||
}
|
||||
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId);
|
||||
log.info("会员结算表信息{}",csPeriod);
|
||||
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId();
|
||||
log.info("会员结算表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCuMemberRetailService.getFindCuMemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前表名不存在{}",settleTableName);
|
||||
return AjaxResult.error();
|
||||
}
|
||||
List<memberPointVO> list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode,sort,sortColumn);
|
||||
list.forEach(item -> {
|
||||
item.setMemberSettlePeriod(csPeriod.getSettleDate());
|
||||
});
|
||||
startPage();
|
||||
return AjaxResult.success(getDataTable(list));
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param memberCode
|
||||
* @param memberSettlePeriodId
|
||||
* @return
|
||||
*/
|
||||
@Log(module = EOperationModule.MEMBER_POINT, business = EOperationBusiness.MEMBER_POINT, method = EOperationMethod.SELECT)
|
||||
@PostMapping("/member-point-export")
|
||||
public void memberPointExport(@RequestParam String memberCode,@RequestParam Long memberSettlePeriodId,@RequestParam String sort,@RequestParam String sortColumn, HttpServletResponse response) {
|
||||
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId);
|
||||
log.info("会员结算表信息{}",csPeriod);
|
||||
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE + csPeriod.getPkId();
|
||||
log.info("会员结算表名称{}",settleTableName);
|
||||
List<memberPointVO> list = iCuMemberRetailService.getMemberPointByMemberCode(settleTableName,memberCode,sort,sortColumn);
|
||||
list.forEach(item -> {
|
||||
item.setMemberSettlePeriod(csPeriod.getSettleDate());
|
||||
});
|
||||
ExcelUtil<memberPointVO> util = new ExcelUtil<>(memberPointVO.class);
|
||||
util.exportExcel(response, list, "会员点位信息");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -13,6 +13,7 @@ import com.hzs.member.handlebusiness.vo.BusinessMemberVO;
|
|||
import com.hzs.member.handlebusiness.vo.HandleBusinessVO;
|
||||
import com.hzs.member.marketnews.param.MarketNewsParam;
|
||||
import com.hzs.member.marketnews.vo.UserInvestmentVo;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberDetailDTO;
|
||||
import com.hzs.retail.member.param.ShareRetailMemberParam;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
@ -598,4 +599,6 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
|
|||
* @return
|
||||
*/
|
||||
CuMemberExt queryFansOrder(@Param("orderCode") String orderCode);
|
||||
|
||||
CuMemberDetailDTO getCuMemberDetailById(@Param("pointMember") Long pointMember);
|
||||
}
|
||||
|
|
|
@ -2,6 +2,7 @@ package com.hzs.member.base.mapper;
|
|||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberPointDTO;
|
||||
import com.hzs.member.structure.controller.vo.ChildCodeVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO;
|
||||
|
@ -34,10 +35,15 @@ public interface CuMemberRetailDetailMapper extends BaseMapper<CuMemberRetailDet
|
|||
@Param("stageStatus")Integer stageStatus,
|
||||
@Param("settleTableName")String settleTableName);
|
||||
|
||||
CuMemberPointDetailVO getPointDetail(@Param("pointMemberCode") Long pointMemberCode);
|
||||
|
||||
List<CuMemberThreeFrameworkVO> getCuMemberRetailDetailDTOList(@Param("settleTableName") String settleTableName,
|
||||
@Param("memberCode") String memberCode,
|
||||
@Param("stage") Integer stage,
|
||||
@Param("stageStatus") Integer stageStatus);
|
||||
|
||||
|
||||
CuMemberPointDTO getPointDetailByUserId(@Param("userId") Long userId,
|
||||
@Param("stage") Integer stage,
|
||||
@Param("point") Integer point,
|
||||
@Param("settleTableName") String settleTableName);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
package com.hzs.member.base.mapper;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.hzs.common.domain.member.base.CuMemberRetail;
|
||||
import com.hzs.member.base.vo.memberPointVO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* Mapper 接口
|
||||
* </p>
|
||||
*
|
||||
* @author bd
|
||||
* @since 2025-09-25
|
||||
*/
|
||||
public interface CuMemberRetailMapper extends BaseMapper<CuMemberRetail> {
|
||||
|
||||
Integer getFindCumemberRetailDetail(@Param("settleTableName") String settleTableName);
|
||||
|
||||
List<memberPointVO> getMemberPointByMemberCode(@Param("settleTableName") String settleTableName, @Param("memberCode") String memberCode,@Param("sort") String sort,@Param("sortColumn") String sortColumn);
|
||||
|
||||
List<memberPointVO> getMemberPointByUserId(@Param("settleTableName") String settleTableName, @Param("userId") Long userId);
|
||||
}
|
|
@ -0,0 +1,23 @@
|
|||
package com.hzs.member.base.service;
|
||||
|
||||
|
||||
import com.hzs.member.base.vo.memberPointVO;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务类
|
||||
* </p>
|
||||
*
|
||||
* @author bd
|
||||
* @since 2025-09-25
|
||||
*/
|
||||
public interface ICuMemberRetailService{
|
||||
|
||||
Integer getFindCuMemberRetailDetail(String settleTableName);
|
||||
|
||||
List<memberPointVO> getMemberPointByMemberCode(String settleTableName, String memberCode,String sort,String sortColumn);
|
||||
|
||||
List<memberPointVO> getMemberPointByUserId(String settleTableName, Long userId);
|
||||
}
|
|
@ -20,6 +20,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO;
|
|||
import com.hzs.member.marketnews.param.MarketNewsParam;
|
||||
import com.hzs.member.marketnews.vo.UserInvestmentVo;
|
||||
import com.hzs.member.share.param.ShareRegisterParam;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberDetailDTO;
|
||||
import com.hzs.retail.member.param.ShareRetailMemberParam;
|
||||
import com.hzs.system.sys.dto.ApprovalBusinessResultDTO;
|
||||
|
||||
|
@ -870,4 +871,6 @@ public interface ICuMemberService extends IService<CuMember> {
|
|||
* @return
|
||||
*/
|
||||
Integer getMemberPhoneCount(String phone);
|
||||
|
||||
CuMemberDetailDTO getCuMemberDetailById(Long pointMember);
|
||||
}
|
||||
|
|
|
@ -23,6 +23,6 @@ public interface ICumemberRetailDetailService {
|
|||
|
||||
List<CuMemberThreeFrameworkVO> getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus);
|
||||
|
||||
CuMemberPointDetailVO getPointDetail(Long pointMemberCode);
|
||||
|
||||
CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember,Integer stage, Integer point, String settleTableName);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
package com.hzs.member.base.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.domain.member.base.CuMemberRetail;
|
||||
import com.hzs.member.base.mapper.CuMemberRetailMapper;
|
||||
import com.hzs.member.base.service.ICuMemberRetailService;
|
||||
import com.hzs.member.base.vo.memberPointVO;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author bd
|
||||
* @since 2025-09-25
|
||||
*/
|
||||
@Service
|
||||
public class CuMemberRetailServiceImpl extends ServiceImpl<CuMemberRetailMapper, CuMemberRetail> implements ICuMemberRetailService {
|
||||
|
||||
@Override
|
||||
public Integer getFindCuMemberRetailDetail(String settleTableName) {
|
||||
return baseMapper.getFindCumemberRetailDetail(settleTableName);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<memberPointVO> getMemberPointByMemberCode(String settleTableName, String memberCode, String sort, String sortColumn) {
|
||||
return baseMapper.getMemberPointByMemberCode(settleTableName,memberCode,sort,sortColumn);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<memberPointVO> getMemberPointByUserId(String settleTableName, Long userId) {
|
||||
return baseMapper.getMemberPointByUserId(settleTableName,userId);
|
||||
}
|
||||
}
|
|
@ -52,6 +52,7 @@ import com.hzs.member.handlebusiness.vo.HandleBusinessVO;
|
|||
import com.hzs.member.marketnews.param.MarketNewsParam;
|
||||
import com.hzs.member.marketnews.vo.UserInvestmentVo;
|
||||
import com.hzs.member.share.param.ShareRegisterParam;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberDetailDTO;
|
||||
import com.hzs.retail.member.param.ShareRetailMemberParam;
|
||||
import com.hzs.system.base.ICountryServiceApi;
|
||||
import com.hzs.system.base.ICurrencyServiceApi;
|
||||
|
@ -3248,4 +3249,9 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
|
|||
wrapper.eq(CuMember::getPhone, phone);
|
||||
return baseMapper.selectCount(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CuMemberDetailDTO getCuMemberDetailById(Long pointMember) {
|
||||
return baseMapper.getCuMemberDetailById(pointMember);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,12 +3,17 @@ package com.hzs.member.base.service.impl;
|
|||
import cn.hutool.core.lang.tree.Tree;
|
||||
import cn.hutool.core.lang.tree.TreeUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.hzs.common.core.enums.EBonusStage;
|
||||
import com.hzs.common.core.enums.EBonusStageStatus;
|
||||
import com.hzs.common.core.enums.EBonusStageType;
|
||||
import com.hzs.common.core.enums.EMemberChildNodeType;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.member.base.mapper.CuMemberRetailDetailMapper;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import com.hzs.member.base.service.ICumemberRetailDetailService;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberDetailDTO;
|
||||
import com.hzs.member.structure.controller.dto.CuMemberPointDTO;
|
||||
import com.hzs.member.structure.controller.vo.ChildCodeVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO;
|
||||
|
@ -24,6 +29,8 @@ import java.util.stream.Stream;
|
|||
public class ICumemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetailDetailMapper, CuMemberRetailDetail> implements ICumemberRetailDetailService {
|
||||
@Autowired
|
||||
private ICuMemberService iCuMemberService;
|
||||
@Autowired
|
||||
private ICumemberRetailDetailService iCumemberRetailDetailService;
|
||||
@Override
|
||||
public List<ChildCodeVO> getChildList(String memberCode, Integer stage, Integer stageStatus, String settleTableName) {
|
||||
return baseMapper.getChildList(memberCode,stage,stageStatus,settleTableName);
|
||||
|
@ -107,14 +114,36 @@ public class ICumemberRetailDetailServiceImpl extends ServiceImpl<CuMemberRetail
|
|||
|
||||
@Override
|
||||
public List<CuMemberThreeFrameworkVO> getCuMemberRetailDetailList(String settleTableName, String memberCode, Integer stage, Integer stageStatus) {
|
||||
return baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus);
|
||||
List<CuMemberThreeFrameworkVO> cuMemberRetailDetailDTOList = baseMapper.getCuMemberRetailDetailDTOList(settleTableName, memberCode, stage, stageStatus);
|
||||
cuMemberRetailDetailDTOList.forEach(item -> {
|
||||
item.setPointTypeLabel(EBonusStageType.getEBonusStageTypeByValue(item.getPointType()).getLabel());
|
||||
item.setStageLabel(EBonusStage.getEBonusStageByValue(item.getStage()).getLabel());
|
||||
item.setStageStatusLabel(EBonusStageStatus.getEBonusStageStatusLabel(item.getStageStatus()).getLabel());
|
||||
});
|
||||
return cuMemberRetailDetailDTOList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public CuMemberPointDetailVO getPointDetail(Long pointMemberCode) {
|
||||
return baseMapper.getPointDetail(pointMemberCode);
|
||||
public CuMemberPointDetailVO getPointDetailByUserId(Long userId, Long pointMember, Integer stage, Integer point, String settleTableName) {
|
||||
CuMemberPointDTO cuMemberPointDTO = baseMapper.getPointDetailByUserId(pointMember, stage, point, settleTableName);
|
||||
CuMemberDetailDTO cuMemberDetailDTO = iCuMemberService.getCuMemberDetailById(pointMember);
|
||||
if (cuMemberDetailDTO == null || cuMemberPointDTO == null) {
|
||||
return null;
|
||||
}
|
||||
return makeCuMemberPointDetailVO(cuMemberDetailDTO,cuMemberPointDTO,point);
|
||||
}
|
||||
|
||||
private CuMemberPointDetailVO makeCuMemberPointDetailVO(CuMemberDetailDTO cuMemberDetailDTO, CuMemberPointDTO cuMemberPointDTO,Integer point) {
|
||||
return CuMemberPointDetailVO.builder()
|
||||
.memberCode(cuMemberDetailDTO.getMemberCode())
|
||||
.memberName(cuMemberDetailDTO.getMemberName() + "-" + point)
|
||||
.awardsName(cuMemberDetailDTO.getAwardsName())
|
||||
.vertexName(cuMemberDetailDTO.getVertexName())
|
||||
.creationTime(cuMemberPointDTO.getCreationTime())
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
private Map<String, Object> makeNode(String id, String parentId, String label,Integer pointMember,
|
||||
Long memberId, Map<Long, CuMember> memberMap) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
package com.hzs.member.base.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.hzs.common.core.annotation.Excel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class memberPointVO {
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
@Excel(name = "会员编号")
|
||||
private String memberCode;
|
||||
/**
|
||||
* 会员姓名
|
||||
*/
|
||||
@Excel(name = "会员姓名")
|
||||
private String memberName;
|
||||
/**
|
||||
* 子点位总数
|
||||
*/
|
||||
@Excel(name = "子点位总数")
|
||||
private Integer pointCount;
|
||||
/**
|
||||
* 待激活点位数
|
||||
*/
|
||||
@Excel(name = "待激活点位数")
|
||||
private Integer waitPointCount;
|
||||
/**
|
||||
* 复购业绩余额
|
||||
*/
|
||||
@Excel(name = "复购业绩余额")
|
||||
private Long repPvBalance;
|
||||
/**
|
||||
* 期数
|
||||
*/
|
||||
@Excel(name = "期数",dateFormat = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date memberSettlePeriod;
|
||||
}
|
|
@ -7,10 +7,10 @@ import com.hzs.common.core.constant.msg.CommonMsgConstants;
|
|||
import com.hzs.common.core.enums.*;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
import com.hzs.common.domain.member.base.CuMember;
|
||||
import com.hzs.common.security.service.UserTokenService;
|
||||
import com.hzs.common.security.utils.SecurityUtils;
|
||||
import com.hzs.member.achieve.service.ICuMemberSettlePeriodService;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
|
@ -18,18 +18,14 @@ import com.hzs.member.base.service.ICumemberRetailDetailService;
|
|||
import com.hzs.member.structure.controller.vo.ChildCodeVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberPointDetailVO;
|
||||
import com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO;
|
||||
import com.hzs.system.sys.dto.LoginUser;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.text.DateFormatSymbols;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
@ -125,7 +121,7 @@ public class ApiMemberStructureController extends BaseController {
|
|||
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/three-framework-list")
|
||||
public AjaxResult threeFrameworkList(Integer stage,Integer stageStatus) {
|
||||
public AjaxResult threeFrameworkList(Integer stage, Integer stageStatus) {
|
||||
if (stage == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
|
@ -144,25 +140,43 @@ public class ApiMemberStructureController extends BaseController {
|
|||
log.info("日结表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前会员日结信息不存在{}",settleTableName);
|
||||
return AjaxResult.error();
|
||||
}
|
||||
startPage();
|
||||
// 查询当前会员所有子点位信息
|
||||
CuMember member = iCuMemberService.getMember(userId);
|
||||
List<CuMemberThreeFrameworkVO> cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,member.getMemberCode(),stage,stageStatus);
|
||||
return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS));
|
||||
}
|
||||
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/pointDetail")
|
||||
public AjaxResult pointDetail(Integer stage,Integer point,Long pointMember) {
|
||||
if (stage == null || point == null || pointMember == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
if (userId == null) {
|
||||
log.error("用户登录信息错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
// 获取当前时间 -1 天
|
||||
String yesterday = LocalDate.now().minusDays(1).format((DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
||||
// 查询相关日结表
|
||||
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getCuMemberSettlePeriodByDate(yesterday);
|
||||
log.info("日结信息{}",csPeriod);
|
||||
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId();
|
||||
log.info("日结表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前会员日结信息不存在{}",settleTableName);
|
||||
return AjaxResult.error("数据查询错误,请联系客服处理");
|
||||
}
|
||||
startPage();
|
||||
// 查询当前会员所有子点位信息
|
||||
CuMember member = iCuMemberService.getMember(userId);
|
||||
List<CuMemberThreeFrameworkVO> cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,member.getMemberCode(),stage,stageStatus);
|
||||
return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS));
|
||||
}
|
||||
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/pointDetail")
|
||||
public AjaxResult pointDetail(Long pointMemberCode) {
|
||||
if (pointMemberCode == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode);
|
||||
CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(userId, pointMember, stage, point, settleTableName);
|
||||
if (cuMemberPointDetailVO == null) {
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -0,0 +1,30 @@
|
|||
package com.hzs.member.structure.controller.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CuMemberDetailDTO {
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
private String memberCode;
|
||||
/**
|
||||
* 会员姓名
|
||||
*/
|
||||
private String memberName;
|
||||
/**
|
||||
* 荣誉奖衔
|
||||
*/
|
||||
private String awardsName;
|
||||
/**
|
||||
* 隶属体系
|
||||
*/
|
||||
private String vertexName;
|
||||
}
|
|
@ -0,0 +1,22 @@
|
|||
package com.hzs.member.structure.controller.dto;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CuMemberPointDTO {
|
||||
|
||||
|
||||
/**
|
||||
* 点位创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date creationTime;
|
||||
|
||||
}
|
|
@ -22,6 +22,7 @@ import com.hzs.common.core.utils.StringUtils;
|
|||
import com.hzs.common.core.utils.sign.Base64Util;
|
||||
import com.hzs.common.core.web.controller.BaseController;
|
||||
import com.hzs.common.core.web.domain.AjaxResult;
|
||||
import com.hzs.common.core.web.page.TableDataInfo;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberRetailDetail;
|
||||
import com.hzs.common.domain.member.achieve.CuMemberSettlePeriod;
|
||||
import com.hzs.common.domain.member.achieve.ext.CuMemberRetailSExt;
|
||||
|
@ -254,7 +255,7 @@ public class MemberStructureController extends BaseController {
|
|||
*/
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/three-framework-list")
|
||||
public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode,Integer stage,Integer stageStatus) {
|
||||
public AjaxResult threeFrameworkList(Long memberSettlePeriodId, String memberCode, Integer stage, Integer stageStatus) {
|
||||
if (memberSettlePeriodId == null || memberCode == null || stage == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
|
@ -265,24 +266,34 @@ public class MemberStructureController extends BaseController {
|
|||
log.info("日结表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前表名不存在{}",settleTableName);
|
||||
return AjaxResult.error();
|
||||
}
|
||||
startPage();
|
||||
// 查询当前会员所有子点位信息
|
||||
List<CuMemberThreeFrameworkVO> cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus);
|
||||
return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS));
|
||||
}
|
||||
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/pointDetail")
|
||||
public AjaxResult pointDetail(Long pkMember,Long pointMember,Integer stage,Integer point,Long memberSettlePeriodId) {
|
||||
if (pkMember == null || stage == null || point == null || memberSettlePeriodId == null || pointMember == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
CuMemberSettlePeriod csPeriod = iCuMemberSettlePeriodService.getById(memberSettlePeriodId);
|
||||
log.info("日结信息{}",csPeriod);
|
||||
String settleTableName = TableNameConstants.CU_MEMBER_RETAIL_RANGE_DETAIL + csPeriod.getPkId();
|
||||
log.info("日结表名称{}",settleTableName);
|
||||
// 校验当前日结表是否存在
|
||||
Integer isFind = iCumemberRetailDetailService.getFindCumemberRetailDetail(settleTableName);
|
||||
if (isFind == null || isFind != 1) {
|
||||
log.error("当前表名不存在{}",settleTableName);
|
||||
return AjaxResult.error("当前日结信息表不存在",settleTableName);
|
||||
}
|
||||
startPage();
|
||||
// 查询当前会员所有子点位信息
|
||||
List<CuMemberThreeFrameworkVO> cuMemberThreeFrameworkVOS = iCumemberRetailDetailService.getCuMemberRetailDetailList(settleTableName,memberCode,stage,stageStatus);
|
||||
return AjaxResult.success(getDataTable(cuMemberThreeFrameworkVOS));
|
||||
}
|
||||
|
||||
@Log(module = EOperationModule.MEMBER_RETAIL_TREE_LIST, business = EOperationBusiness.MEMBER_RETAIL_TREE_LIST, method = EOperationMethod.SELECT)
|
||||
@GetMapping("/pointDetail")
|
||||
public AjaxResult pointDetail(Long pointMemberCode) {
|
||||
if (pointMemberCode == null) {
|
||||
log.error("参数错误");
|
||||
return AjaxResult.error(CommonMsgConstants.MISSING_PARAM);
|
||||
}
|
||||
CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetail(pointMemberCode);
|
||||
CuMemberPointDetailVO cuMemberPointDetailVO = iCumemberRetailDetailService.getPointDetailByUserId(pkMember,pointMember,stage,point,settleTableName);
|
||||
if (cuMemberPointDetailVO == null) {
|
||||
return null;
|
||||
}
|
||||
|
|
|
@ -1,14 +1,19 @@
|
|||
package com.hzs.member.structure.controller.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@JsonInclude(JsonInclude.Include.ALWAYS)
|
||||
@Builder
|
||||
public class CuMemberPointDetailVO {
|
||||
/**
|
||||
* 会员编号
|
||||
|
@ -26,4 +31,9 @@ public class CuMemberPointDetailVO {
|
|||
* 隶属体系
|
||||
*/
|
||||
private String vertexName;
|
||||
/**
|
||||
* 点位创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date creationTime;
|
||||
}
|
||||
|
|
|
@ -1,11 +1,14 @@
|
|||
package com.hzs.member.structure.controller.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
|
@ -14,146 +17,237 @@ import java.io.Serializable;
|
|||
public class CuMemberThreeFrameworkVO implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
private Long pkMember;
|
||||
|
||||
/**
|
||||
* 会员子节点
|
||||
*/
|
||||
private Integer childNode;
|
||||
|
||||
/**
|
||||
* 推荐人
|
||||
*/
|
||||
private Long pkParent;
|
||||
|
||||
/**
|
||||
* 三个阶段(1、2、3)
|
||||
*/
|
||||
private Integer stage;
|
||||
/**
|
||||
* 三阶段实际值
|
||||
*/
|
||||
private String stageLabel;
|
||||
|
||||
/**
|
||||
* 阶段状态(0=已完成,1=未完成)
|
||||
*/
|
||||
private Integer stageStatus;
|
||||
/**
|
||||
* 阶段完成实际值
|
||||
*/
|
||||
private String stageStatusLabel;
|
||||
|
||||
/**
|
||||
* 阶段
|
||||
* 阶段完成时间
|
||||
*/
|
||||
private Integer stage;
|
||||
/**
|
||||
* 子点位
|
||||
*/
|
||||
private Integer childNode;
|
||||
private Date stageDate;
|
||||
|
||||
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
*/
|
||||
private String pointMemberName11;
|
||||
private Long pointMember11;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位1-1会员子节点
|
||||
*/
|
||||
private String pointMemberCode11;
|
||||
private Integer point11;
|
||||
|
||||
/**
|
||||
* 点位1-2会员ID
|
||||
*/
|
||||
private String pointMemberName12;
|
||||
private Long pointMember12;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位1-2会员子节点
|
||||
*/
|
||||
private String pointMemberCode12;
|
||||
private Integer point12;
|
||||
|
||||
/**
|
||||
* 点位2-1会员ID
|
||||
*/
|
||||
private String pointMemberName21;
|
||||
private Long pointMember21;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位2-1会员子节点
|
||||
*/
|
||||
private String pointMemberCode21;
|
||||
private Integer point21;
|
||||
|
||||
/**
|
||||
* 点位2-2会员ID
|
||||
*/
|
||||
private String pointMemberName22;
|
||||
private Long pointMember22;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位2-2会员子节点
|
||||
*/
|
||||
private String pointMemberCode22;
|
||||
private Integer point22;
|
||||
|
||||
/**
|
||||
* 点位2-3会员ID
|
||||
*/
|
||||
private String pointMemberName23;
|
||||
private Long pointMember23;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位2-3会员子节点
|
||||
*/
|
||||
private String pointMemberCode23;
|
||||
private Integer point23;
|
||||
|
||||
/**
|
||||
* 点位2-4会员ID
|
||||
*/
|
||||
private String pointMemberName24;
|
||||
private Long pointMember24;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位2-4会员子节点
|
||||
*/
|
||||
private String pointMemberCode24;
|
||||
private Integer point24;
|
||||
|
||||
/**
|
||||
* 点位3-1会员ID
|
||||
*/
|
||||
private String pointMemberName31;
|
||||
private Long pointMember31;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-1会员子节点
|
||||
*/
|
||||
private String pointMemberCode31;
|
||||
private Integer point31;
|
||||
|
||||
/**
|
||||
* 点位3-2会员ID
|
||||
*/
|
||||
private String pointMemberName32;
|
||||
private Long pointMember32;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-2会员子节点
|
||||
*/
|
||||
private String pointMemberCode32;
|
||||
private Integer point32;
|
||||
|
||||
/**
|
||||
* 点位3-3会员ID
|
||||
*/
|
||||
private String pointMemberName33;
|
||||
private Long pointMember33;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-3会员子节点
|
||||
*/
|
||||
private String pointMemberCode33;
|
||||
private Integer point33;
|
||||
|
||||
/**
|
||||
* 点位3-4会员ID
|
||||
*/
|
||||
private String pointMemberName34;
|
||||
private Long pointMember34;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-4会员子节点
|
||||
*/
|
||||
private String pointMemberCode34;
|
||||
private Integer point34;
|
||||
|
||||
/**
|
||||
* 点位3-5会员ID
|
||||
*/
|
||||
private String pointMemberName35;
|
||||
private Long pointMember35;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-5会员子节点
|
||||
*/
|
||||
private String pointMemberCode35;
|
||||
private Integer point35;
|
||||
|
||||
/**
|
||||
* 点位3-6会员ID
|
||||
*/
|
||||
private String pointMemberName36;
|
||||
private Long pointMember36;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-6会员子节点
|
||||
*/
|
||||
private String pointMemberCode36;
|
||||
private Integer point36;
|
||||
|
||||
/**
|
||||
* 点位3-7会员ID
|
||||
*/
|
||||
private String pointMemberName37;
|
||||
private Long pointMember37;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-7会员子节点
|
||||
*/
|
||||
private String pointMemberCode37;
|
||||
private Integer point37;
|
||||
|
||||
/**
|
||||
* 点位3-8会员ID
|
||||
*/
|
||||
private String pointMemberName38;
|
||||
private Long pointMember38;
|
||||
/**
|
||||
* 点位1-1会员ID
|
||||
* 点位3-8会员子节点
|
||||
*/
|
||||
private String pointMemberCode38;
|
||||
private Integer point38;
|
||||
|
||||
/**
|
||||
* 点位类型(0=普通,1=赠送点位)
|
||||
*/
|
||||
private Integer pointType;
|
||||
/**
|
||||
* 点位类型实际值
|
||||
*/
|
||||
private String pointTypeLabel;
|
||||
|
||||
/**
|
||||
* 赠点数量(三阶段走完赠送几个点位)
|
||||
*/
|
||||
private Integer pointGift;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date creationTime;
|
||||
|
||||
/**
|
||||
* 第一层会员ID
|
||||
*/
|
||||
private Long pointMemberFirst;
|
||||
/**
|
||||
* 第一层会员子节点
|
||||
*/
|
||||
private Integer pointFirst;
|
||||
|
||||
/**
|
||||
* 第二层会员ID
|
||||
*/
|
||||
private Long pointMemberSecond;
|
||||
/**
|
||||
* 第二层会员子节点
|
||||
*/
|
||||
private Integer pointSecond;
|
||||
|
||||
/**
|
||||
* 第三层会员ID
|
||||
*/
|
||||
private Long pointMemberThird;
|
||||
/**
|
||||
* 第三层会员子节点
|
||||
*/
|
||||
private Integer pointThird;
|
||||
|
||||
/**
|
||||
* 三阶段1层奖金次数
|
||||
*/
|
||||
private Integer thirdBonus1;
|
||||
|
||||
/**
|
||||
* 三阶段2层奖金次数
|
||||
*/
|
||||
private Integer thirdBonus2;
|
||||
|
||||
/**
|
||||
* 三阶段3层奖金次数
|
||||
*/
|
||||
private Integer thirdBonus3;
|
||||
|
||||
/**
|
||||
* 更新标记(不为null则需要入库)
|
||||
*/
|
||||
private Integer updateBool;
|
||||
|
||||
}
|
||||
|
|
|
@ -2405,4 +2405,17 @@
|
|||
and so.order_type in (41, 43)
|
||||
and so.order_code = #{orderCode}
|
||||
</select>
|
||||
<select id="getCuMemberDetailById" resultType="com.hzs.member.structure.controller.dto.CuMemberDetailDTO">
|
||||
SELECT
|
||||
cu.MEMBER_CODE,
|
||||
cu.MEMBER_NAME,
|
||||
ba.AWARDS_NAME,
|
||||
bv.VERTEX_NAME
|
||||
FROM
|
||||
CU_MEMBER cu
|
||||
LEFT JOIN BD_AWARDS ba ON cu.PK_AWARDS = ba.PK_ID
|
||||
LEFT JOIN BD_VERTEX bv ON cu.PK_VERTEX = bv.PK_ID
|
||||
WHERE
|
||||
cu.PK_ID = #{ pointMember }
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -0,0 +1,106 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.hzs.member.base.mapper.CuMemberRetailMapper">
|
||||
|
||||
<!-- 通用查询映射结果 -->
|
||||
<resultMap id="BaseResultMap" type="com.hzs.common.domain.member.base.CuMemberRetail">
|
||||
<result column="PK_COUNTRY" property="pkCountry" />
|
||||
<result column="PK_MEMBER" property="pkMember" />
|
||||
<result column="PK_PARENT" property="pkParent" />
|
||||
<result column="MEMBER_CODE" property="memberCode" />
|
||||
<result column="MEMBER_NAME" property="memberName" />
|
||||
<result column="CUSTOMER_TYPE" property="customerType" />
|
||||
<result column="PHONE" property="phone" />
|
||||
<result column="PK_GRADE" property="pkGrade" />
|
||||
<result column="PK_AWARDS" property="pkAwards" />
|
||||
<result column="PK_SHARE_AWARDS" property="pkShareAwards" />
|
||||
<result column="ENABLE_STATUS" property="enableStatus" />
|
||||
<result column="ACCOUNT_STATUS" property="accountStatus" />
|
||||
<result column="PAY_STATUS" property="payStatus" />
|
||||
<result column="PAY_TIME" property="payTime" />
|
||||
<result column="CATEGORY" property="category" />
|
||||
<result column="PURCHASE_STATUS" property="purchaseStatus" />
|
||||
<result column="INCOME_STATUS" property="incomeStatus" />
|
||||
<result column="PK_TEAM_CODE" property="pkTeamCode" />
|
||||
<result column="PK_CENTER_CODE" property="pkCenterCode" />
|
||||
<result column="PK_VERTEX" property="pkVertex" />
|
||||
<result column="PK_SETTLE_COUNTRY" property="pkSettleCountry" />
|
||||
<result column="IS_REAL_NAME" property="isRealName" />
|
||||
<result column="SYSTEM_TYPE" property="systemType" />
|
||||
<result column="PK_RATE" property="pkRate" />
|
||||
<result column="NEW_CONSUME_PV" property="newConsumePv" />
|
||||
<result column="CONSUME_PV" property="consumePv" />
|
||||
<result column="MONTH_CONSUME_PV" property="monthConsumePv" />
|
||||
<result column="NEW_CONSUME_AMOUNT" property="newConsumeAmount" />
|
||||
<result column="CONSUME_AMOUNT" property="consumeAmount" />
|
||||
<result column="MONTH_CONSUME_AMOUNT" property="monthConsumeAmount" />
|
||||
<result column="TEAM_NEW_PV" property="teamNewPv" />
|
||||
<result column="TEAM_CONSUME_PV" property="teamConsumePv" />
|
||||
<result column="TEAM_MONTH_PV" property="teamMonthPv" />
|
||||
<result column="TEAM_NEW_AMOUNT" property="teamNewAmount" />
|
||||
<result column="TEAM_CONSUME_AMOUNT" property="teamConsumeAmount" />
|
||||
<result column="TEAM_MONTH_AMOUNT" property="teamMonthAmount" />
|
||||
<result column="RECOMMEND_NUM" property="recommendNum" />
|
||||
<result column="TEAM_NUM" property="teamNum" />
|
||||
<result column="BIG_TEAM_PV" property="bigTeamPv" />
|
||||
<result column="SMALL_TEAM_PV" property="smallTeamPv" />
|
||||
<result column="REG_CONSUME_NEW_AMOUNT" property="regConsumeNewAmount" />
|
||||
<result column="REG_CONSUME_NEW_PV" property="regConsumeNewPv" />
|
||||
<result column="REG_TEAM_NEW_AMOUNT" property="regTeamNewAmount" />
|
||||
<result column="REG_TEAM_NEW_PV" property="regTeamNewPv" />
|
||||
<result column="REP_CONSUME_NEW_AMOUNT" property="repConsumeNewAmount" />
|
||||
<result column="REP_CONSUME_NEW_PV" property="repConsumeNewPv" />
|
||||
<result column="REP_TEAM_NEW_AMOUNT" property="repTeamNewAmount" />
|
||||
<result column="REP_TEAM_NEW_PV" property="repTeamNewPv" />
|
||||
<result column="POINT_COUNT" property="pointCount" />
|
||||
<result column="WAIT_POINT_COUNT" property="waitPointCount" />
|
||||
<result column="REP_PV_BALANCE" property="repPvBalance" />
|
||||
<result column="GIFT_ONE" property="giftOne" />
|
||||
<result column="GIFT_TWO" property="giftTwo" />
|
||||
</resultMap>
|
||||
|
||||
<!-- 通用查询结果列 -->
|
||||
<sql id="Base_Column_List">
|
||||
PK_COUNTRY,
|
||||
PK_MEMBER, PK_PARENT, MEMBER_CODE, MEMBER_NAME, CUSTOMER_TYPE, PHONE, PK_GRADE, PK_AWARDS, PK_SHARE_AWARDS, ENABLE_STATUS, ACCOUNT_STATUS, PAY_STATUS, PAY_TIME, CATEGORY, PURCHASE_STATUS, INCOME_STATUS, PK_TEAM_CODE, PK_CENTER_CODE, PK_VERTEX, PK_SETTLE_COUNTRY, IS_REAL_NAME, SYSTEM_TYPE, PK_RATE, NEW_CONSUME_PV, CONSUME_PV, MONTH_CONSUME_PV, NEW_CONSUME_AMOUNT, CONSUME_AMOUNT, MONTH_CONSUME_AMOUNT, TEAM_NEW_PV, TEAM_CONSUME_PV, TEAM_MONTH_PV, TEAM_NEW_AMOUNT, TEAM_CONSUME_AMOUNT, TEAM_MONTH_AMOUNT, RECOMMEND_NUM, TEAM_NUM, BIG_TEAM_PV, SMALL_TEAM_PV, REG_CONSUME_NEW_AMOUNT, REG_CONSUME_NEW_PV, REG_TEAM_NEW_AMOUNT, REG_TEAM_NEW_PV, REP_CONSUME_NEW_AMOUNT, REP_CONSUME_NEW_PV, REP_TEAM_NEW_AMOUNT, REP_TEAM_NEW_PV, POINT_COUNT, WAIT_POINT_COUNT, REP_PV_BALANCE, GIFT_ONE, GIFT_TWO
|
||||
</sql>
|
||||
<select id="getFindCumemberRetailDetail" resultType="java.lang.Integer">
|
||||
select 1
|
||||
from user_tables
|
||||
where table_name = upper(#{settleTableName})
|
||||
</select>
|
||||
<select id="getMemberPointByMemberCode" resultType="com.hzs.member.base.vo.memberPointVO">
|
||||
SELECT
|
||||
cmr.MEMBER_CODE,
|
||||
cmr.MEMBER_NAME,
|
||||
cmr.POINT_COUNT,
|
||||
cmr.WAIT_POINT_COUNT,
|
||||
cmr.REP_PV_BALANCE
|
||||
FROM
|
||||
${settleTableName} cmr
|
||||
LEFT JOIN CU_MEMBER cu ON cmr.PK_MEMBER = cu.PK_ID
|
||||
WHERE 1 = 1
|
||||
<if test="memberCode != null and memberCode != ''">
|
||||
AND cmr.MEMBER_CODE = #{memberCode}
|
||||
</if>
|
||||
<if test="sort != null and sort != '' and sortColumn != null and sortColumn != ''">
|
||||
ORDER BY ${sortColumn} ${sort}
|
||||
</if>
|
||||
</select>
|
||||
<select id="getMemberPointByUserId" resultType="com.hzs.member.base.vo.memberPointVO">
|
||||
SELECT
|
||||
cmr.MEMBER_CODE,
|
||||
cmr.MEMBER_NAME,
|
||||
cmr.POINT_COUNT,
|
||||
cmr.WAIT_POINT_COUNT,
|
||||
cmr.REP_PV_BALANCE
|
||||
FROM
|
||||
${settleTableName} cmr
|
||||
LEFT JOIN CU_MEMBER cu ON cmr.PK_MEMBER = cu.PK_ID
|
||||
WHERE
|
||||
cmr.PK_MEMBER = #{userId}
|
||||
ORDER BY
|
||||
cu.CREATION_TIME
|
||||
</select>
|
||||
|
||||
</mapper>
|
|
@ -62,96 +62,10 @@
|
|||
and cud.STAGE_STATUS = #{stageStatus}
|
||||
</if>
|
||||
</select>
|
||||
<select id="getPointDetail" resultType="com.hzs.member.structure.controller.vo.CuMemberPointDetailVO">
|
||||
SELECT
|
||||
cu.MEMBER_CODE,
|
||||
cu.MEMBER_NAME,
|
||||
ba.AWARDS_NAME AS awardsName,
|
||||
bv.VERTEX_NAME AS vertexName
|
||||
FROM
|
||||
CU_MEMBER cu
|
||||
LEFT JOIN BD_AWARDS ba ON cu.PK_AWARDS = ba.PK_ID
|
||||
LEFT JOIN BD_VERTEX bv ON cu.PK_VERTEX = bv.PK_ID
|
||||
WHERE
|
||||
cu.PK_ID = #{pointMemberCode}
|
||||
</select>
|
||||
<select id="getCuMemberRetailDetailDTOList"
|
||||
resultType="com.hzs.member.structure.controller.vo.CuMemberThreeFrameworkVO">
|
||||
SELECT
|
||||
curd.STAGE_STATUS,
|
||||
curd.STAGE_DATE,
|
||||
curd.CHILD_NODE,
|
||||
curd.STAGE,
|
||||
curd.POINT_MEMBER_11 as pointMemberCode11,
|
||||
curd.POINT_MEMBER_12 as pointMemberCode12,
|
||||
curd.POINT_MEMBER_21 as pointMemberCode21,
|
||||
curd.POINT_MEMBER_22 as pointMemberCode22,
|
||||
curd.POINT_MEMBER_23 as pointMemberCode23,
|
||||
curd.POINT_MEMBER_24 as pointMemberCode24,
|
||||
curd.POINT_MEMBER_31 as pointMemberCode31,
|
||||
curd.POINT_MEMBER_32 as pointMemberCode32,
|
||||
curd.POINT_MEMBER_33 as pointMemberCode33,
|
||||
curd.POINT_MEMBER_34 as pointMemberCode34,
|
||||
curd.POINT_MEMBER_35 as pointMemberCode35,
|
||||
curd.POINT_MEMBER_36 as pointMemberCode36,
|
||||
curd.POINT_MEMBER_37 as pointMemberCode37,
|
||||
curd.POINT_MEMBER_38 as pointMemberCode38,
|
||||
CASE
|
||||
WHEN curd.POINT_11 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_11
|
||||
END AS pointMemberName11,
|
||||
CASE
|
||||
WHEN curd.POINT_12 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_12
|
||||
END AS pointMemberName12,
|
||||
CASE
|
||||
WHEN curd.POINT_21 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_21
|
||||
END AS pointMemberName21,
|
||||
CASE
|
||||
WHEN curd.POINT_22 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_22
|
||||
END AS pointMemberName22,
|
||||
CASE
|
||||
WHEN curd.POINT_23 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_23
|
||||
END AS pointMemberName23,
|
||||
CASE
|
||||
WHEN curd.POINT_24 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_24
|
||||
END AS pointMemberName24,
|
||||
CASE
|
||||
WHEN curd.POINT_31 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_31
|
||||
END AS pointMemberName31,
|
||||
CASE
|
||||
WHEN curd.POINT_32 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_32
|
||||
END AS pointMemberName32,
|
||||
CASE
|
||||
WHEN curd.POINT_33 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_33
|
||||
END AS pointMemberName33,
|
||||
CASE
|
||||
WHEN curd.POINT_34 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_34
|
||||
END AS pointMemberName34,
|
||||
CASE
|
||||
WHEN curd.POINT_35 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_35
|
||||
END AS pointMemberName35,
|
||||
CASE
|
||||
WHEN curd.POINT_36 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_36
|
||||
END AS pointMemberName36,
|
||||
CASE
|
||||
WHEN curd.POINT_37 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_37
|
||||
END AS pointMemberName37,
|
||||
CASE
|
||||
WHEN curd.POINT_38 IS NULL THEN NULL
|
||||
ELSE cu.MEMBER_NAME || '-' || curd.POINT_38
|
||||
END AS pointMemberName38
|
||||
curd.*
|
||||
FROM
|
||||
${settleTableName} curd
|
||||
LEFT JOIN CU_MEMBER cu ON curd.PK_MEMBER = cu.PK_ID
|
||||
|
@ -164,4 +78,15 @@
|
|||
ORDER BY
|
||||
curd.CHILD_NODE
|
||||
</select>
|
||||
<select id="getPointDetailByUserId"
|
||||
resultType="com.hzs.member.structure.controller.dto.CuMemberPointDTO">
|
||||
SELECT
|
||||
cur.CREATION_TIME
|
||||
FROM
|
||||
${settleTableName} cur
|
||||
WHERE
|
||||
cur.PK_MEMBER = #{ userId }
|
||||
AND cur.STAGE = #{stage}
|
||||
AND cur.CHILD_NODE = #{ point }
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
@ -17,13 +17,6 @@ import java.util.List;
|
|||
import java.util.Map;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
/**
|
||||
* @Description:
|
||||
* @Author: sui q
|
||||
* @Time: 2022/9/16 17:10
|
||||
* @Classname: RedisComponent
|
||||
* @PackageName: com.hzs.sale.component.load
|
||||
*/
|
||||
@Component
|
||||
@Slf4j
|
||||
class RedisComponent {
|
||||
|
|
|
@ -8,9 +8,6 @@ import java.util.List;
|
|||
|
||||
/**
|
||||
* 邮费详情设置 Mapper 接口
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-29
|
||||
*/
|
||||
public interface BdPostageDetailMapper extends BaseMapper<BdPostageDetail> {
|
||||
|
||||
|
|
|
@ -7,9 +7,6 @@ import java.util.List;
|
|||
|
||||
/**
|
||||
* 邮费详情设置 服务类
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-29
|
||||
*/
|
||||
public interface IBdPostageDetailService extends IService<BdPostageDetail> {
|
||||
|
||||
|
@ -18,9 +15,6 @@ public interface IBdPostageDetailService extends IService<BdPostageDetail> {
|
|||
*
|
||||
* @param tranType 运费方式
|
||||
* @param pkPostage 邮费模板
|
||||
* @return: BdPostageDetail
|
||||
* @Author: sui q
|
||||
* @Date: 2022/9/19 17:29
|
||||
*/
|
||||
List<BdPostageDetail> getPostageDetail(Integer tranType, Integer pkPostage);
|
||||
|
||||
|
@ -28,9 +22,6 @@ public interface IBdPostageDetailService extends IService<BdPostageDetail> {
|
|||
* 根据运费类型查询对应的模板
|
||||
*
|
||||
* @param tranType 运费类型
|
||||
* @return: List<BdPostageDetail>
|
||||
* @Author: sui q
|
||||
* @Date: 2022/9/19 17:02
|
||||
*/
|
||||
List<BdPostageDetail> queryPostageDetail(Integer tranType);
|
||||
}
|
||||
|
|
|
@ -9,12 +9,7 @@ import org.springframework.stereotype.Service;
|
|||
import java.util.List;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 邮费详情设置 服务实现类
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-29
|
||||
*/
|
||||
@Service
|
||||
public class BdPostageDetailServiceImpl extends ServiceImpl<BdPostageDetailMapper, BdPostageDetail> implements IBdPostageDetailService {
|
||||
|
|
|
@ -34,4 +34,16 @@ public enum EBonusStage {
|
|||
*/
|
||||
private final String label;
|
||||
|
||||
public static EBonusStage getEBonusStageByValue(Integer value) {
|
||||
if (null == value) {
|
||||
return null;
|
||||
}
|
||||
for (EBonusStage eBonusStage : EBonusStage.values()) {
|
||||
if (eBonusStage.getValue() == value) {
|
||||
return eBonusStage;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -30,4 +30,16 @@ public enum EBonusStageStatus {
|
|||
*/
|
||||
private final String label;
|
||||
|
||||
public static EBonusStageStatus getEBonusStageStatusLabel(Integer value) {
|
||||
if (null == value) {
|
||||
return null;
|
||||
}
|
||||
for (EBonusStageStatus eBonusStageStatus : EBonusStageStatus.values()) {
|
||||
if (eBonusStageStatus.getValue() == value) {
|
||||
return eBonusStageStatus;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -30,4 +30,15 @@ public enum EBonusStageType {
|
|||
*/
|
||||
private final String label;
|
||||
|
||||
public static EBonusStageType getEBonusStageTypeByValue(Integer value) {
|
||||
if (null == value) {
|
||||
return null;
|
||||
}
|
||||
for (EBonusStageType eBonusStageType : EBonusStageType.values()) {
|
||||
if (eBonusStageType.getValue() == value) {
|
||||
return eBonusStageType;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -74,6 +74,8 @@ public enum EOperationBusiness {
|
|||
|
||||
SHARE_DELETE("删除空点"),
|
||||
|
||||
MEMBER_POINT("会员子点信息"),
|
||||
|
||||
//////////////////// 架构管理 ////////////////////
|
||||
|
||||
SCHEME_ONE("方案一"),
|
||||
|
|
|
@ -40,6 +40,8 @@ public enum EOperationModule {
|
|||
|
||||
BUSINESS_LICENSE("营业执照"),
|
||||
|
||||
MEMBER_POINT("会员子点信息"),
|
||||
|
||||
//////////////////// 架构管理 ////////////////////
|
||||
|
||||
RESETTLE_FRAMEWORK("安置架构"),
|
||||
|
@ -400,9 +402,13 @@ public enum EOperationModule {
|
|||
STATISTIC_ANALYSIS("统计分析"),
|
||||
|
||||
MEMBER_RISK_CONTROL("K值风控设置"),
|
||||
|
||||
ORDER_SYNC("同步失败订单"),
|
||||
|
||||
MEMBER_RETAIL_CHILDNODE("会员子节点查询"),
|
||||
|
||||
MEMBER_RETAIL_TREE("三阶段结构"),
|
||||
|
||||
MEMBER_RETAIL_TREE_LIST("三阶段数据")
|
||||
;
|
||||
|
||||
|
|
|
@ -212,4 +212,10 @@ public class CuMemberRetailRange extends BaseEntity {
|
|||
@TableField("GIFT_POINT")
|
||||
private Integer giftPoint;
|
||||
|
||||
/**
|
||||
* 赠送点位填充最新时间
|
||||
*/
|
||||
@TableField("GIFT_PAY_TIME")
|
||||
private Date giftPayTime;
|
||||
|
||||
}
|
||||
|
|
|
@ -6,8 +6,8 @@ import lombok.Data;
|
|||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 新零售极差实体
|
||||
|
@ -142,4 +142,9 @@ public class CuMemberRetailRangeExt extends CuMemberRetailRange {
|
|||
*/
|
||||
private LinkedHashMap<Integer, CuMemberRetailDetail> threeDetailMap;
|
||||
|
||||
/**
|
||||
* 直推会员列表
|
||||
*/
|
||||
private LinkedHashMap<Date, CuMemberRetailRangeExt> childRetailMap;
|
||||
|
||||
}
|
||||
|
|
|
@ -0,0 +1,339 @@
|
|||
package com.hzs.common.domain.member.base;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import java.util.Date;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.hzs.common.core.web.domain.BaseEntity;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author bd
|
||||
* @since 2025-09-25
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Accessors(chain = true)
|
||||
@TableName("CU_MEMBER_RETAIL")
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
public class CuMemberRetail extends BaseEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/**
|
||||
* 会员ID
|
||||
*/
|
||||
@TableField("PK_MEMBER")
|
||||
private Long pkMember;
|
||||
|
||||
/**
|
||||
* 推荐人ID
|
||||
*/
|
||||
@TableField("PK_PARENT")
|
||||
private Long pkParent;
|
||||
|
||||
/**
|
||||
* 会员编号
|
||||
*/
|
||||
@TableField("MEMBER_CODE")
|
||||
private String memberCode;
|
||||
|
||||
/**
|
||||
* 会员姓名
|
||||
*/
|
||||
@TableField("MEMBER_NAME")
|
||||
private String memberName;
|
||||
|
||||
/**
|
||||
* 会员类型(0.正常 1.空单 2.待激活-不用 3.已注销-不用 4.嗨粉 6.会员)
|
||||
*/
|
||||
@TableField("CUSTOMER_TYPE")
|
||||
private Integer customerType;
|
||||
|
||||
/**
|
||||
* 联系方式
|
||||
*/
|
||||
@TableField("PHONE")
|
||||
private String phone;
|
||||
|
||||
/**
|
||||
* 会员等级
|
||||
*/
|
||||
@TableField("PK_GRADE")
|
||||
private Integer pkGrade;
|
||||
|
||||
/**
|
||||
* 会员奖衔
|
||||
*/
|
||||
@TableField("PK_AWARDS")
|
||||
private Integer pkAwards;
|
||||
|
||||
/**
|
||||
* 分红奖衔
|
||||
*/
|
||||
@TableField("PK_SHARE_AWARDS")
|
||||
private Integer pkShareAwards;
|
||||
|
||||
/**
|
||||
* 是否支付
|
||||
*/
|
||||
@TableField("ENABLE_STATUS")
|
||||
private Integer enableStatus;
|
||||
|
||||
/**
|
||||
* 账户状态(0=正常,1=限制登录(仅登录,无操作),2=禁止登录(不能登录),3=停止收益(计算不发),4=停算奖金(不计算奖金))
|
||||
*/
|
||||
@TableField("ACCOUNT_STATUS")
|
||||
private Integer accountStatus;
|
||||
|
||||
/**
|
||||
* 支付状态
|
||||
*/
|
||||
@TableField("PAY_STATUS")
|
||||
private Integer payStatus;
|
||||
|
||||
/**
|
||||
* 支付时间
|
||||
*/
|
||||
@TableField("PAY_TIME")
|
||||
private Date payTime;
|
||||
|
||||
/**
|
||||
* 用户类型分类(0=正常(正常 空单 嗨粉) 1=待激活(撤单死点)2=已注销(退单))
|
||||
*/
|
||||
@TableField("CATEGORY")
|
||||
private Integer category;
|
||||
|
||||
/**
|
||||
* 复购免考(0=是,1=否)
|
||||
*/
|
||||
@TableField("PURCHASE_STATUS")
|
||||
private Integer purchaseStatus;
|
||||
|
||||
/**
|
||||
* 收益状态 (0=正常,1=停止收益)
|
||||
*/
|
||||
@TableField("INCOME_STATUS")
|
||||
private Integer incomeStatus;
|
||||
|
||||
/**
|
||||
* 团队ID
|
||||
*/
|
||||
@TableField("PK_TEAM_CODE")
|
||||
private Long pkTeamCode;
|
||||
|
||||
/**
|
||||
* 报单中心ID
|
||||
*/
|
||||
@TableField("PK_CENTER_CODE")
|
||||
private Long pkCenterCode;
|
||||
|
||||
/**
|
||||
* 体系ID
|
||||
*/
|
||||
@TableField("PK_VERTEX")
|
||||
private Long pkVertex;
|
||||
|
||||
/**
|
||||
* 结算国
|
||||
*/
|
||||
@TableField("PK_SETTLE_COUNTRY")
|
||||
private Integer pkSettleCountry;
|
||||
|
||||
/**
|
||||
* 是否实名认证(0=是,1=否)
|
||||
*/
|
||||
@TableField("IS_REAL_NAME")
|
||||
private Integer isRealName;
|
||||
|
||||
/**
|
||||
* 系统类型(2=新零售)
|
||||
*/
|
||||
@TableField("SYSTEM_TYPE")
|
||||
private Integer systemType;
|
||||
|
||||
/**
|
||||
* 汇率
|
||||
*/
|
||||
@TableField("PK_RATE")
|
||||
private Integer pkRate;
|
||||
|
||||
/**
|
||||
* 本人当天新消费pv
|
||||
*/
|
||||
@TableField("NEW_CONSUME_PV")
|
||||
private BigDecimal newConsumePv;
|
||||
|
||||
/**
|
||||
* 本人累计消费pv
|
||||
*/
|
||||
@TableField("CONSUME_PV")
|
||||
private BigDecimal consumePv;
|
||||
|
||||
/**
|
||||
* 本人月累计消费pv
|
||||
*/
|
||||
@TableField("MONTH_CONSUME_PV")
|
||||
private BigDecimal monthConsumePv;
|
||||
|
||||
/**
|
||||
* 本人当天新消费金额
|
||||
*/
|
||||
@TableField("NEW_CONSUME_AMOUNT")
|
||||
private BigDecimal newConsumeAmount;
|
||||
|
||||
/**
|
||||
* 本人累计消费金额
|
||||
*/
|
||||
@TableField("CONSUME_AMOUNT")
|
||||
private BigDecimal consumeAmount;
|
||||
|
||||
/**
|
||||
* 本人月累计消费金额
|
||||
*/
|
||||
@TableField("MONTH_CONSUME_AMOUNT")
|
||||
private BigDecimal monthConsumeAmount;
|
||||
|
||||
/**
|
||||
* 团队当天新增消费pv
|
||||
*/
|
||||
@TableField("TEAM_NEW_PV")
|
||||
private BigDecimal teamNewPv;
|
||||
|
||||
/**
|
||||
* 团队累计消费pv
|
||||
*/
|
||||
@TableField("TEAM_CONSUME_PV")
|
||||
private BigDecimal teamConsumePv;
|
||||
|
||||
/**
|
||||
* 团队月累计消费pv
|
||||
*/
|
||||
@TableField("TEAM_MONTH_PV")
|
||||
private BigDecimal teamMonthPv;
|
||||
|
||||
/**
|
||||
* 团队新增消费金额
|
||||
*/
|
||||
@TableField("TEAM_NEW_AMOUNT")
|
||||
private BigDecimal teamNewAmount;
|
||||
|
||||
/**
|
||||
* 团队累计消费金额
|
||||
*/
|
||||
@TableField("TEAM_CONSUME_AMOUNT")
|
||||
private BigDecimal teamConsumeAmount;
|
||||
|
||||
/**
|
||||
* 团队月累计消费金额
|
||||
*/
|
||||
@TableField("TEAM_MONTH_AMOUNT")
|
||||
private BigDecimal teamMonthAmount;
|
||||
|
||||
/**
|
||||
* 推荐人数
|
||||
*/
|
||||
@TableField("RECOMMEND_NUM")
|
||||
private Integer recommendNum;
|
||||
|
||||
/**
|
||||
* 团队人数
|
||||
*/
|
||||
@TableField("TEAM_NUM")
|
||||
private Integer teamNum;
|
||||
|
||||
@TableField("BIG_TEAM_PV")
|
||||
private BigDecimal bigTeamPv;
|
||||
|
||||
@TableField("SMALL_TEAM_PV")
|
||||
private BigDecimal smallTeamPv;
|
||||
|
||||
/**
|
||||
* 本日-个人注册(精品专区)新增金额
|
||||
*/
|
||||
@TableField("REG_CONSUME_NEW_AMOUNT")
|
||||
private BigDecimal regConsumeNewAmount;
|
||||
|
||||
/**
|
||||
* 本日-个人注册(精品专区)新增业绩
|
||||
*/
|
||||
@TableField("REG_CONSUME_NEW_PV")
|
||||
private BigDecimal regConsumeNewPv;
|
||||
|
||||
/**
|
||||
* 本日-团队注册(精品专区)新增金额
|
||||
*/
|
||||
@TableField("REG_TEAM_NEW_AMOUNT")
|
||||
private BigDecimal regTeamNewAmount;
|
||||
|
||||
/**
|
||||
* 本日-团队注册(精品专区)新增业绩
|
||||
*/
|
||||
@TableField("REG_TEAM_NEW_PV")
|
||||
private BigDecimal regTeamNewPv;
|
||||
|
||||
/**
|
||||
* 本日-个人复购(商城专区)新增金额
|
||||
*/
|
||||
@TableField("REP_CONSUME_NEW_AMOUNT")
|
||||
private BigDecimal repConsumeNewAmount;
|
||||
|
||||
/**
|
||||
* 本日-个人复购(商城专区)新增业绩
|
||||
*/
|
||||
@TableField("REP_CONSUME_NEW_PV")
|
||||
private BigDecimal repConsumeNewPv;
|
||||
|
||||
/**
|
||||
* 本日-团队复购(商城专区)新增金额
|
||||
*/
|
||||
@TableField("REP_TEAM_NEW_AMOUNT")
|
||||
private BigDecimal repTeamNewAmount;
|
||||
|
||||
/**
|
||||
* 本日-团队复购(商城专区)新增业绩
|
||||
*/
|
||||
@TableField("REP_TEAM_NEW_PV")
|
||||
private BigDecimal repTeamNewPv;
|
||||
|
||||
/**
|
||||
* 子点位总数
|
||||
*/
|
||||
@TableField("POINT_COUNT")
|
||||
private Integer pointCount;
|
||||
|
||||
/**
|
||||
* 待激活子点位数
|
||||
*/
|
||||
@TableField("WAIT_POINT_COUNT")
|
||||
private Integer waitPointCount;
|
||||
|
||||
/**
|
||||
* 复购业绩余额
|
||||
*/
|
||||
@TableField("REP_PV_BALANCE")
|
||||
private BigDecimal repPvBalance;
|
||||
|
||||
/**
|
||||
* 赠送1个点位已存在标记
|
||||
*/
|
||||
@TableField("GIFT_ONE")
|
||||
private Integer giftOne;
|
||||
|
||||
/**
|
||||
* 赠送2个点位已存在标记
|
||||
*/
|
||||
@TableField("GIFT_TWO")
|
||||
private Integer giftTwo;
|
||||
|
||||
|
||||
}
|
|
@ -12,19 +12,14 @@ import lombok.EqualsAndHashCode;
|
|||
import lombok.experimental.Accessors;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 邮费详情设置
|
||||
* </p>
|
||||
*
|
||||
* @author hzs
|
||||
* @since 2022-08-29
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = false)
|
||||
@Accessors(chain = true)
|
||||
@TableName("BD_POSTAGE_DETAIL")
|
||||
@KeySequence("BD_POSTAGE_DETAIL_SEQ")
|
||||
public class BdPostageDetail extends BaseEntity {
|
||||
public class BdPostageDetail extends BaseEntity {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
@ -32,7 +27,6 @@ public class BdPostageDetail extends BaseEntity {
|
|||
private Integer pkId;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 首重重量
|
||||
*/
|
||||
|
|
|
@ -20,7 +20,7 @@ public class CodeGenerator {
|
|||
// 模块名称(包名)
|
||||
String moduleName = "com.hzs.common.domain";
|
||||
// 表名
|
||||
String[] tables = {"CU_MEMBER_RETAIL_DETAIL"};
|
||||
String[] tables = {"CU_MEMBER_RETAIL"};
|
||||
// 生成实体是否继承统一父类
|
||||
boolean superBool = true;
|
||||
|
||||
|
|
Loading…
Reference in New Issue