diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java index b57f406e..28f9cf80 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/account/IMemberJobServiceApi.java @@ -21,4 +21,11 @@ public interface IMemberJobServiceApi { */ R deleteAccountDetailByMonth(); + /** + * 清除7天前0元会员 + * + * @return + */ + R clearZeroMember(); + } diff --git a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java index 6debd753..f2fd998b 100644 --- a/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java +++ b/bd-api/bd-api-member/src/main/java/com/hzs/member/base/IMemberServiceApi.java @@ -296,9 +296,9 @@ public interface IMemberServiceApi { * 用户降级 -- 来源于活动 * * @param cuMember 用户信息 - * @param saOrder 订单信息 + * @param pkOrder 订单ID */ - R reduceMemberLevel(CuMember cuMember, SaOrder saOrder); + R reduceMemberLevel(CuMember cuMember, Long pkOrder); /** * 更新升级记录 -- 来源于活动 @@ -442,4 +442,5 @@ public interface IMemberServiceApi { R> memberRegionMap(Date settleDate); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java index 965fa3cf..2fd34e4e 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/mapper/CuMemberAccountMapper.java @@ -219,4 +219,10 @@ public interface CuMemberAccountMapper extends BaseMapper { CuMemberAccountExt queryAccountSummaryByVertex(@Param("pkVertex") Long pkVertex, @Param("pkCountry") Integer pkCountry); void deleteCuMemberAccountByMemberCode(@Param("userId") Long userId, @Param("date")Date date, @Param("memberCode")String memberCode); + + /** + * 清除7天前0元会员 + */ + void clearZeroMember(); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java index c23c724e..20a1eb1a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/provider/IMemberJobServiceProvider.java @@ -3,9 +3,13 @@ package com.hzs.member.account.provider; import com.hzs.common.core.domain.R; import com.hzs.member.account.IMemberJobServiceApi; import com.hzs.member.account.service.ICuMemberAccountDetailService; +import com.hzs.member.account.service.ICuMemberAccountService; +import com.hzs.member.base.service.ICuMemberRegisterService; +import com.hzs.member.base.service.ICuMemberService; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; /** * 会员模块定时任务服务提供 @@ -16,6 +20,12 @@ public class IMemberJobServiceProvider implements IMemberJobServiceApi { @Autowired private ICuMemberAccountDetailService iCuMemberAccountDetailService; + @Autowired + private ICuMemberService iCuMemberService; + @Autowired + private ICuMemberAccountService iCuMemberAccountService; + @Autowired + private ICuMemberRegisterService iCuMemberRegisterService; @Override public R insertAccountDetail() { @@ -39,4 +49,21 @@ public class IMemberJobServiceProvider implements IMemberJobServiceApi { return R.ok(); } + @Transactional(rollbackFor = Exception.class) + @Override + public R clearZeroMember() { + try { + // 删除会员注册信息 + iCuMemberRegisterService.clearZeroMember(); + // 删除会员账户 + iCuMemberAccountService.clearZeroMember(); + // 账户会员信息 + iCuMemberService.clearZeroMember(); + } catch (Exception e) { + log.info("清除7天前0元会员失败:", e); + return R.fail(e.getMessage()); + } + return R.ok(); + } + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java index f1f01edb..d9d3bd45 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/ICuMemberAccountService.java @@ -285,4 +285,10 @@ public interface ICuMemberAccountService extends IService { CuMemberAccountExt queryAccountSummaryByVertex(Long pkVertex, Integer pkCountry); void deleteCuMemberAccountByMemberCode(Long userId, Date date, String memberCode); + + /** + * 清除7天前0元会员 + */ + void clearZeroMember(); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java index d22c5a19..4a923eaf 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/service/impl/CuMemberAccountServiceImpl.java @@ -809,5 +809,10 @@ public class CuMemberAccountServiceImpl extends ServiceImpl { List queryDeleteDeadLockList(@Param("memberCode") String memberCode); Integer queryIsDeadMember(@Param("memberCode") String memberCode); + + /** + * 清除7天前0元会员 + */ + void clearZeroMember(); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRegisterMapper.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRegisterMapper.java index 038c5495..cd121dd2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRegisterMapper.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/mapper/CuMemberRegisterMapper.java @@ -35,4 +35,9 @@ public interface CuMemberRegisterMapper extends BaseMapper { */ int insertBatchMemberRegister(@Param("registerMemberList") List registerMemberList); + /** + * 清除7天前0元会员 + */ + int clearZeroMember(); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java index 2655e529..4415b48c 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/provider/MemberServiceProvider.java @@ -352,9 +352,9 @@ public class MemberServiceProvider implements IMemberServiceApi { } @Override - public R reduceMemberLevel(CuMember cuMember, SaOrder saOrder) { + public R reduceMemberLevel(CuMember cuMember, Long pkOrder) { try { - iCuMemberBusinessService.reduceMemberLevel(cuMember, saOrder); + iCuMemberBusinessService.reduceMemberLevel(cuMember, pkOrder); return R.ok(); } catch (Exception e) { return R.fail(e.getMessage()); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java index bb9504cc..4988cb15 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberBusinessService.java @@ -180,9 +180,9 @@ public interface ICuMemberBusinessService { * 用户降级 -- 来源于活动 * * @param cuMember 用户信息 - * @param saOrder 订单信息 + * @param pkOrder 订单ID */ - void reduceMemberLevel(CuMember cuMember, SaOrder saOrder); + void reduceMemberLevel(CuMember cuMember, Long pkOrder); /** * 更新升级记录 -- 来源于活动 diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java index 1d4ae7f3..ab35852d 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberRegisterService.java @@ -41,4 +41,9 @@ public interface ICuMemberRegisterService extends IService { */ int insertBatchMemberRegister(List registerMemberList); + /** + * 清除7天前0元会员 + */ + void clearZeroMember(); + } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java index 0e814d08..eb256a24 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/ICuMemberService.java @@ -1021,5 +1021,9 @@ public interface ICuMemberService extends IService { */ CuMember shareRegisterMember(ShareRegisterParam registerParam); + /** + * 清除7天前0元会员 + */ + void clearZeroMember(); } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java index a92dc78e..bfa2fd17 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberBusinessServiceImpl.java @@ -1207,12 +1207,12 @@ public class CuMemberBusinessServiceImpl implements ICuMemberBusinessService { @Transactional(rollbackFor = Exception.class) @Override - public void reduceMemberLevel(CuMember cuMember, SaOrder saOrder) { + public void reduceMemberLevel(CuMember cuMember, Long pkOrder) { updateCuMember(cuMember); iCuMemberLevelService.update(Wrappers.lambdaUpdate() .eq(CuMemberLevel::getPkMember, cuMember.getPkId()) .eq(CuMemberLevel::getUpType, EUpgradeType.ACTIVITY_UPGRADE.getValue()) - .eq(CuMemberLevel::getPkOrder, saOrder.getPkId()) + .eq(CuMemberLevel::getPkOrder, pkOrder) .set(CuMemberLevel::getDelFlag, EDelFlag.DELETE.getValue()) .set(CuMemberLevel::getUpgradeTime, new Date()) ); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java index 49760771..01fd876a 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegisterServiceImpl.java @@ -48,4 +48,8 @@ public class CuMemberRegisterServiceImpl extends ServiceImpl i return cuMember; } + @Override + public void clearZeroMember() { + baseMapper.clearZeroMember(); + } } diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/MemberStatisticsServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/MemberStatisticsServiceImpl.java index 66f5c870..bbe5a734 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/MemberStatisticsServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/statis/service/impl/MemberStatisticsServiceImpl.java @@ -74,7 +74,7 @@ public class MemberStatisticsServiceImpl implements IMemberStatisticsService { for (DirectStatisticsTop30VO directStatisticsTop30VO : result) { if(param.getFaker()){ directStatisticsTop30VO.setMemberCode(DataMaskingUtil.mask(directStatisticsTop30VO.getMemberCode(), 2, 2)); - directStatisticsTop30VO.setMemberName(DataMaskingUtil.mask(directStatisticsTop30VO.getMemberName(), 1, 0)); + directStatisticsTop30VO.setMemberName(DataMaskingUtil.mask(directStatisticsTop30VO.getMemberName(), 1, 0, 6)); } directStatisticsTop30VO.setNumberOfAmount(directStatisticsTop30VO.getNumberOfAmount().divide(new BigDecimal(10000))); } diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml index 25667968..98f1cf87 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/account/CuMemberAccountMapper.xml @@ -69,9 +69,12 @@ + update cu_member_account cma - set cma.del_flag = 1,cma.PK_MODIFIED = #{userId},cma.MODIFIED_TIME = #{date} + set cma.del_flag = 1, + cma.PK_MODIFIED = #{userId}, + cma.MODIFIED_TIME = #{date} where cma.pk_member in (select cm.pk_id from cu_member cm @@ -1239,4 +1242,24 @@ (select cm.pk_id from cu_member cm where cm.pk_vertex = #{pkVertex}) + + + update cu_member_account cma + set cma.del_flag = 1 + where cma.pk_member in + (select so.pk_member + from cu_member cm + left join sa_order so + on so.pk_member = cm.pk_id + and so.del_flag = 0 + and so.order_status = 1 + where cm.del_flag = 0 + and cm.pk_settle_grade = 1 + and cm.pay_status = 0 + and cm.pay_time is null + and sysdate - 8 > cm.creation_time + group by so.pk_member + having count(so.pk_member) = 0) + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml index d839ab26..f3bd14ac 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberMapper.xml @@ -3245,5 +3245,25 @@ t.MEMBER_CODE != #{memberCode} + + + update cu_member cm + set cm.del_flag = 1, + cm.member_code = cm.member_code || '-' || + trunc(dbms_random.value(100, 999)) + where cm.pk_id in (select so.pk_member + from cu_member cm + left join sa_order so + on so.pk_member = cm.pk_id + and so.del_flag = 0 + and so.order_status = 1 + where cm.del_flag = 0 + and cm.pk_settle_grade = 1 + and cm.pay_status = 0 + and cm.pay_time is null + and sysdate - 8 > cm.creation_time + group by so.pk_member + having count(so.pk_member) = 0) + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegisterMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegisterMapper.xml index 23a5930f..45f98249 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegisterMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegisterMapper.xml @@ -171,4 +171,23 @@ ) t + + + update cu_member_register cmr + set cmr.del_flag = 1 + where cmr.pk_member in (select so.pk_member + from cu_member cm + left join sa_order so + on so.pk_member = cm.pk_id + and so.del_flag = 0 + and so.order_status = 1 + where cm.del_flag = 0 + and cm.pk_settle_grade = 1 + and cm.pay_status = 0 + and cm.pay_time is null + and sysdate - 8 > cm.creation_time + group by so.pk_member + having count(so.pk_member) = 0); + + diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/MemberStatisticsMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/MemberStatisticsMapper.xml index e854266c..05233d8c 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/statis/MemberStatisticsMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/statis/MemberStatisticsMapper.xml @@ -12,15 +12,16 @@ numberOfAmount from ( select - PK_REFERENCE, - count(PK_REFERENCE) numberOfPeople, + o.PK_REFERENCE, + count(DISTINCT o.PK_MEMBER) numberOfPeople, sum(order_amount) numberOfAmount - from sa_order + from sa_order o + right join cu_member m on m.PK_ID = o.pk_member and m.DEL_FLAG = 0 and m.CATEGORY = 0 where - del_flag = 0 + o.del_flag = 0 and order_status = 1 AND (order_type in (1,2) or (order_Type = 3 and ORDER_TYPE_EXTEND = 1)) - and pay_time between #{param.startDate} and #{param.endDate} + and o.pay_time between #{param.startDate} and #{param.endDate} group by PK_REFERENCE ) r left join cu_member cm on r.PK_REFERENCE = cm.pk_id @@ -37,15 +38,16 @@ numberOfAmount from ( select - PK_REFERENCE, - count(PK_REFERENCE) numberOfPeople, + o.PK_REFERENCE, + count(DISTINCT o.PK_MEMBER) numberOfPeople, sum(order_amount) numberOfAmount - from sa_order + from sa_order o + right join cu_member m on m.PK_ID = o.pk_member and m.DEL_FLAG = 0 and m.CATEGORY = 0 where - del_flag = 0 + o.del_flag = 0 and order_status = 1 AND (order_type in (1,2) or (order_Type = 3 and ORDER_TYPE_EXTEND = 1)) - and pay_time between #{param.startDate} and #{param.endDate} + and o.pay_time between #{param.startDate} and #{param.endDate} group by PK_REFERENCE ) r left join cu_member cm on r.PK_REFERENCE = cm.pk_id diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/controller/AcRecommendConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/controller/AcRecommendConfigController.java index 4c12a4e7..a282bf10 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/controller/AcRecommendConfigController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/controller/AcRecommendConfigController.java @@ -10,8 +10,6 @@ import com.hzs.activity.recommend.service.IAcRecomUpgradeRecordService; import com.hzs.activity.recommend.service.IAcRepurCouponsRuleConfigService; import com.hzs.activity.recommend.vo.AcDirectPushUpgradeListVO; import com.hzs.activity.recommend.vo.AcRecommendVO; -import com.hzs.activity.tourism.param.TourismDataParam; -import com.hzs.activity.tourism.vo.TourismDataVo; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EOperationBusiness; @@ -70,7 +68,7 @@ public class AcRecommendConfigController extends BaseController { * @param acDirectPushUpgradeParam * @return */ - @Log(module = EOperationModule.AC_DIRECT_PUSH_UPGRADE, business = EOperationBusiness.AC_DIRECT_PUSH_UPGRADE, method = EOperationMethod.INSERT, remark = "在线签呈") + @Log(module = EOperationModule.AC_DIRECT_PUSH_UPGRADE, business = EOperationBusiness.AC_DIRECT_PUSH_UPGRADE, method = EOperationMethod.INSERT) @PostMapping("/directPushUpgrade") public AjaxResult directPushUpgradeSubmit(@RequestBody AcDirectPushUpgradeParam acDirectPushUpgradeParam) { acDirectPushUpgradeParam.setPkCountry(SecurityUtils.getPkCountry()); @@ -87,13 +85,14 @@ public class AcRecommendConfigController extends BaseController { * @param param * @return */ - @Log(module = EOperationModule.AC_DIRECT_PUSH_UPGRADE, business = EOperationBusiness.AC_DIRECT_PUSH_UPGRADE, method = EOperationMethod.SELECT, remark = "在线签呈") + @Log(module = EOperationModule.AC_DIRECT_PUSH_UPGRADE_LIST, business = EOperationBusiness.AC_DIRECT_PUSH_UPGRADE_LIST, method = EOperationMethod.SELECT) @GetMapping("/directPushUpgradeList") public TableDataInfo directPushUpgradeList(AcDirectPushUpgradeListParam param) { startPage(); return getDataTable(iAcRecomUpgradeRecordService.queryList(param)); } + @Log(module = EOperationModule.AC_DIRECT_PUSH_UPGRADE_LIST, business = EOperationBusiness.AC_DIRECT_PUSH_UPGRADE_LIST, method = EOperationMethod.SELECT) @PostMapping("/directPushUpgradeExport") public void export(AcDirectPushUpgradeListParam param, HttpServletResponse response) { startPage(); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/dto/AcDirectPushUpgradeListDTO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/dto/AcDirectPushUpgradeListDTO.java deleted file mode 100644 index 7679d1e6..00000000 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/dto/AcDirectPushUpgradeListDTO.java +++ /dev/null @@ -1,59 +0,0 @@ -package com.hzs.activity.recommend.dto; - -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 AcDirectPushUpgradeListDTO { - - /** - * 活动名称 - */ - private String actName; - /** - * 会员编号 - */ - private String memberCode; - /** - * 会员名称 - */ - private String memberName; - - /** - * 原等级 - */ - private Integer pkSettleGrade; - /** - * 新等级 - */ - private Integer pkRecommendGrade; - - /** - * 活动开始时间 - */ - private Date actStartDate; - - /** - * 活动结束时间 - */ - private Date actEndDate; - - /** - * 创建时间 - */ - private Date creationTime; - - /** - * 升级年月 - */ - private String upgradeTime; - -} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRecomUpgradeRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRecomUpgradeRecordMapper.java index 83f4c321..1a4eb4f3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRecomUpgradeRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/mapper/AcRecomUpgradeRecordMapper.java @@ -1,7 +1,6 @@ package com.hzs.activity.recommend.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.activity.recommend.dto.AcDirectPushUpgradeListDTO; import com.hzs.activity.recommend.param.AcDirectPushUpgradeListParam; import com.hzs.activity.recommend.vo.AcDirectPushUpgradeListVO; import com.hzs.common.domain.activity.recommend.AcRecomUpgradeRecord; @@ -42,5 +41,5 @@ public interface AcRecomUpgradeRecordMapper extends BaseMapper queryList(AcDirectPushUpgradeListParam param); + List queryList(AcDirectPushUpgradeListParam param); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/param/AcDirectPushUpgradeListParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/param/AcDirectPushUpgradeListParam.java index 02a88f45..7f3b2bca 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/param/AcDirectPushUpgradeListParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/param/AcDirectPushUpgradeListParam.java @@ -25,20 +25,20 @@ public class AcDirectPushUpgradeListParam { /** * 开始活动开始时间 */ - private Date startActStartDate; + private String startActStartDate; /** * 开始活动结束时间 */ - private Date startActEndDate; + private String startActEndDate; /** * 结束活动开始时间 */ - private Date endActStartDate; + private String endActStartDate; /** * 结束活动结束时间 */ - private Date endActEndDate; + private String endActEndDate; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRecomUpgradeRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRecomUpgradeRecordServiceImpl.java index 2c8eed64..9283bc1a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRecomUpgradeRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRecomUpgradeRecordServiceImpl.java @@ -3,7 +3,6 @@ package com.hzs.activity.recommend.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.recommend.dto.AcDirectPushUpgradeListDTO; import com.hzs.activity.recommend.mapper.AcRecomUpgradeRecordMapper; import com.hzs.activity.recommend.param.AcDirectPushUpgradeListParam; import com.hzs.activity.recommend.service.IAcRecomUpgradeRecordService; @@ -63,15 +62,7 @@ public class AcRecomUpgradeRecordServiceImpl extends ServiceImpl queryList(AcDirectPushUpgradeListParam param) { - List acDirectPushUpgradeListDTOS = baseMapper.queryList(param); - ArrayList acDirectPushUpgradeListVOS = new ArrayList<>(); - acDirectPushUpgradeListDTOS.forEach(item -> { - AcDirectPushUpgradeListVO acDirectPushUpgradeListVO = BeanUtil.copyProperties(item, AcDirectPushUpgradeListVO.class); - acDirectPushUpgradeListVO.setPkSettleGrade(EGrade.getGradeByIndex(item.getPkSettleGrade()).getLabel()); - acDirectPushUpgradeListVO.setPkRecommendGrade(EGrade.getGradeByIndex(item.getPkRecommendGrade()).getLabel()); - acDirectPushUpgradeListVOS.add(acDirectPushUpgradeListVO); - }); - return acDirectPushUpgradeListVOS; + return baseMapper.queryList(param); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java index 6a94b9db..96e58b72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/service/impl/AcRepurCouponsRuleConfigServiceImpl.java @@ -703,14 +703,14 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl upgradeRecordList = iAcRecomUpgradeRecordService.list(Wrappers.lambdaQuery() .eq(AcRecomUpgradeRecord::getPkMember, pkMember) - .eq(AcRecomUpgradeRecord::getPkOrderId, pkOrderId) + .eq(AcRecomUpgradeRecord::getUpgradeTime, upgradeTime) .orderByDesc(AcRecomUpgradeRecord::getUpgradeTime) ); if (CollectionUtil.isNotEmpty(upgradeRecordList)) { @@ -732,43 +732,60 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl 0) { - startTime = monthFirst; - } - // 当月最后一天 - Date monthLast = DateUtils.getLastDayOfMonth(nowDate); - if (monthLast.compareTo(endTime) < 0) { - endTime = monthLast; - } - List recomOrderList = iAcRecomUpgradeRecordService.listRecomOrder(pkMember, upgradeRuleConfig.getPkRecommendGrade(), upgradeRuleConfig.getRecommendNumber(), startTime, endTime); - // 校验推荐人是否可以升级 - if (CollectionUtil.isEmpty(recomOrderList) - || recomOrderList.size() != upgradeRuleConfig.getRecommendNumber()) { - // 订单撤单后,目前订单不够升级了,需要降级 - CuMember cuMember = CuMember.builder() - .pkId(pkMember) - .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) - .build(); - iMemberServiceApi.reduceMemberLevel(cuMember, saOrderExt); - return; - } - // 足够升级,更新升级记录时间 - SaOrder newOrder = recomOrderList.get(recomOrderList.size() - 1); - iMemberServiceApi.changeMemberLevel(saOrderExt, newOrder); + iMemberServiceApi.reduceMemberLevel(cuMember, recomUpgradeRecord.getPkOrderId()); + return; } + // 活动基础配置 + AcBaseConfig baseConfig = iAcBaseConfigService.getById(recomUpgradeRecord.getPkBaseId()); + // 活动基础配置 + AcRecomUpgradeRuleConfig upgradeRuleConfig = iAcRecomUpgradeRuleConfigService.getById(recomUpgradeRecord.getPkRuleId()); + // 查询订单时间范围 + // 默认活动开始时间 + Date startTime = baseConfig.getActStartDate(); + // 默认活动结束时间 + Date endTime = baseConfig.getActEndDate(); + // 当月第一天 + Date monthFirst = DateUtils.getFirstDayOfMonth(nowDate); + if (monthFirst.compareTo(startTime) > 0) { + startTime = monthFirst; + } + // 当月最后一天 + Date monthLast = DateUtils.getLastDayOfMonth(nowDate); + if (monthLast.compareTo(endTime) < 0) { + endTime = monthLast; + } + List recomOrderList = iAcRecomUpgradeRecordService.listRecomOrder(pkMember, upgradeRuleConfig.getPkRecommendGrade(), upgradeRuleConfig.getRecommendNumber(), startTime, endTime); + // 校验推荐人是否可以升级 + if (CollectionUtil.isEmpty(recomOrderList) + || recomOrderList.size() != upgradeRuleConfig.getRecommendNumber()) { + // 订单撤单后,目前订单不够升级了,需要降级 + CuMember cuMember = CuMember.builder() + .pkId(pkMember) + .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) + .build(); + iMemberServiceApi.reduceMemberLevel(cuMember, recomUpgradeRecord.getPkOrderId()); + return; + } + + // 足够升级,更新升级记录时间 + SaOrder newOrder = recomOrderList.get(recomOrderList.size() - 1); + + // 封装规则升级记录 + AcRecomUpgradeRecord newUpgradeRecord = AcRecomUpgradeRecord.builder() + .pkBaseId(baseConfig.getPkId()) + .pkRuleId(upgradeRuleConfig.getPkId()) + .pkMember(pkMember) + .pkSettleGrade(recomUpgradeRecord.getPkSettleGrade()) + .pkRecommendGrade(recomUpgradeRecord.getPkRecommendGrade()) + .pkOrderId(newOrder.getPkId()) + .upgradeTime(upgradeTime) + .build(); + newUpgradeRecord.setPkCreator(referenceMember.getPkId()); + newUpgradeRecord.setPkCountry(referenceMember.getPkSettleCountry()); + iAcRecomUpgradeRecordService.save(newUpgradeRecord); + + saOrderExt.setPkId(recomUpgradeRecord.getPkOrderId()); + iMemberServiceApi.changeMemberLevel(saOrderExt, newOrder); } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/vo/AcDirectPushUpgradeListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/vo/AcDirectPushUpgradeListVO.java index 92460b49..630854d8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/vo/AcDirectPushUpgradeListVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/recommend/vo/AcDirectPushUpgradeListVO.java @@ -62,7 +62,7 @@ public class AcDirectPushUpgradeListVO { /** * 升级年月 */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd") + @Excel(name = "升级年月", dateFormat = "yyyy-MM-dd") private String upgradeTime; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRecomUpgradeRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRecomUpgradeRecordMapper.xml index 19215d02..eee2c46a 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRecomUpgradeRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/recommend/AcRecomUpgradeRecordMapper.xml @@ -61,13 +61,13 @@ ) t where #{num} >= rownum - SELECT abc.ACT_NAME, - cmm.member_code, - cmm.member_name, - arur.PK_SETTLE_GRADE, - arur.PK_RECOMMEND_GRADE, + cm.member_code, + cm.member_name, + BG.GRADE_NAME AS pkSettleGrade, + BGG.GRADE_NAME AS pkRecommendGrade, abc.ACT_START_DATE, abc.ACT_END_DATE, arur.CREATION_TIME, @@ -75,26 +75,27 @@ FROM AC_RECOM_UPGRADE_RECORD arur LEFT JOIN AC_BASE_CONFIG abc ON arur.PK_BASE_ID = abc.PK_ID - LEFT JOIN CU_MEMBER cm ON arur.pk_member = cm.PK_PARENT - LEFT JOIN CU_MEMBER cmm ON cm.PK_PARENT = cmm.PK_ID + LEFT JOIN CU_MEMBER cm ON arur.pk_member = cm.PK_ID + LEFT JOIN BD_GRADE BG ON arur.PK_SETTLE_GRADE = BG.PK_ID + LEFT JOIN BD_GRADE BGG ON arur.PK_RECOMMEND_GRADE = BGG.PK_ID WHERE arur.DEL_FLAG = 0 - + AND abc.ACT_NAME = #{actName} - - AND cmm.member_code = #{memberCode} + + AND cm.member_code = #{memberCode} - - AND abc.ACT_START_DATE >= #{startActStartDate} + + AND abc.ACT_START_DATE >= TO_DATE(SUBSTR(#{startActStartDate},1,10), 'YYYY-MM-DD') - - AND abc.ACT_START_DATE <= #{startActEndDate} + + AND abc.ACT_START_DATE <= TO_DATE(SUBSTR(#{startActEndDate},1,10), 'YYYY-MM-DD') - - AND abc.ACT_END_DATE >= #{endActStartDate} + + AND abc.ACT_END_DATE >= TO_DATE(SUBSTR(#{endActStartDate},1,10), 'YYYY-MM-DD') - - AND abc.ACT_END_DATE <= #{endActEndDate} + + AND abc.ACT_END_DATE <= TO_DATE(SUBSTR(#{endActEndDate},1,10), 'YYYY-MM-DD') diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java index f0952f1d..1df60249 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationBusiness.java @@ -256,6 +256,8 @@ public enum EOperationBusiness { AC_DIRECT_PUSH_UPGRADE("直推升级"), + AC_DIRECT_PUSH_UPGRADE_LIST("直推升级数据"), + AC_WARES_RULE_CONFIG("商品赠送"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java index 60a4ed28..967ea00b 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EOperationModule.java @@ -355,6 +355,8 @@ public enum EOperationModule { AC_DIRECT_PUSH_UPGRADE("直推升级"), + AC_DIRECT_PUSH_UPGRADE_LIST("直推升级数据"), + AC_TOURISM_CONFIG("旅游活动"), AC_WARES_RULE_CONFIG("商品赠送"), diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DataMaskingUtil.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DataMaskingUtil.java index 33dfb682..e50a409a 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DataMaskingUtil.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/utils/DataMaskingUtil.java @@ -51,6 +51,13 @@ public class DataMaskingUtil { return result.toString(); } + public static String mask(String input, int keepPrefix, int keepSuffix, int maxLength) { + String str = mask(input, keepPrefix, keepSuffix); + if(str.length() > maxLength) { + str = str.substring(0, maxLength); + } + return str; + } /** * 对字符串进行脱敏处理,可自定义脱敏字符 diff --git a/bd-third/src/main/java/com/hzs/third/job/CuMemberJob.java b/bd-third/src/main/java/com/hzs/third/job/CuMemberJob.java index c551f508..e8fd678d 100644 --- a/bd-third/src/main/java/com/hzs/third/job/CuMemberJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/CuMemberJob.java @@ -67,4 +67,15 @@ public class CuMemberJob { } } + /** + * 清除7天前0元会员 + */ + @XxlJob("clearZeroMember") + public void clearZeroMember() { + R result = iMemberJobServiceApi.clearZeroMember(); + if (!result.isSuccess()) { + log.error("清除7天前0元会员失败,{}", result.getMsg()); + } + } + } diff --git a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java index b8d62d5a..bc0147e1 100644 --- a/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java +++ b/bd-third/src/main/java/com/hzs/third/mqcall/listener/ActivityBackListener.java @@ -51,9 +51,9 @@ public class ActivityBackListener { if (EOrderType.REGISTER_ORDER.getValue() == saOrderExt.getOrderType() || EOrderType.UPGRADE_ORDER.getValue() == saOrderExt.getOrderType()) { // 处理直推升级 - iActivityServiceApi.invokeRecommendUpgrade(AcRecommendUpgradeDTO.builder(). - saOrderExt(saOrderExt). - orderOperateStatus(EOrderOperateStatus.CANCEL) + iActivityServiceApi.invokeRecommendUpgrade(AcRecommendUpgradeDTO.builder() + .saOrderExt(saOrderExt) + .orderOperateStatus(EOrderOperateStatus.CANCEL) .build()); } } diff --git a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java index e08f5dfb..0b57bd98 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java +++ b/bd-third/src/main/java/com/hzs/third/pay/jdpay/dto/JdPayAggregateCreateOrderRequest.java @@ -69,10 +69,12 @@ public class JdPayAggregateCreateOrderRequest implements Serializable { * 同步通知页面url */ private String pageBackUrl; + private String pagebackUrl; /** * 点击完成按钮后跳转页面 */ + private String callbackUrl; private String callBackUrl; /** * 风控信息map-- json串 diff --git a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java index d813651a..fac7d562 100644 --- a/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java +++ b/bd-third/src/main/java/com/hzs/third/pay/service/impl/JdPayServiceImpl.java @@ -242,8 +242,14 @@ public class JdPayServiceImpl implements IJdPayService { // 用户标识(收银台必传) .userId(userId) // 同步通知URL(收银台必传,页面回调地址) + + .pagebackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) .pageBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + + .callbackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) .callBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) + + // 支付回调地址.callBackUrl(jdPayBankProperties.getPageBackUrl() + "?extParam=" + onlinePayment.getExtParam()) // 支付回调地址 .notifyUrl(jdPayBankProperties.getNotifyUrl()) // 交易类型