3
0
Fork 0

## Feat - 收益区域&配送中心

This commit is contained in:
sangelxiu1 2025-08-12 15:50:59 +08:00
parent 975b419cf9
commit a43f571940
6 changed files with 84 additions and 41 deletions

View File

@ -3,10 +3,12 @@ package com.hzs.retail.member.controller.api;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjectUtil;
import com.hzs.common.core.enums.EGrade;
import com.hzs.common.core.web.controller.BaseController;
import com.hzs.common.core.web.domain.AjaxResult;
import com.hzs.common.core.web.page.TableDataInfo;
import com.hzs.common.domain.member.ext.CuMemberExt;
import com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt;
import com.hzs.common.security.utils.SecurityUtils;
import com.hzs.member.base.service.ICuMemberService;
import com.hzs.retail.member.service.ICuMemberRetailRegionService;
@ -58,18 +60,18 @@ public class RetailMemberController extends BaseController {
// }
// /**
// * 获取会员收益区域
// *
// * @return
// */
// @GetMapping("/get-region")
// public AjaxResult getRegion() {
// Long userId = SecurityUtils.getUserId();
// Integer systemType = SecurityUtils.getSystemType();
// Integer pkCountry = SecurityUtils.getPkCountry();
//
// CuMemberRetailRegionExt cuMemberRetailRegionExt = iCuMemberRetailRegionService.getRegionByMember(userId, EGrade.S_VIP.getValue(), systemType);
/**
* 获取会员收益区域
*
* @return
*/
@GetMapping("/get-region")
public AjaxResult getRegion() {
Long userId = SecurityUtils.getUserId();
Integer systemType = SecurityUtils.getSystemType();
Integer pkCountry = SecurityUtils.getPkCountry();
List<CuMemberRetailRegionExt> cuMemberRetailRegionExtList = iCuMemberRetailRegionService.getRegionByMemberList(userId, EGrade.S_VIP.getValue(), systemType);
return AjaxResult.success(cuMemberRetailRegionExtList);
// log.info("cuMemberRetailRegionExt -> {}", JSONUtil.toJsonStr(cuMemberRetailRegionExt));
// if (null != cuMemberRetailRegionExt) {
// // 已自选区域或者已后台指定
@ -103,34 +105,34 @@ public class RetailMemberController extends BaseController {
// .build());
// }
// }
// // 达到条件但是没有选择区域需要弹窗选择区域
// // 验证伞下业绩+自己是否累计30W
//
// /*
// 2025年6月11日 取消其他验证
// // 2025.01.11 调整需求当前会员必须有效至少下过一单
// if (iCuMemberRetailRegionService.getOrderCount(userId, systemType, BoxProductUtil.getBoxProductListBySystemType(systemType)) == 0) {
// return AjaxResult.success(RetailMemberRegionVO.builder()
// .regionStatus(EYesNo.NO.getIntValue())
// .build());
// }
//
// // 2025.02.21 需求2025.03.21 按正式规则执行V5实单非注水盒数达标 月大区30万+小区10万可选择区域
// R<CuMemberRetail> checkResult = iMemberSettleBonusApi.queryValidateBoxOrAchieve(userId);
// if (checkResult.isSuccess()) {
// if (checkResult.getData().getValidateFlag()) {
// return AjaxResult.success(RetailMemberRegionVO.builder()
// .regionStatus(EYesNo.YES.getIntValue())
// .build());
// }
// }
// */
// 达到条件但是没有选择区域需要弹窗选择区域
// 验证伞下业绩+自己是否累计30W
/*
2025年6月11日 取消其他验证
// 2025.01.11 调整需求当前会员必须有效至少下过一单
if (iCuMemberRetailRegionService.getOrderCount(userId, systemType, BoxProductUtil.getBoxProductListBySystemType(systemType)) == 0) {
return AjaxResult.success(RetailMemberRegionVO.builder()
.regionStatus(EYesNo.NO.getIntValue())
.build());
}
// 2025.02.21 需求2025.03.21 按正式规则执行V5实单非注水盒数达标 月大区30万+小区10万可选择区域
R<CuMemberRetail> checkResult = iMemberSettleBonusApi.queryValidateBoxOrAchieve(userId);
if (checkResult.isSuccess()) {
if (checkResult.getData().getValidateFlag()) {
return AjaxResult.success(RetailMemberRegionVO.builder()
.regionStatus(EYesNo.YES.getIntValue())
.build());
}
}
*/
// }
// // 没达到条件不需要显示区域
// 没达到条件不需要显示区域
// return AjaxResult.success(RetailMemberRegionVO.builder()
// .regionStatus(EYesNo.NO.getIntValue())
// .build());
// }
}
//
// /**
// * 设置会员收益区域

View File

@ -25,7 +25,9 @@ public interface CuMemberRetailRegionMapper extends BaseMapper<CuMemberRetailReg
CuMemberRetailRegionExt getRegionByMember(@Param("pkMember") Long pkMember,
@Param("gradeValue") Integer gradeValue,
@Param("systemType") Integer systemType);
List<CuMemberRetailRegionExt> getRegionByMemberList(@Param("pkMember") Long pkMember,
@Param("gradeValue") Integer gradeValue,
@Param("systemType") Integer systemType);
/**
* 插入收益区域
*

View File

@ -24,6 +24,7 @@ public interface ICuMemberRetailRegionService extends IService<CuMemberRetailReg
* @return
*/
CuMemberRetailRegionExt getRegionByMember(Long pkMember, Integer gradeValue, Integer systemType);
List<CuMemberRetailRegionExt> getRegionByMemberList(Long pkMember, Integer gradeValue, Integer systemType);
/**
* 设置会员收益区域

View File

@ -22,6 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.Date;
import java.util.List;
@ -40,6 +41,11 @@ public class CuMemberRetailRegionServiceImpl extends ServiceImpl<CuMemberRetailR
return baseMapper.getRegionByMember(pkMember, gradeValue, systemType);
}
@Override
public List<CuMemberRetailRegionExt> getRegionByMemberList(Long pkMember, Integer gradeValue, Integer systemType) {
return baseMapper.getRegionByMemberList(pkMember, gradeValue, systemType);
}
@Transactional(rollbackFor = Exception.class)
@Override
public String setRegion(RetailMemberRegionParam param) {

View File

@ -243,6 +243,38 @@
nvl( region.num, 0 ) DESC
-->
</select>
<select id="getRegionByMemberList"
resultType="com.hzs.common.domain.retail.member.ext.CuMemberRetailRegionExt">
select cm.member_code,
cm.is_region,
cmrr.*,
bap.name province_val,
bac.name city_val,
bax.name county_val,
cm.IS_ACTIVATE
from cu_member cm
left join cu_member_retail_region cmrr
on cmrr.pk_member = cm.pk_id
and cmrr.del_flag = 0
and cmrr.effective = 0
and cmrr.system_type = #{systemType}
left join bd_grade bg
on bg.pk_id = cm.pk_settle_grade
and bg.del_flag = 0
left join bd_area bap
on bap.pk_id = cmrr.province
and bap.del_flag = 0
left join bd_area bac
on bac.pk_id = cmrr.city
and bac.del_flag = 0
left join bd_area bax
on bax.pk_id = cmrr.county
and bax.del_flag = 0
where cm.del_flag = 0
and cm.pk_id = #{pkMember}
and cmrr.effective = 0
and bg.grade_value >= #{gradeValue}
</select>
<!-- 插入或更新区域选择 -->
<update id="mergeMemberRetailRegion">

View File

@ -272,10 +272,10 @@ public class ApiRetailOrderController {
}
// 校验会员选择区域是否已经被占用
checkStr = this.checkRegionNum(registerParam);
if (null != checkStr) {
return AjaxResult.error(checkStr);
}
// checkStr = this.checkRegionNum(registerParam);
// if (null != checkStr) {
// return AjaxResult.error(checkStr);
// }
// 手机号可以重复不需要进行是否重复校验 -- 已经跳过此处可以不需要当前判断
// // 校验注册关系是否跨团队 -- 2024.12.24 修改为校验手机号必须唯一