From c1ff5562ef00470b136f7eec863ed9384350e9fa Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 6 Oct 2025 12:19:08 +0800 Subject: [PATCH 01/57] =?UTF-8?q?##=20660=E8=B5=A0=E9=80=81=E5=8D=87?= =?UTF-8?q?=E7=BA=A71980=EF=BC=8C=E5=8F=AF=E4=BB=A5=E5=86=8D=E4=B9=B0?= =?UTF-8?q?=E4=B8=80=E4=B8=AA1980=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 149addf1..1c00f011 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -956,6 +956,12 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 如果是1980赠送升级的9900,可以再买一个9900,但是等级不变 checkUpgrade = false; } + } else if (EGrade.MAKER.getValue() == oldGradeDTO.getGradeValue()) { + SaOrderExt gradeOrder = baseMapper.getLastOrderGrade(cuMember.getPkId()); + if (EGrade.YOU_KE.getValue() == gradeOrder.getGradeValue()) { + // 如果是660赠送升级的1980,可以再买一个1980,但是等级不变 + checkUpgrade = false; + } } } if (checkUpgrade) { From 2df7a24e010f3e4bc2bd1839b342f57ef3cd7d95 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 7 Oct 2025 10:39:34 +0800 Subject: [PATCH 02/57] =?UTF-8?q?##=20=E5=AE=89=E7=BD=AE=E5=85=B3=E7=B3=BB?= =?UTF-8?q?=E8=BD=AC=E6=8D=A2=E5=88=A4=E6=96=AD=E4=B8=BAnull=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/EPlaceDept.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPlaceDept.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPlaceDept.java index 79124d4a..d10300ab 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPlaceDept.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPlaceDept.java @@ -40,7 +40,10 @@ public enum EPlaceDept { */ private final String key; - public static String getEPlaceDept(int value) { + public static String getEPlaceDept(Integer value) { + if (null == value) { + return ""; + } for (EPlaceDept ePlaceDept : EPlaceDept.values()) { if (ePlaceDept.value == value) { return ePlaceDept.label; From 444b14b9af7ed03753bcf14c98b6b32b8e8d3710 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 7 Oct 2025 18:14:32 +0800 Subject: [PATCH 03/57] =?UTF-8?q?##=20=E7=82=B9=E8=A7=81=E6=94=B6=E7=9B=8A?= =?UTF-8?q?=E5=A4=8D=E8=B4=AD=E8=80=83=E6=A0=B8=E6=97=B6=E9=97=B4=E5=A4=84?= =?UTF-8?q?=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml index 9a040dde..e093b12c 100644 --- a/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml +++ b/bd-business/bd-business-bonus/src/main/resources/mapper/bonus/detail/CuMemberAssessMapper.xml @@ -527,7 +527,7 @@ on (cma.pk_member = tmp.pk_member and assess_type = 5 and cma.is_examine = 1 and cma.del_flag = 0) when matched then update set cma.assess_status = tmp.assess_status, - cma.start_date = tmp.pay_time + cma.start_date = trunc(tmp.pay_time) when not matched then insert (pk_member, From ed1e9f666d638688816f87acd263f7c1cdefc596 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 9 Oct 2025 11:31:53 +0800 Subject: [PATCH 04/57] =?UTF-8?q?##=20Opt=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=94=B6=E7=9B=8A=E5=8C=BA=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/CuMemberRegionController.java | 2 +- .../member/base/service/ICuMemberService.java | 2 + .../service/impl/CuMemberServiceImpl.java | 68 +++++++++++++++++++ 3 files changed, 71 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberRegionController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberRegionController.java index fbee542e..8b9e133b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberRegionController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/manage/CuMemberRegionController.java @@ -127,7 +127,7 @@ public class CuMemberRegionController extends BaseController { @Log(module = EOperationModule.CU_MEMBER_RETAIL_REGION, business = EOperationBusiness.CU_MEMBER_RETAIL_REGION, method = EOperationMethod.INSERT) @PostMapping("/save") public AjaxResult save(@RequestBody @Valid MemberRegionParam mrrExt) { - return iCuMemberService.setRegion(mrrExt); + return iCuMemberService.setRegionForBack(mrrExt); } 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 eb256a24..2b395017 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 @@ -1011,6 +1011,8 @@ public interface ICuMemberService extends IService { BigDecimal getSmallPV(Long userId); AjaxResult setRegion(MemberRegionParam param); + AjaxResult setRegionForBack(MemberRegionParam param); + CheckRegionVO getRegionForBack(MemberRegionParam param); /** diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 5aca41c6..daa90034 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3528,6 +3528,74 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error(str); } + @Override + public AjaxResult setRegionForBack(MemberRegionParam param) { + Long userId = param.getPkMember(); + Integer systemType = SecurityUtils.getSystemType(); + param.setSystemType(systemType); + Integer pkCountry = SecurityUtils.getPkCountry(); + CheckRegionVO checkRegionVO = this.getRegionForBack(param); + BdArea province = iAreaServiceApi.getArea(param.getProvince()).getData(); + CuMemberRegionExt cuMemberRegionExt = iCuMemberRegionService.getRegionByMember(userId, param.getType()); + if(ObjectUtil.isNotEmpty(cuMemberRegionExt)){ + return AjaxResult.error("已选择区域, 不允许重复添加!"); + } + if (null == province) { + return AjaxResult.error("选择区域省不存在,请重新选择"); + } + if (param.getType() == 1 && checkRegionVO.isProvince()) { + param.setCity(0); + param.setCounty(0); + } else if (param.getType() == 2 && checkRegionVO.isCity()) { + // 校验市是否存在 + if (!param.getCity().equals(0)) { + BdArea city = iAreaServiceApi.getArea(param.getCity()).getData(); + if (null == city) { + return AjaxResult.error("选择区域市不存在,请重新选择"); + } + } + param.setCounty(0); + } else if (param.getType() == 3 && checkRegionVO.isCounty()) { + // 校验区是否存在 + if (!param.getCounty().equals(0)) { + BdArea county = iAreaServiceApi.getArea(param.getCounty()).getData(); + if (null == county) { + return AjaxResult.error("选择区域区不存在,请重新选择"); + } + } + } + if (ObjectUtil.isNotEmpty(cuMemberRegionExt)) { + param.setPkId(cuMemberRegionExt.getPkId()); + } + param.setPkMember(userId); + param.setPkCountry(pkCountry); + param.setSource(ENoticeWebsiteType.MEMBER.getValue()); + param.setSystemType(systemType); + + String str = iCuMemberRegionService.setRegion(param); + if (null == str) { + return AjaxResult.success(); + } + return AjaxResult.error(str); + } + + @Override + public CheckRegionVO getRegionForBack(MemberRegionParam param) { + CheckRegionVO checkRegionVO = new CheckRegionVO(); + checkRegionVO.setData(new CheckRegionVO.CheckRegionWrapper()); + Long userId = param.getPkMember(); + CheckRegionDetailVO regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.PROVINCE.getValue()); + checkRegionVO.setProvince(true); + checkRegionVO.getData().setProvinceData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.CITY.getValue()); + checkRegionVO.setCity(true); + checkRegionVO.getData().setCityData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.COUNTY.getValue()); + checkRegionVO.setCounty(true); + checkRegionVO.getData().setCountyData(regionDetail); + return checkRegionVO; + } + public static int getSmallFlag(CuMemberSettleExt lastMonthData, CuMemberSettleExt yesterdayData, CuMemberSettleExt todayData) { int smallFlag = 1; // left-1, right-2 if (ObjectUtil.isNotEmpty(todayData)) { From 7a967d1d693758c8d5f0eac082c0ae1c7e41e0d4 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 9 Oct 2025 14:09:21 +0800 Subject: [PATCH 05/57] =?UTF-8?q?##=20Opt=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=94=B6=E7=9B=8A=E5=8C=BA=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CuMemberRegionServiceImpl.java | 6 ++++ .../service/impl/CuMemberServiceImpl.java | 25 ++++++++++++++- .../member/base/CuMemberRegionMapper.xml | 6 ++-- .../com/hzs/common/core/enums/EEffective.java | 32 +++++++++++++++++++ 4 files changed, 66 insertions(+), 3 deletions(-) create mode 100644 bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EEffective.java diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegionServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegionServiceImpl.java index 2ec33740..33510253 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegionServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberRegionServiceImpl.java @@ -73,6 +73,7 @@ public class CuMemberRegionServiceImpl extends ServiceImpl i } } } + }else{ + LambdaQueryWrapper cuMemberRegionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getPkMember, SecurityUtils.getUserId()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getDelFlag, EDelFlag.UN_DELETE.getValue()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getEffective, EEffective.EFFECTIVE.getValue()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getSource, ENoticeWebsiteType.ADMIN.getValue()); + int count = iCuMemberRegionService.count(cuMemberRegionLambdaQueryWrapper); + if(count > 0){ + // 后台添加 可查看 + checkRegionVO.setData(new CheckRegionVO.CheckRegionWrapper()); + CheckRegionDetailVO regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.PROVINCE.getValue()); + checkRegionVO.setProvince(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setProvinceData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.CITY.getValue()); + checkRegionVO.setCity(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setCityData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.COUNTY.getValue()); + checkRegionVO.setCounty(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setCountyData(regionDetail); + return checkRegionVO; + } + } // checkRegionVO.setCounty(true); // checkRegionVO.setCity(true); @@ -3569,7 +3592,7 @@ public class CuMemberServiceImpl extends ServiceImpl i } param.setPkMember(userId); param.setPkCountry(pkCountry); - param.setSource(ENoticeWebsiteType.MEMBER.getValue()); + param.setSource(ENoticeWebsiteType.ADMIN.getValue()); param.setSystemType(systemType); String str = iCuMemberRegionService.setRegion(param); diff --git a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegionMapper.xml b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegionMapper.xml index 26994263..71fce0f1 100644 --- a/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegionMapper.xml +++ b/bd-business/bd-business-member/src/main/resources/mapper/member/base/CuMemberRegionMapper.xml @@ -74,7 +74,8 @@ county, creation_time, pk_creator, - REGION_VERTEX_PK_ID + REGION_VERTEX_PK_ID, + source ) select cu_member_retail_region_seq.nextval, #{retailRegion.pkMember}, @@ -83,7 +84,8 @@ #{retailRegion.county}, sysdate, #{retailRegion.pkCreator}, - #{retailRegion.regionVertexPkId} + #{retailRegion.regionVertexPkId}, + #{retailRegion.source} from dual where not exists(select 1 from cu_member_retail_region cmrr diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EEffective.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EEffective.java new file mode 100644 index 00000000..5307494c --- /dev/null +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EEffective.java @@ -0,0 +1,32 @@ +package com.hzs.common.core.enums; + +import com.hzs.common.core.constant.EnumsPrefixConstants; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@AllArgsConstructor +@Getter +public enum EEffective { + + /** + * 生效 + */ + EFFECTIVE(0, "生效"), + + /** + * 失效 + */ + INVALID(1, "失效"), + + ; + + /** + * 实际值 + */ + private final int value; + /** + * 显示标签 + */ + private final String label; + +} From fb5c826dbbfac7b44578e958d8d78da03448d4b8 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 9 Oct 2025 14:28:50 +0800 Subject: [PATCH 06/57] =?UTF-8?q?##=20Opt=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=94=B6=E7=9B=8A=E5=8C=BA=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/api/ApiMemberController.java | 11 +++++++++++ .../member/base/service/ICuMemberService.java | 1 + .../base/service/impl/CuMemberServiceImpl.java | 17 +++++++++++++++++ 3 files changed, 29 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java index fba2328c..311ee624 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/controller/api/ApiMemberController.java @@ -848,6 +848,17 @@ public class ApiMemberController extends BaseController { } + /** + * 获取会员收益区域 + * + * @return + */ + @GetMapping("/get-all-region") + public AjaxResult getAllRegion() { + return AjaxResult.success(iCuMemberService.getAllRegion()); + } + + /** * 获取会员收益区域 * 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 2b395017..de14ce42 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 @@ -1007,6 +1007,7 @@ public interface ICuMemberService extends IService { int countGradeMemberPoint(String memberName, String phone, Integer pkGrade, Integer pkCountry); CheckRegionVO getRegion(); + CheckRegionVO getAllRegion(); List getRegionList(Integer type); BigDecimal getSmallPV(Long userId); diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index 86d4f557..c6cf30ea 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3462,6 +3462,23 @@ public class CuMemberServiceImpl extends ServiceImpl i return checkRegionVO; } + @Override + public CheckRegionVO getAllRegion() { + Long userId = SecurityUtils.getUserId(); + CheckRegionVO checkRegionVO = new CheckRegionVO(); + checkRegionVO.setData(new CheckRegionVO.CheckRegionWrapper()); + CheckRegionDetailVO regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.PROVINCE.getValue()); + checkRegionVO.setProvince(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setProvinceData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.CITY.getValue()); + checkRegionVO.setCity(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setCityData(regionDetail); + regionDetail = baseMapper.getSelectRegionDetail(userId, EAreaType.COUNTY.getValue()); + checkRegionVO.setCounty(ObjectUtil.isNotEmpty(regionDetail)); + checkRegionVO.getData().setCountyData(regionDetail); + return checkRegionVO; + } + @Override public List getRegionList(Integer type) { return baseMapper.getRegionList(SecurityUtils.getUserId(), type); From 904ae0ae574784985c3bb71a0b3930347e5b568c Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Thu, 9 Oct 2025 16:10:09 +0800 Subject: [PATCH 07/57] =?UTF-8?q?##=20Opt=20-=20=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=94=B6=E7=9B=8A=E5=8C=BA=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/service/impl/CuMemberServiceImpl.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java index c6cf30ea..9db6f7e2 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/base/service/impl/CuMemberServiceImpl.java @@ -3577,6 +3577,12 @@ public class CuMemberServiceImpl extends ServiceImpl i CheckRegionVO checkRegionVO = this.getRegionForBack(param); BdArea province = iAreaServiceApi.getArea(param.getProvince()).getData(); CuMemberRegionExt cuMemberRegionExt = iCuMemberRegionService.getRegionByMember(userId, param.getType()); + + LambdaQueryWrapper cuMemberRegionLambdaQueryWrapper = new LambdaQueryWrapper<>(); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getDelFlag, EDelFlag.UN_DELETE.getValue()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getEffective, EEffective.EFFECTIVE.getValue()); + + if(ObjectUtil.isNotEmpty(cuMemberRegionExt)){ return AjaxResult.error("已选择区域, 不允许重复添加!"); } @@ -3584,6 +3590,9 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域省不存在,请重新选择"); } if (param.getType() == 1 && checkRegionVO.isProvince()) { + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getProvince, param.getProvince()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCity, 0); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, 0); param.setCity(0); param.setCounty(0); } else if (param.getType() == 2 && checkRegionVO.isCity()) { @@ -3594,6 +3603,8 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域市不存在,请重新选择"); } } + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCity, param.getCity()); + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, 0); param.setCounty(0); } else if (param.getType() == 3 && checkRegionVO.isCounty()) { // 校验区是否存在 @@ -3603,6 +3614,11 @@ public class CuMemberServiceImpl extends ServiceImpl i return AjaxResult.error("选择区域区不存在,请重新选择"); } } + cuMemberRegionLambdaQueryWrapper.eq(CuMemberRegion::getCounty, param.getCounty()); + } + int count = iCuMemberRegionService.count(cuMemberRegionLambdaQueryWrapper); + if(count > 0){ + return AjaxResult.error("该区域已被选择, 不允许重复添加!"); } if (ObjectUtil.isNotEmpty(cuMemberRegionExt)) { param.setPkId(cuMemberRegionExt.getPkId()); From c6794e834800e0c62fe4b4cc7248e1e30bd65f2a Mon Sep 17 00:00:00 2001 From: woody Date: Sat, 11 Oct 2025 10:36:36 +0800 Subject: [PATCH 08/57] =?UTF-8?q?feat(CuMemberWithdraw):=20=E6=8F=90?= =?UTF-8?q?=E7=8E=B0=E6=94=B9=E5=9B=9E=E7=81=B5=E6=B4=BB=E7=94=A8=E5=B7=A5?= =?UTF-8?q?=EF=BC=8C=E4=B8=8D=E9=9C=80=E6=A0=A1=E9=AA=8C=E9=93=B6=E8=A1=8C?= =?UTF-8?q?=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiCuMemberWithdrawController.java | 12 ++++++------ .../domain/member/account/CuMemberWithdraw.java | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java index 02d4f338..9916b95b 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java @@ -124,11 +124,11 @@ public class ApiCuMemberWithdrawController extends BaseController { return AjaxResult.error("会员不存在,请核对后再操作!"); } //获取银行卡信息 - Long pkBank = cuMemberWithdrawParam.getPkBank(); - CuMemberBankVO memberBank = iCuMemberBankService.selectCuMemberBankById(pkBank); - if (null == memberBank) { - return AjaxResult.error("请绑定银行卡"); - } +// Long pkBank = cuMemberWithdrawParam.getPkBank(); +// CuMemberBankVO memberBank = iCuMemberBankService.selectCuMemberBankById(pkBank); +// if (null == memberBank) { +// return AjaxResult.error("请绑定银行卡"); +// } //校验支付密码 String payPwd = cuMemberLoginExt.getPayPwd(); if (StringUtils.isEmpty(payPwd) || !SecurityUtils.matchesPassword(cuMemberWithdrawParam.getPayPwd(), payPwd)) { @@ -241,7 +241,7 @@ public class ApiCuMemberWithdrawController extends BaseController { CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) .pkAccount(pkAccount) - .pkBank(pkBank) +// .pkBank(pkBank) .remarks(cuMemberWithdrawParam.getRemarks()) .pkRate(currencyDTO.getPkId()) .cashAmount(cashAmount) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java index 2216601b..cff83a1a 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java @@ -55,8 +55,8 @@ public class CuMemberWithdraw extends BusinessEntity { /** * 银行信息 */ - @TableField("PK_BANK") - private Long pkBank; +// @TableField("PK_BANK") +// private Long pkBank; /** * 汇率 From 818c77a05eb69293ad0f85e84e9bcb8910a318ce Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Fri, 10 Oct 2025 15:11:30 +0800 Subject: [PATCH 09/57] =?UTF-8?q?##=20=E4=BC=97=E5=BA=B7=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E5=90=8D=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/common/core/enums/ESysName.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index c739ce20..395b1c24 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -28,6 +28,10 @@ public enum ESysName { * 新零售店铺 */ BL("bl", "新零售店铺BL"), + /** + * 众康 + */ + ZK("zk", "众康ZK"), ; From 459a75edc494e97faf56329631be78fa4f79baee Mon Sep 17 00:00:00 2001 From: woody Date: Sat, 11 Oct 2025 10:39:29 +0800 Subject: [PATCH 10/57] =?UTF-8?q?Revert=20"fix(BdWaresExtend):=20=E5=95=86?= =?UTF-8?q?=E5=93=81=E7=AE=A1=E7=90=86-=E4=B8=8A=E4=B8=8B=E6=9E=B6?= =?UTF-8?q?=E5=8F=8A=E9=A2=84=E8=AE=A1=E5=8F=91=E8=B4=A7=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=8F=AF=E4=BB=A5=E4=BC=A0=E7=A9=BA"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 26053da65e5195d92cde33b0eec44d2d499c4602. --- .../com/hzs/common/domain/sale/wares/BdWaresExtend.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java index 523bb7a6..74687f79 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java @@ -86,13 +86,13 @@ public class BdWaresExtend extends BaseEntity { /** * 上架时间 */ - @TableField(value = "PUT_ON_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) + @TableField("PUT_ON_TIME") private Date putOnTime; /** * 下架时间 */ - @TableField(value = "PUT_OFF_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) + @TableField("PUT_OFF_TIME") private Date putOffTime; /** @@ -134,7 +134,7 @@ public class BdWaresExtend extends BaseEntity { /** * (预计时间)到货时间 */ - @TableField(value = "ARRIVAL_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) + @TableField("ARRIVAL_TIME") private Date arrivalTime; /** From 0c87fa0a03f9168a57ede42cb25901d647164e8c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 11 Oct 2025 13:58:52 +0800 Subject: [PATCH 11/57] =?UTF-8?q?##=20=E5=95=86=E5=93=81=E9=83=A8=E5=88=86?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E5=AD=97=E6=AE=B5=E5=8F=AF=E4=BB=A5=E4=B8=BA?= =?UTF-8?q?=E7=A9=BA=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/common/domain/sale/wares/BdWaresExtend.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java index 74687f79..523bb7a6 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/wares/BdWaresExtend.java @@ -86,13 +86,13 @@ public class BdWaresExtend extends BaseEntity { /** * 上架时间 */ - @TableField("PUT_ON_TIME") + @TableField(value = "PUT_ON_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) private Date putOnTime; /** * 下架时间 */ - @TableField("PUT_OFF_TIME") + @TableField(value = "PUT_OFF_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) private Date putOffTime; /** @@ -134,7 +134,7 @@ public class BdWaresExtend extends BaseEntity { /** * (预计时间)到货时间 */ - @TableField("ARRIVAL_TIME") + @TableField(value = "ARRIVAL_TIME", jdbcType = JdbcType.DATE, updateStrategy = FieldStrategy.IGNORED) private Date arrivalTime; /** From 22b39d92e9f0466c2e934e2e63113d70b99ce76c Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sat, 11 Oct 2025 16:45:57 +0800 Subject: [PATCH 12/57] =?UTF-8?q?##=20=E6=8F=90=E7=8E=B0=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E7=BB=91=E5=AE=9A=E9=93=B6=E8=A1=8C=E5=8D=A1=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/ApiCuMemberWithdrawController.java | 12 ++++++------ .../domain/member/account/CuMemberWithdraw.java | 4 ++-- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java index 9916b95b..02d4f338 100644 --- a/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java +++ b/bd-business/bd-business-member/src/main/java/com/hzs/member/account/controller/api/ApiCuMemberWithdrawController.java @@ -124,11 +124,11 @@ public class ApiCuMemberWithdrawController extends BaseController { return AjaxResult.error("会员不存在,请核对后再操作!"); } //获取银行卡信息 -// Long pkBank = cuMemberWithdrawParam.getPkBank(); -// CuMemberBankVO memberBank = iCuMemberBankService.selectCuMemberBankById(pkBank); -// if (null == memberBank) { -// return AjaxResult.error("请绑定银行卡"); -// } + Long pkBank = cuMemberWithdrawParam.getPkBank(); + CuMemberBankVO memberBank = iCuMemberBankService.selectCuMemberBankById(pkBank); + if (null == memberBank) { + return AjaxResult.error("请绑定银行卡"); + } //校验支付密码 String payPwd = cuMemberLoginExt.getPayPwd(); if (StringUtils.isEmpty(payPwd) || !SecurityUtils.matchesPassword(cuMemberWithdrawParam.getPayPwd(), payPwd)) { @@ -241,7 +241,7 @@ public class ApiCuMemberWithdrawController extends BaseController { CuMemberWithdraw cuMemberWithdraw = CuMemberWithdraw.builder().pkMember(pkMember) .pkAccount(pkAccount) -// .pkBank(pkBank) + .pkBank(pkBank) .remarks(cuMemberWithdrawParam.getRemarks()) .pkRate(currencyDTO.getPkId()) .cashAmount(cashAmount) diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java index cff83a1a..2216601b 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/account/CuMemberWithdraw.java @@ -55,8 +55,8 @@ public class CuMemberWithdraw extends BusinessEntity { /** * 银行信息 */ -// @TableField("PK_BANK") -// private Long pkBank; + @TableField("PK_BANK") + private Long pkBank; /** * 汇率 From 2d6ca14329bd18922a37f2e92b985966e17f2850 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Sun, 12 Oct 2025 10:16:03 +0800 Subject: [PATCH 13/57] =?UTF-8?q?##=20=E5=AE=9A=E6=97=B6=E6=B8=85=E7=90=86?= =?UTF-8?q?=E8=B6=85=E6=9C=9F0=E5=85=83=E4=BC=9A=E5=91=98=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/member/account/CuMemberAccountMapper.xml | 4 ++-- .../main/resources/mapper/member/base/CuMemberMapper.xml | 4 ++-- .../resources/mapper/member/base/CuMemberRegisterMapper.xml | 6 +++--- 3 files changed, 7 insertions(+), 7 deletions(-) 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 98f1cf87..f7b34139 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 @@ -1247,7 +1247,7 @@ update cu_member_account cma set cma.del_flag = 1 where cma.pk_member in - (select so.pk_member + (select cm.pk_id from cu_member cm left join sa_order so on so.pk_member = cm.pk_id @@ -1258,7 +1258,7 @@ and cm.pay_status = 0 and cm.pay_time is null and sysdate - 8 > cm.creation_time - group by so.pk_member + group by cm.pk_id 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 f3bd14ac..944a12da 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 @@ -3251,7 +3251,7 @@ 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 + where cm.pk_id in (select cm.pk_id from cu_member cm left join sa_order so on so.pk_member = cm.pk_id @@ -3262,7 +3262,7 @@ and cm.pay_status = 0 and cm.pay_time is null and sysdate - 8 > cm.creation_time - group by so.pk_member + group by cm.pk_id 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 45f98249..5ed059b3 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 @@ -175,7 +175,7 @@ update cu_member_register cmr set cmr.del_flag = 1 - where cmr.pk_member in (select so.pk_member + where cmr.pk_member in (select cm.pk_id from cu_member cm left join sa_order so on so.pk_member = cm.pk_id @@ -186,8 +186,8 @@ 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); + group by cm.pk_id + having count(so.pk_member) = 0) From 658458783add42f21564f88b416d1ab5afe1f451 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Mon, 13 Oct 2025 11:57:38 +0800 Subject: [PATCH 14/57] =?UTF-8?q?##=20=E6=8E=A83=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E7=AD=89=E7=BA=A7=E5=A4=84=E7=90=86=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AcRepurCouponsRuleConfigServiceImpl.java | 2 -- 1 file changed, 2 deletions(-) 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 96e58b72..b50bed32 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 @@ -672,8 +672,6 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl Date: Mon, 13 Oct 2025 12:02:07 +0800 Subject: [PATCH 15/57] =?UTF-8?q?##=20=E6=8E=A83=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=8E=BB=E6=8E=89=E6=AF=8F=E6=9C=88=E4=B8=80=E6=AC=A1=E7=9A=84?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcRepurCouponsRuleConfigServiceImpl.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) 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 b50bed32..b580c53d 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 @@ -612,14 +612,14 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpllambdaQuery() - .eq(AcRecomUpgradeRecord::getPkBaseId, pkBaseId) - .eq(AcRecomUpgradeRecord::getPkMember, pkMember) - .eq(AcRecomUpgradeRecord::getUpgradeTime, upgradeTime) - ) > 0) { - return; - } +// // 校验推荐人本月是否已经触发过 +// if (iAcRecomUpgradeRecordService.count(Wrappers.lambdaQuery() +// .eq(AcRecomUpgradeRecord::getPkBaseId, pkBaseId) +// .eq(AcRecomUpgradeRecord::getPkMember, pkMember) +// .eq(AcRecomUpgradeRecord::getUpgradeTime, upgradeTime) +// ) > 0) { +// return; +// } // 推荐人等级ID CuMember referenceMember = iMemberServiceApi.getMember(pkMember).getData(); From 2f559ae37a72032d7277ee36296ac23d65ccd027 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 14 Oct 2025 09:31:42 +0800 Subject: [PATCH 16/57] =?UTF-8?q?##=20=E5=9B=9E=E9=80=80=E6=8E=A83?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=8E=BB=E6=8E=89=E6=AF=8F=E6=9C=88=E4=B8=80?= =?UTF-8?q?=E6=AC=A1=E7=9A=84=E6=A0=A1=E9=AA=8C=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcRepurCouponsRuleConfigServiceImpl.java | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) 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 b580c53d..1cd79f86 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 @@ -612,14 +612,14 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpllambdaQuery() -// .eq(AcRecomUpgradeRecord::getPkBaseId, pkBaseId) -// .eq(AcRecomUpgradeRecord::getPkMember, pkMember) -// .eq(AcRecomUpgradeRecord::getUpgradeTime, upgradeTime) -// ) > 0) { -// return; -// } + // 校验推荐人本月是否已经触发过 + if (iAcRecomUpgradeRecordService.count(Wrappers.lambdaQuery() + .eq(AcRecomUpgradeRecord::getPkBaseId, pkBaseId) + .eq(AcRecomUpgradeRecord::getPkMember, pkMember) + .eq(AcRecomUpgradeRecord::getUpgradeTime, upgradeTime) + ) > 0) { + return; + } // 推荐人等级ID CuMember referenceMember = iMemberServiceApi.getMember(pkMember).getData(); @@ -653,6 +653,7 @@ public class AcRepurCouponsRuleConfigServiceImpl extends ServiceImpl 0) { startTime = monthFirst; } + // TODO 需要校验,只处理上次升级之前的订单 List recomOrderList = iAcRecomUpgradeRecordService.listRecomOrder(pkMember, upgradeRuleConfig.getPkRecommendGrade(), upgradeRuleConfig.getRecommendNumber(), startTime, endTime); // 校验推荐人是否可以升级 if (CollectionUtil.isEmpty(recomOrderList) From e46bc82dd627e4e386e2c6f9055831f192fe1e60 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 13 Oct 2025 15:35:31 +0800 Subject: [PATCH 17/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD=E6=96=B0=E5=A2=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/AcAddUpgradeConfigController.java | 115 ++++++++++ .../manage/AcAddUpgradeRecordController.java | 20 ++ .../param/AcAddUpgradeConfigParam.java | 20 ++ .../param/AcAddUpgradeDetailParam.java | 131 ++++++++++++ .../param/AcAddUpgradeListParam.java | 42 ++++ .../controller/param/AcAddUpgradeParam.java | 68 ++++++ .../param/AcAddUpgradeRuleConfigParam.java | 43 ++++ .../add/mapper/AcAddUpgradeConfigMapper.java | 28 +++ .../add/mapper/AcAddUpgradeRecordMapper.java | 16 ++ .../service/IAcAddUpgradeConfigService.java | 27 +++ .../service/IAcAddUpgradeRecordService.java | 16 ++ .../impl/AcAddUpgradeConfigServiceImpl.java | 198 ++++++++++++++++++ .../impl/AcAddUpgradeRecordServiceImpl.java | 20 ++ .../activity/add/vo/AcAddUpgradeConfig.java | 74 +++++++ .../activity/add/vo/AcAddUpgradeListVO.java | 71 +++++++ .../activity/add/vo/AcAddUpgradeRecord.java | 72 +++++++ .../AcDeclarationGiftConfigController.java | 113 ++++++++++ .../AcDeclarationGiftRecordController.java | 20 ++ .../mapper/AcDeclarationGiftConfigMapper.java | 16 ++ .../mapper/AcDeclarationGiftRecordMapper.java | 16 ++ .../IAcDeclarationGiftConfigService.java | 16 ++ .../IAcDeclarationGiftRecordService.java | 16 ++ .../AcDeclarationGiftConfigServiceImpl.java | 20 ++ .../AcDeclarationGiftRecordServiceImpl.java | 20 ++ .../vo/AcDeclarationGiftConfig.java | 76 +++++++ .../vo/AcDeclarationGiftRecord.java | 64 ++++++ .../manage/params/ProductParams.java | 5 + .../activity/add/AcAddUpgradeConfigMapper.xml | 90 ++++++++ .../activity/add/AcAddUpgradeRecordMapper.xml | 33 +++ .../AcDeclarationGiftConfigMapper.xml | 34 +++ .../AcDeclarationGiftRecordMapper.xml | 32 +++ .../recommend/AcRecomUpgradeRecordMapper.xml | 1 - .../com/hzs/common/core/enums/EActType.java | 10 + .../common/core/enums/EOperationBusiness.java | 20 +- .../common/core/enums/EOperationModule.java | 22 ++ .../domain/sale/product/BdProductExtend.java | 6 + .../src/test/java/com/CodeGenerator.java | 6 +- 37 files changed, 1591 insertions(+), 6 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeRecordController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeListVO.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java create mode 100644 bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml create mode 100644 bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml create mode 100644 bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml create mode 100644 bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java new file mode 100644 index 00000000..50b28f16 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java @@ -0,0 +1,115 @@ +package com.hzs.activity.add.controller.manage; + + +import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; +import com.hzs.activity.add.controller.param.AcAddUpgradeParam; +import com.hzs.activity.add.service.IAcAddUpgradeConfigService; +import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.activity.base.param.QueryActivityParam; +import com.hzs.activity.base.service.IActivityService; +import com.hzs.activity.base.vo.BaseConfigVo; +import com.hzs.activity.recommend.param.AcDirectPushUpgradeListParam; +import com.hzs.activity.recommend.vo.AcDirectPushUpgradeListVO; +import com.hzs.common.core.annotation.Log; +import com.hzs.common.core.enums.EActType; +import com.hzs.common.core.enums.EOperationBusiness; +import com.hzs.common.core.enums.EOperationMethod; +import com.hzs.common.core.enums.EOperationModule; +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.security.service.UserTokenService; +import com.hzs.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +import static com.hzs.common.core.utils.PageUtils.startPage; + +/** + *

+ * 加购升级配置表 前端控制器 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@RestController +@RequestMapping("/manage/addUpgradeConfig") +public class AcAddUpgradeConfigController extends BaseController { + + @Autowired + private UserTokenService userTokenService; + + @Autowired + private IAcAddUpgradeConfigService iAcAddUpgradeConfigService; + + @Autowired + private IActivityService iActivityService; + /** + * 加购升级活动操作 + * + * @param acAddUpgradeParam 加购升级活动 + * @return AjaxResult + */ + @Log(module = EOperationModule.AC_ADD_UPGRADE_SUBMIT, business = EOperationBusiness.AC_ADD_UPGRADE_SUBMIT, method = EOperationMethod.INSERT, remark = "加购活动") + @PostMapping("/submit") + public AjaxResult onLinePetition(@RequestBody AcAddUpgradeParam acAddUpgradeParam) { + acAddUpgradeParam.setPkCountry(SecurityUtils.getPkCountry()); + acAddUpgradeParam.setPkMember(SecurityUtils.getUserId()); + acAddUpgradeParam.setLoginUser(userTokenService.getLoginUser()); + String str = iAcAddUpgradeConfigService.onLinePetition(acAddUpgradeParam); + if (str != null) { + return AjaxResult.error(str); + } + return AjaxResult.success(); + } + + /** + * 加购升级活动操作 + * + * @param pkId 加购升级活动 + * @return AjaxResult + */ + @Log(module = EOperationModule.AC_ADD_UPGRADE_DETAIL, business = EOperationBusiness.AC_ADD_UPGRADE_DETAIL, method = EOperationMethod.SELECT, remark = "加购升级详情") + @GetMapping("/get-detail") + public AjaxResult getDetail(Integer pkId) { + return iAcAddUpgradeConfigService.getDetail(pkId); + } + + /** + * 加购升级导出 + */ + @Log(module = EOperationModule.AC_ADD_UPGRADE_EXPORT, business = EOperationBusiness.AC_ADD_UPGRADE_DETAIL, method = EOperationMethod.EXPORT, remark = "加购升级导出") + @PostMapping("/export") + public void export(QueryActivityParam queryActivityParam, HttpServletResponse response) { + queryActivityParam.setActType(EActType.ADD_UPGRADE.getValue()); + queryActivityParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = iActivityService.activityList(queryActivityParam); + ExcelUtil util = new ExcelUtil<>(BaseConfigVo.class); + util.exportExcel(response, resultList, "加购升级导出"); + } + /** + * + * @param param + * @return + */ + @Log(module = EOperationModule.AC_ADD_UPGRADE_LIST, business = EOperationBusiness.AC_ADD_UPGRADE_LIST, method = EOperationMethod.SELECT) + @GetMapping("/list") + public TableDataInfo directPushUpgradeList(AcAddUpgradeListParam param) { + startPage(); + return getDataTable(iAcAddUpgradeConfigService.queryList(param)); + } + + @Log(module = EOperationModule.AC_ADD_UPGRADE_LIST_EXPORT, business = EOperationBusiness.AC_ADD_UPGRADE_LIST_EXPORT, method = EOperationMethod.SELECT) + @PostMapping("/listExport") + public void export(AcAddUpgradeListParam param, HttpServletResponse response) { + startPage(); + List list = iAcAddUpgradeConfigService.queryList(param); + ExcelUtil util = new ExcelUtil<>(AcAddUpgradeListVO.class); + util.exportExcel(response, list, "加购升级数据导出"); + } +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeRecordController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeRecordController.java new file mode 100644 index 00000000..13e40f0e --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeRecordController.java @@ -0,0 +1,20 @@ +package com.hzs.activity.add.controller.manage; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 加购活动明细表 前端控制器 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@RestController +@RequestMapping("/manage/addUpgradeRecord") +public class AcAddUpgradeRecordController { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java new file mode 100644 index 00000000..a623ff9e --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java @@ -0,0 +1,20 @@ +package com.hzs.activity.add.controller.param; + +import com.hzs.activity.base.param.WaresRuleConfigParam; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcAddUpgradeConfigParam { + /** + * 订单类型 + */ + private Integer orderType; + + private List acAddUpgradeRuleConfigParams; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java new file mode 100644 index 00000000..4c3312e6 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java @@ -0,0 +1,131 @@ +package com.hzs.activity.add.controller.param; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.activity.base.param.AcDrawRuleConfigParam; +import com.hzs.activity.base.param.ConsumeRuleConfigParam; +import com.hzs.activity.base.param.WaresConfigParam; +import com.hzs.activity.draw.vo.AcDrawGiftRuleConfigVo; +import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import com.hzs.common.domain.activity.base.AcPickUpConfig; +import com.hzs.common.domain.activity.consume.ext.AcConsumeShieldConfigExt; +import com.hzs.common.domain.activity.consume.ext.AcMemberConsumeRuleExt; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcAddUpgradeDetailParam implements Serializable { + + private static final long serialVersionUID = 5874438017657659289L; + /** + * 活动主键 + */ + private Long pkId; + /** + * 基础主键 + */ + private Long pkBaseId; + + /** + * 业务单号 + */ + private String businessCode; + + /** + * 活动名称 + */ + private String actName; + + /** + * 活动类型 + */ + private Integer actType; + + /** + * 活动说明 + */ + private String actExplain; + + /** + * 活动开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date actStartDate; + + /** + * 活动结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date actEndDate; + + + /** + * 显示开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date disStartDate; + + /** + * 显示结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date disEndDate; + /** + * 活动封面图 + */ + private String actCover; + + /** + * 国家 + */ + private Integer pkCountry; + + /** + * 会员ID + */ + private Long pkCreator; + + /** + * 活动模块 + */ + private List atcModuleList; + + + /** + * 活动模块 + */ + private Integer atcModule; + + + /** + * 加购升级参数 + */ + private List acAddUpgradeConfigParams; + + /** + * 目标群体配置列表 + */ + private List goalMemberConfigList; + + /** + * 是否强制弹框 0 是 1 否 + */ + private Integer isStrongAlert; + + /** + * 提货天数 + */ + private Integer deliveryDays; + + /** + * 时间参数 + */ + private String startDate; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java new file mode 100644 index 00000000..19ec48ba --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java @@ -0,0 +1,42 @@ +package com.hzs.activity.add.controller.param; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcAddUpgradeListParam { + + /** + * 活动名称 + */ + private String actName; + + /** + * 会员编号 + */ + private String memberCode; + + + /** + * 开始活动开始时间 + */ + private String startActStartDate; + + /** + * 开始活动结束时间 + */ + private String startActEndDate; + + /** + * 结束活动开始时间 + */ + private String endActStartDate; + + /** + * 结束活动结束时间 + */ + private String endActEndDate; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java new file mode 100644 index 00000000..8380fa18 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java @@ -0,0 +1,68 @@ +package com.hzs.activity.add.controller.param; + + +import com.hzs.activity.base.param.ActivityParam; +import com.hzs.activity.recommend.vo.AcRecommendSharVO; +import com.hzs.activity.recommend.vo.AcRecommendUpgradeVO; +import com.hzs.activity.recommend.vo.AcRepurchaseCouponsShowVO; +import com.hzs.common.core.web.domain.BaseApprovalEntity; +import com.hzs.common.domain.activity.base.AcBaseAuthority; +import com.hzs.system.sys.dto.LoginUser; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.List; + +/** + * 加购升级参数 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcAddUpgradeParam implements Serializable { + /** + * 活动基本配置主键 + */ + private Long pkBaseId; + + /** + * 操作类型(1=新增,2=修改,3=删除) + */ + private Integer controlType; + + /** + * 国家 + */ + private Integer pkCountry; + + /** + * 会员ID + */ + private Long pkMember; + + + /** + * 登录用户信息 + */ + private LoginUser loginUser; + + /** + * 基本信息 + */ + private ActivityParam activityParam; + + /** + * 加购升级信息 + */ + private List acAddUpgradeConfigParam; + + /** + * 权限配置列表 + */ + private List authorityList; + +} + diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java new file mode 100644 index 00000000..c12f8178 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java @@ -0,0 +1,43 @@ +package com.hzs.activity.add.controller.param; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcAddUpgradeRuleConfigParam { + /** + * 订单类型 来源于枚举:所属专区 + */ + private Integer orderType; + + /** + * 商品主键 + */ + private Integer pkWares; + + /** + * 数量 + */ + private Integer quantity; + + /** + * 原等级 + */ + private Integer originalLevel; + /** + * 原等级实际值 + */ + private String originalLevelVal; + /** + * 升级等级 + */ + private Integer upgradeLevel; + /** + * 升级等级实际值 + */ + private String upgradeLevelVal; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java new file mode 100644 index 00000000..514b9bf1 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -0,0 +1,28 @@ +package com.hzs.activity.add.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; +import com.hzs.activity.add.controller.param.AcAddUpgradeRuleConfigParam; +import com.hzs.activity.add.vo.AcAddUpgradeConfig; +import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + *

+ * 加购升级配置表 Mapper 接口 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface AcAddUpgradeConfigMapper extends BaseMapper { + + List selectListByOrderType(@Param("pkId") Integer pkId, + @Param("orderType") Integer orderType); + + List selectOrderTypeByBaseId(@Param("pkId") Integer pkId); + + List queryList(AcAddUpgradeListParam param); +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java new file mode 100644 index 00000000..d27af084 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java @@ -0,0 +1,16 @@ +package com.hzs.activity.add.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.add.vo.AcAddUpgradeRecord; + +/** + *

+ * 加购活动明细表 Mapper 接口 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface AcAddUpgradeRecordMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java new file mode 100644 index 00000000..b5f4c352 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java @@ -0,0 +1,27 @@ +package com.hzs.activity.add.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; +import com.hzs.activity.add.controller.param.AcAddUpgradeParam; +import com.hzs.activity.add.vo.AcAddUpgradeConfig; +import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.common.core.web.domain.AjaxResult; + +import java.util.List; + +/** + *

+ * 加购升级配置表 服务类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface IAcAddUpgradeConfigService extends IService { + + String onLinePetition(AcAddUpgradeParam acAddUpgradeParam); + + AjaxResult getDetail(Integer pkId); + + List queryList(AcAddUpgradeListParam param); +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java new file mode 100644 index 00000000..b6a5fab2 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java @@ -0,0 +1,16 @@ +package com.hzs.activity.add.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.add.vo.AcAddUpgradeRecord; + +/** + *

+ * 加购活动明细表 服务类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface IAcAddUpgradeRecordService extends IService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java new file mode 100644 index 00000000..4fba7174 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -0,0 +1,198 @@ +package com.hzs.activity.add.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.add.controller.param.*; +import com.hzs.activity.add.mapper.AcAddUpgradeConfigMapper; +import com.hzs.activity.add.service.IAcAddUpgradeConfigService; +import com.hzs.activity.add.vo.AcAddUpgradeConfig; +import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.activity.base.param.ActivityParam; +import com.hzs.activity.base.service.IAcBaseConfigService; +import com.hzs.activity.base.service.IAcGoalMemberConfigService; +import com.hzs.activity.base.service.IActivityService; +import com.hzs.common.core.annotation.Transaction; +import com.hzs.common.core.enums.EActType; +import com.hzs.common.core.enums.EApprovalBusiness; +import com.hzs.common.core.enums.EAwardsLevel; +import com.hzs.common.core.enums.EControlType; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.activity.base.AcBaseConfig; +import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import com.hzs.common.domain.activity.wares.AcWaresRuleConfig; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.sale.wares.service.IBdWaresAwardsService; +import com.hzs.system.sys.dto.LoginUser; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.security.auth.callback.Callback; +import java.util.*; +import java.util.stream.Collectors; + +/** + *

+ * 加购升级配置表 服务实现类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Service +@Slf4j +public class AcAddUpgradeConfigServiceImpl extends ServiceImpl implements IAcAddUpgradeConfigService { + + @Autowired + private IActivityService iActivityService; + + @Autowired + private IAcBaseConfigService baseConfigService; + + @Autowired + private IAcGoalMemberConfigService iAcGoalMemberConfigService; + + + @Override + @Transactional(rollbackFor = Exception.class) + public String onLinePetition(AcAddUpgradeParam acAddUpgradeParam) { + log.info("加购升级入参{}", acAddUpgradeParam); + EApprovalBusiness approvalBusiness = null; + if (acAddUpgradeParam.getControlType() == EControlType.SAVE.getValue()) { + approvalBusiness = EApprovalBusiness.PRODUCT_GIFT_ADD; + } else if (acAddUpgradeParam.getControlType() == EControlType.MODIFY.getValue()) { + approvalBusiness = EApprovalBusiness.PRODUCT_GIFT_UPDATE; + } else if (acAddUpgradeParam.getControlType() == EControlType.DELETE.getValue()) { + approvalBusiness = EApprovalBusiness.PRODUCT_GIFT_REMOVE; + } + + LoginUser loginUser = acAddUpgradeParam.getLoginUser(); + if (loginUser == null) { + log.error("登录用户信息为空"); + return "登录用户信息为空"; + } + if (acAddUpgradeParam.getControlType().equals(EControlType.SAVE.getValue())) { + ActivityParam activityParam = acAddUpgradeParam.getActivityParam(); + activityParam.setPkCountry(loginUser.getDataCountry()); + activityParam.setPkCreator(loginUser.getUserId()); + activityParam.setActType(EActType.ADD_UPGRADE.getValue()); + // 新增活动基本配置 + AcBaseConfig acBaseConfig = iActivityService.saveBaseConfig(activityParam); + // 新增活动目标权限 + iActivityService.saveGoalMemberConfig(activityParam, acBaseConfig); + // 新增加购活动配置 + saveAddUpgradeConfig(acAddUpgradeParam.getAcAddUpgradeConfigParam(),acBaseConfig); + } else if (acAddUpgradeParam.getControlType().equals(EControlType.MODIFY.getValue())) { + ActivityParam activityParam = acAddUpgradeParam.getActivityParam(); + activityParam.setPkCountry(loginUser.getDataCountry()); + activityParam.setPkCreator(loginUser.getUserId()); + activityParam.setActType(EActType.ADD_UPGRADE.getValue()); + updateAddUpgradeConfig(activityParam, acAddUpgradeParam.getAcAddUpgradeConfigParam()); + } else if (acAddUpgradeParam.getControlType().equals(EControlType.DELETE.getValue())) { + ActivityParam activityParam = acAddUpgradeParam.getActivityParam(); + Long pkId = activityParam.getPkId(); + removeAddUpgradeConfig(pkId); + } + //日志 + ActivityParam activityParam = acAddUpgradeParam.getActivityParam(); + activityParam.setPkCountry(SecurityUtils.getPkCountry()); + activityParam.setPkCreator(SecurityUtils.getUserId()); + activityParam.setActType(EActType.PRODUCT_GIFT.getValue()); + activityParam.setBusinessCode(acAddUpgradeParam.getActivityParam().getBusinessCode()); + iActivityService.createBaseConfigLog(activityParam, new StringBuffer(), null, approvalBusiness.getValue(), false); + return null; + } + + @Override + public AjaxResult getDetail(Integer pkId) { + AcBaseConfig baseConfig = baseConfigService.getById(pkId); + AcAddUpgradeDetailParam activityParam = BeanUtil.copyProperties(baseConfig, AcAddUpgradeDetailParam.class); + + List orderTypes = baseMapper.selectOrderTypeByBaseId(pkId); + List list = new ArrayList<>(); + // 组装加购活动详情 + for (Integer orderType : orderTypes) { + // 根据活动类型查询活动类型集合 + List acAddUpgradeRuleConfigParams = baseMapper.selectListByOrderType(pkId, orderType); + list.add(new AcAddUpgradeConfigParam(orderType, acAddUpgradeRuleConfigParams)); + } + + List goalMemberConfigList = iAcGoalMemberConfigService.list(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, baseConfig.getPkId())); + activityParam.setAcAddUpgradeConfigParams(list); + activityParam.setGoalMemberConfigList(goalMemberConfigList); + activityParam.setPkBaseId(baseConfig.getPkId()); + return AjaxResult.success(activityParam); + } + + @Override + public List queryList(AcAddUpgradeListParam param) { + return baseMapper.queryList(param); + } + + private void removeAddUpgradeConfig(Long pkId) { + // 删除活动基本配置 + baseConfigService.removeById(pkId); + // 删除加购活动配置 + baseMapper.delete(new LambdaQueryWrapper() + .eq(AcAddUpgradeConfig::getPkBaseId, pkId)); + // 删除用户权限配置 + iAcGoalMemberConfigService.remove(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, pkId)); + } + + private void updateAddUpgradeConfig(ActivityParam activityParam, List acAddUpgradeConfigParam) { + { + Long pkId = activityParam.getPkId(); + // 查询基础信息 + AcBaseConfig baseConfig = BeanUtil.copyProperties(activityParam, AcBaseConfig.class); + baseConfig.setPkId(activityParam.getPkId()); + baseConfigService.updateById(baseConfig); + + // 删除活动配置 + baseMapper.delete(new LambdaQueryWrapper() + .eq(AcAddUpgradeConfig::getPkBaseId, pkId)); + // 删除用户权限配置 + iAcGoalMemberConfigService.remove(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, pkId)); + // 添加加购活动配置 + saveAddUpgradeConfig(acAddUpgradeConfigParam,baseConfig); + // 添加用户权限配置 + iActivityService.saveGoalMemberConfig(activityParam, baseConfig); + } + } + + private void saveAddUpgradeConfig(List acAddUpgradeConfigParam,AcBaseConfig acBaseConfig) { + acAddUpgradeConfigParam.forEach(item -> { + List acAddUpgradeRuleConfigParams = item.getAcAddUpgradeRuleConfigParams(); + if (acAddUpgradeRuleConfigParams != null) { + acAddUpgradeRuleConfigParams.forEach(ac -> { + // 校验升级等级是否小于原等级 + if (ac.getUpgradeLevel() < ac.getOriginalLevel()) { + throw new IllegalArgumentException( + String.format("原等级 [%d] 大于升级等级 [%d],不允许插入!", + ac.getOriginalLevel(), ac.getUpgradeLevel()) + ); + } + AcAddUpgradeConfig build = AcAddUpgradeConfig.builder() + .pkBaseId(acBaseConfig.getPkId()) + .orderType(item.getOrderType()) + .pkWares(ac.getPkWares()) + .quantity(ac.getQuantity()) + .originalLevel(ac.getOriginalLevel()) + .upgradeLevel(ac.getUpgradeLevel()) + .build(); + build.setPkCountry(acBaseConfig.getPkCountry()); + build.setCreationTime(acBaseConfig.getCreationTime()); + build.setPkCreator(acBaseConfig.getPkCreator()); + build.setDelFlag(0); + baseMapper.insert(build); + }); + } + + }); + } +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java new file mode 100644 index 00000000..449eea07 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java @@ -0,0 +1,20 @@ +package com.hzs.activity.add.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.add.mapper.AcAddUpgradeRecordMapper; +import com.hzs.activity.add.service.IAcAddUpgradeRecordService; +import com.hzs.activity.add.vo.AcAddUpgradeRecord; +import org.springframework.stereotype.Service; + +/** + *

+ * 加购活动明细表 服务实现类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Service +public class AcAddUpgradeRecordServiceImpl extends ServiceImpl implements IAcAddUpgradeRecordService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java new file mode 100644 index 00000000..f05e3355 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java @@ -0,0 +1,74 @@ +package com.hzs.activity.add.vo; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 加购升级配置表 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("AC_ADD_UPGRADE_CONFIG") +@KeySequence("AC_ADD_UPGRADE_CONFIG_SEQ") +@Builder +public class AcAddUpgradeConfig extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId("PK_ID") + private Long pkId; + + /** + * 活动基本配置主键 + */ + @TableField("PK_BASE_ID") + private Long pkBaseId; + + /** + * 订单类型 来源于枚举:所属专区 + */ + @TableField("ORDER_TYPE") + private Integer orderType; + + /** + * 商品主键 + */ + @TableField("PK_WARES") + private Integer pkWares; + + /** + * 数量 + */ + @TableField("QUANTITY") + private Integer quantity; + + /** + * 原等级 + */ + @TableField("ORIGINAL_LEVEL") + private Integer originalLevel; + + /** + * 升级等级 + */ + @TableField("UPGRADE_LEVEL") + private Integer upgradeLevel; + + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeListVO.java new file mode 100644 index 00000000..4a6ac102 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeListVO.java @@ -0,0 +1,71 @@ +package com.hzs.activity.add.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 AcAddUpgradeListVO { + + /** + * 活动名称 + */ + @Excel(name = "活动名称") + private String actName; + /** + * 会员编号 + */ + @Excel(name = "会员编号") + private String memberCode; + /** + * 会员名称 + */ + @Excel(name = "会员名称") + private String memberName; + + /** + * 原等级实际值 + */ + @Excel(name = "原等级") + private String originalLevelVal; + + /** + * 升级等级实际值 + */ + @Excel(name = "新等级") + private String upgradeLevelVal; + + /** + * 活动开始时间 + */ + @Excel(name = "活动开始时间", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date actStartDate; + + /** + * 活动结束时间 + */ + @Excel(name = "活动结束时间", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date actEndDate; + + /** + * 创建时间 + */ + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date creationTime; + + /** + * 升级年月 + */ + @Excel(name = "升级年月", dateFormat = "yyyy-MM-dd") + private String upgradeTime; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java new file mode 100644 index 00000000..bfc0848e --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java @@ -0,0 +1,72 @@ +package com.hzs.activity.add.vo; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 加购活动明细表 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("AC_ADD_UPGRADE_RECORD") +@KeySequence("AC_ADD_UPGRADE_RECORD_SEQ") +public class AcAddUpgradeRecord extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId("PK_ID") + private Long pkId; + + /** + * 活动基本配置主键 + */ + @TableField("PK_BASE_ID") + private Long pkBaseId; + + /** + * 规则主键 + */ + @TableField("PK_RULE_ID") + private Long pkRuleId; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 原等级 + */ + @TableField("PK_ORIGIN_GRADE") + private Integer pkOriginGrade; + + /** + * 升级后等级 + */ + @TableField("PK_UPGRADE_GRADE") + private Integer pkUpgradeGrade; + + /** + * 订单ID + */ + @TableField("PK_ORDER_ID") + private Long pkOrderId; + + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java new file mode 100644 index 00000000..36832f65 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java @@ -0,0 +1,113 @@ +//package com.hzs.activity.declaration.controller.manage; +// +// +//import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; +//import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; +//import com.hzs.activity.add.controller.param.AcAddUpgradeParam; +//import com.hzs.activity.add.vo.AcAddUpgradeListVO; +//import com.hzs.activity.base.param.QueryActivityParam; +//import com.hzs.activity.base.service.IActivityService; +//import com.hzs.activity.base.vo.BaseConfigVo; +//import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; +//import com.hzs.common.core.annotation.Log; +//import com.hzs.common.core.enums.EActType; +//import com.hzs.common.core.enums.EOperationBusiness; +//import com.hzs.common.core.enums.EOperationMethod; +//import com.hzs.common.core.enums.EOperationModule; +//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.security.service.UserTokenService; +//import com.hzs.common.security.utils.SecurityUtils; +//import org.springframework.beans.factory.annotation.Autowired; +//import org.springframework.web.bind.annotation.*; +// +//import javax.servlet.http.HttpServletResponse; +//import java.util.List; +// +///** +// *

+// * 前端控制器 +// *

+// * +// * @author bd +// * @since 2025-10-13 +// */ +//@RestController +//@RequestMapping("/manage/acDeclarationConfig") +//public class AcDeclarationGiftConfigController extends BaseController { +// +// @Autowired +// private UserTokenService userTokenService; +// +// @Autowired +// private IActivityService iActivityService; +// +// @Autowired +// private IAcDeclarationGiftConfigService iAcDeclarationGiftConfigService; +// /** +// * +// * 报单赠送活动操作 +// * @param acAddUpgradeParam 报单赠送活动 +// * @return AjaxResult +// */ +// @Log(module = EOperationModule.AC_DECLARATION_GIFT_SUBMIT, business = EOperationBusiness.AC_DECLARATION_GIFT_SUBMIT, method = EOperationMethod.INSERT, remark = "加购活动") +// @PostMapping("/submit") +// public AjaxResult onLinePetition(@RequestBody AcAddUpgradeParam acAddUpgradeParam) { +// acAddUpgradeParam.setPkCountry(SecurityUtils.getPkCountry()); +// acAddUpgradeParam.setPkMember(SecurityUtils.getUserId()); +// acAddUpgradeParam.setLoginUser(userTokenService.getLoginUser()); +// String str = iAcDeclarationGiftConfigService.onLinePetition(acAddUpgradeParam); +// if (str != null) { +// return AjaxResult.error(str); +// } +// return AjaxResult.success(); +// } +// +// /** +// * 报单赠送活动详情 +// * +// * @param pkId 报单赠送活动详情 +// * @return AjaxResult +// */ +// @Log(module = EOperationModule.AC_DECLARATION_GIFT_DETAIL, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.SELECT, remark = "加购升级详情") +// @GetMapping("/get-detail") +// public AjaxResult getDetail(Integer pkId) { +// return iAcDeclarationGiftConfigService.getDetail(pkId); +// } +// +// /** +// * 报单赠送导出 +// */ +// @Log(module = EOperationModule.AC_DECLARATION_GIFT_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.EXPORT, remark = "加购升级导出") +// @PostMapping("/export") +// public void export(QueryActivityParam queryActivityParam, HttpServletResponse response) { +// queryActivityParam.setActType(EActType.DECLARATION_GIFT.getValue()); +// queryActivityParam.setPkCountry(SecurityUtils.getPkCountry()); +// List resultList = iActivityService.activityList(queryActivityParam); +// ExcelUtil util = new ExcelUtil<>(BaseConfigVo.class); +// util.exportExcel(response, resultList, "报单赠送导出"); +// } +// +// /** +// * +// * @param param +// * @return +// */ +// @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST, method = EOperationMethod.SELECT) +// @GetMapping("/list") +// public TableDataInfo directPushUpgradeList(AcAddUpgradeListParam param) { +// startPage(); +// return getDataTable(iAcDeclarationGiftConfigService.queryList(param)); +// } +// +// @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST_EXPORT, method = EOperationMethod.SELECT) +// @PostMapping("/listExport") +// public void export(AcAddUpgradeListParam param, HttpServletResponse response) { +// startPage(); +// List list = iAcDeclarationGiftConfigService.queryList(param); +// ExcelUtil util = new ExcelUtil<>(AcAddUpgradeListVO.class); +// util.exportExcel(response, list, "加购升级数据导出"); +// } +//} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java new file mode 100644 index 00000000..a48c1244 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java @@ -0,0 +1,20 @@ +package com.hzs.activity.declaration.controller.manage; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 报单赠品明细表 前端控制器 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@RestController +@RequestMapping("/manage/acDeclarationRecord") +public class AcDeclarationGiftRecordController { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java new file mode 100644 index 00000000..f86dcff4 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; + +/** + *

+ * Mapper 接口 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface AcDeclarationGiftConfigMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java new file mode 100644 index 00000000..bc7b4208 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; + +/** + *

+ * 报单赠品明细表 Mapper 接口 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface AcDeclarationGiftRecordMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java new file mode 100644 index 00000000..cc94df08 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; + +/** + *

+ * 服务类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface IAcDeclarationGiftConfigService extends IService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java new file mode 100644 index 00000000..0018ac6c --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; + +/** + *

+ * 报单赠品明细表 服务类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +public interface IAcDeclarationGiftRecordService extends IService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java new file mode 100644 index 00000000..49adaf75 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -0,0 +1,20 @@ +package com.hzs.activity.declaration.service.impl; + +import com.hzs.activity.declaration.mapper.AcDeclarationGiftConfigMapper; +import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Service +public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl implements IAcDeclarationGiftConfigService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java new file mode 100644 index 00000000..8fc51640 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java @@ -0,0 +1,20 @@ +package com.hzs.activity.declaration.service.impl; + +import com.hzs.activity.declaration.mapper.AcDeclarationGiftRecordMapper; +import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; +import org.springframework.stereotype.Service; + +/** + *

+ * 报单赠品明细表 服务实现类 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Service +public class AcDeclarationGiftRecordServiceImpl extends ServiceImpl implements IAcDeclarationGiftRecordService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java new file mode 100644 index 00000000..f627454d --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java @@ -0,0 +1,76 @@ +package com.hzs.activity.declaration.vo; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("AC_DECLARATION_GIFT_CONFIG") +public class AcDeclarationGiftConfig extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId("PK_ID") + private Long pkId; + + /** + * 活动基本配置主键 + */ + @TableField("PK_BASE_ID") + private Long pkBaseId; + + /** + * 注册权限(0=普通用户,1=报单中心,2=服务中心) + */ + @TableField("REGISTER_AUTHORITY") + private Integer registerAuthority; + + /** + * 产品主键 + */ + @TableField("PK_PRODUCT") + private Integer pkProduct; + + /** + * 产品规格(逗号分隔) + */ + @TableField("SPECS_NAME") + private String specsName; + + /** + * 产品规格id(逗号分隔) + */ + @TableField("SPECS_NAME_ID") + private String specsNameId; + + /** + * 数量 + */ + @TableField("QUANTITY") + private Long quantity; + + /** + * 指定等级 + */ + @TableField("LEVEL") + private Integer level; + + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java new file mode 100644 index 00000000..8f8af31b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java @@ -0,0 +1,64 @@ +package com.hzs.activity.declaration.vo; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * 报单赠品明细表 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("AC_DECLARATION_GIFT_RECORD") +public class AcDeclarationGiftRecord extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId("PK_ID") + private Long pkId; + + /** + * 活动基本配置主键 + */ + @TableField("PK_BASE_ID") + private Long pkBaseId; + + /** + * 规则主键 + */ + @TableField("PK_RULE_ID") + private Long pkRuleId; + + /** + * 会员ID + */ + @TableField("PK_MEMBER") + private Long pkMember; + + /** + * 赠品产品ID + */ + @TableField("PK_PRODUCT") + private Integer pkProduct; + + /** + * 赠品数量 + */ + @TableField("QUANTITY") + private Integer quantity; + + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/params/ProductParams.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/params/ProductParams.java index 657531f5..a1a36e7f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/params/ProductParams.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/params/ProductParams.java @@ -253,4 +253,9 @@ public class ProductParams implements Serializable { */ private String wmsCode; + /** + * 提货基数 + */ + private Integer deliveryQuantity; + } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml new file mode 100644 index 00000000..1aceb261 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG + , + CREATION_TIME, + PK_CREATOR, + MODIFIED_TIME, + PK_MODIFIED, + PK_COUNTRY, + PK_ID, PK_BASE_ID, ORDER_TYPE, PK_WARES, QUANTITY, ORIGINAL_LEVEL, UPGRADE_LEVEL + + + + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml new file mode 100644 index 00000000..b08fb70b --- /dev/null +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG, + CREATION_TIME, + PK_CREATOR, + MODIFIED_TIME, + PK_MODIFIED, + PK_COUNTRY, + PK_ID, PK_BASE_ID, PK_RULE_ID, PK_MEMBER, PK_ORIGIN_GRADE, PK_UPGRADE_GRADE, PK_ORDER_ID + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml new file mode 100644 index 00000000..b1538475 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG, + CREATION_TIME, + PK_CREATOR, + MODIFIED_TIME, + PK_MODIFIED, + PK_COUNTRY, + PK_ID, PK_BASE_ID, REGISTER_AUTHORITY, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY, LEVEL + + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml new file mode 100644 index 00000000..ee3413b6 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG, + CREATION_TIME, + PK_CREATOR, + MODIFIED_TIME, + PK_MODIFIED, + PK_COUNTRY, + PK_ID, PK_BASE_ID, PK_RULE_ID, PK_MEMBER, PK_PRODUCT, QUANTITY + + + 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 eee2c46a..c1b30085 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 @@ -98,5 +98,4 @@ 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/EActType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EActType.java index 8f3af65b..58304b0d 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EActType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EActType.java @@ -45,6 +45,16 @@ public enum EActType { */ RECOMMEND_UPGRADE(30, "直推升级", 0), + /** + * 加购升级 + */ + ADD_UPGRADE(31,"加购升级",0), + + /** + * 报单赠送 + */ + DECLARATION_GIFT(32,"报单赠送",0) + ; /** 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 1df60249..18683b3b 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 @@ -261,6 +261,22 @@ public enum EOperationBusiness { AC_WARES_RULE_CONFIG("商品赠送"), + AC_ADD_UPGRADE_SUBMIT("加购活动"), + + AC_ADD_UPGRADE_LIST("加购升级数据"), + + AC_ADD_UPGRADE_LIST_EXPORT("加购升级数据"), + + AC_DECLARATION_GIFT_SUBMIT("报单赠送"), + + AC_DECLARATION_GIFT_DETAIL("报单赠送详情"), + + AC_DECLARATION_GIFT_EXPORT("报单赠送导出"), + + AC_DECLARATION_GIFT_LIST("报单赠送数据"), + + AC_DECLARATION_GIFT_LIST_EXPORT("报单赠送数据导出"), + AC_TOURISM_CONFIG("旅游活动"), TICKET_GIVE("门票活动"), @@ -368,8 +384,8 @@ public enum EOperationBusiness { CU_MEMBER_RETAIL_REGION("会员收益区域配置"), NOT_USED_REGION_AREA("未使用收益区域"), - ; - + AC_ADD_UPGRADE_DETAIL("加购升级详情"), + AC_ADD_UPGRADE_EXPORT("加购升级导出"); /** * 显示标签 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 967ea00b..e6cf0722 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 @@ -367,6 +367,28 @@ public enum EOperationModule { DELETE_DEAD_LOCK("删除死点"), + AC_ADD_UPGRADE_SUBMIT("加购活动"), + + AC_ADD_UPGRADE_DETAIL("加购升级详情"), + + AC_ADD_UPGRADE_EXPORT("加购升级导出"), + + AC_ADD_UPGRADE_LIST("加购升级数据"), + + AC_ADD_UPGRADE_LIST_EXPORT("加购升级数据导出"), + + AC_DECLARATION_GIFT_SUBMIT("报单赠送"), + + AC_DECLARATION_GIFT_DETAIL("报单赠送详情"), + + AC_DECLARATION_GIFT_EXPORT("报单赠送导出"), + + AC_DECLARATION_GIFT_LIST("报单赠送数据"), + + AC_DECLARATION_GIFT_LIST_EXPORT("报单赠送数据导出"), + + + ///////////////////////////统计分析//////////////////////////// STATISTIC_ANALYSIS("统计分析"), diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/product/BdProductExtend.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/product/BdProductExtend.java index f101cc4c..388e7dcf 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/product/BdProductExtend.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/sale/product/BdProductExtend.java @@ -104,4 +104,10 @@ public class BdProductExtend extends BaseEntity { @TableField("IS_PUT_ON") private Integer isPutOn; + /** + * 提货基数 + */ + @TableField("DELIVERY_QUANTITY") + private Integer deliveryQuantity; + } diff --git a/code-util/src/test/java/com/CodeGenerator.java b/code-util/src/test/java/com/CodeGenerator.java index f8d215f5..fe0cc4e8 100644 --- a/code-util/src/test/java/com/CodeGenerator.java +++ b/code-util/src/test/java/com/CodeGenerator.java @@ -20,7 +20,7 @@ public class CodeGenerator { // 模块名称(包名) String moduleName = "com.hzs.common.domain"; // 表名 - String[] tables = {"CU_MEMBER_BONUS_DELAY", "CU_MEMBER_BONUS_DELAY_DETAIL"}; + String[] tables = {"AC_ADD_UPGRADE_CONFIG", "AC_ADD_UPGRADE_RECORD","AC_DECLARATION_GIFT_CONFIG","AC_DECLARATION_GIFT_RECORD"}; // 生成实体是否继承统一父类 boolean superBool = true; @@ -50,8 +50,8 @@ public class CodeGenerator { // dsc.setSchemaName("public"); dataSourceConfig.setUrl("jdbc:oracle:thin:@101.201.51.180:1521/orcl") .setDriverName("oracle.jdbc.driver.OracleDriver") - .setUsername("cloud_1") - .setPassword("pwCloud1Test180") + .setUsername("cloud_2") + .setPassword("pwCloud2Test180") .setDbType(DbType.ORACLE); mpg.setDataSource(dataSourceConfig); From 7b66f67e541be2288fc0b0a7b35dd1989b558e77 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 13 Oct 2025 16:41:01 +0800 Subject: [PATCH 18/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=8A=9F=E8=83=BD,=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/AcAddUpgradeConfigController.java | 6 +- .../add/mapper/AcAddUpgradeConfigMapper.java | 4 +- .../param/AcAddUpgradeConfigParam.java | 3 +- .../param/AcAddUpgradeDetailParam.java | 10 +- .../param/AcAddUpgradeListParam.java | 2 +- .../param/AcAddUpgradeParam.java | 7 +- .../param/AcAddUpgradeRuleConfigParam.java | 2 +- .../service/IAcAddUpgradeConfigService.java | 4 +- .../impl/AcAddUpgradeConfigServiceImpl.java | 9 +- .../hzs/activity/base/vo/BaseConfigVo.java | 16 +- .../AcDeclarationGiftConfigController.java | 192 +++++++++--------- .../param/AcDeclarationConfigParam.java | 49 +++++ .../param/AcDeclarationDetailParam.java | 125 ++++++++++++ .../declaration/param/AcDeclarationParam.java | 58 ++++++ .../IAcDeclarationGiftConfigService.java | 7 + .../AcDeclarationGiftConfigServiceImpl.java | 164 ++++++++++++++- .../vo/AcDeclarationGiftConfig.java | 6 +- .../activity/add/AcAddUpgradeConfigMapper.xml | 4 +- .../common/core/enums/EApprovalBusiness.java | 28 +++ 19 files changed, 551 insertions(+), 145 deletions(-) rename bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/{controller => }/param/AcAddUpgradeConfigParam.java (76%) rename bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/{controller => }/param/AcAddUpgradeDetailParam.java (80%) rename bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/{controller => }/param/AcAddUpgradeListParam.java (93%) rename bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/{controller => }/param/AcAddUpgradeParam.java (77%) rename bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/{controller => }/param/AcAddUpgradeRuleConfigParam.java (93%) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationDetailParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java index 50b28f16..05c55fd3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/manage/AcAddUpgradeConfigController.java @@ -1,15 +1,13 @@ package com.hzs.activity.add.controller.manage; -import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; -import com.hzs.activity.add.controller.param.AcAddUpgradeParam; +import com.hzs.activity.add.param.AcAddUpgradeListParam; +import com.hzs.activity.add.param.AcAddUpgradeParam; import com.hzs.activity.add.service.IAcAddUpgradeConfigService; import com.hzs.activity.add.vo.AcAddUpgradeListVO; import com.hzs.activity.base.param.QueryActivityParam; import com.hzs.activity.base.service.IActivityService; import com.hzs.activity.base.vo.BaseConfigVo; -import com.hzs.activity.recommend.param.AcDirectPushUpgradeListParam; -import com.hzs.activity.recommend.vo.AcDirectPushUpgradeListVO; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EOperationBusiness; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java index 514b9bf1..7367bece 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -1,8 +1,8 @@ package com.hzs.activity.add.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; -import com.hzs.activity.add.controller.param.AcAddUpgradeRuleConfigParam; +import com.hzs.activity.add.param.AcAddUpgradeListParam; +import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; import com.hzs.activity.add.vo.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; import org.apache.ibatis.annotations.Param; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeConfigParam.java similarity index 76% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java rename to bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeConfigParam.java index a623ff9e..135ad7b9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeConfigParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeConfigParam.java @@ -1,6 +1,5 @@ -package com.hzs.activity.add.controller.param; +package com.hzs.activity.add.param; -import com.hzs.activity.base.param.WaresRuleConfigParam; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeDetailParam.java similarity index 80% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java rename to bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeDetailParam.java index 4c3312e6..3ce0991b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeDetailParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeDetailParam.java @@ -1,20 +1,12 @@ -package com.hzs.activity.add.controller.param; +package com.hzs.activity.add.param; import com.fasterxml.jackson.annotation.JsonFormat; -import com.hzs.activity.base.param.AcDrawRuleConfigParam; -import com.hzs.activity.base.param.ConsumeRuleConfigParam; -import com.hzs.activity.base.param.WaresConfigParam; -import com.hzs.activity.draw.vo.AcDrawGiftRuleConfigVo; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; -import com.hzs.common.domain.activity.base.AcPickUpConfig; -import com.hzs.common.domain.activity.consume.ext.AcConsumeShieldConfigExt; -import com.hzs.common.domain.activity.consume.ext.AcMemberConsumeRuleExt; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.io.Serializable; -import java.math.BigDecimal; import java.util.Date; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeListParam.java similarity index 93% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java rename to bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeListParam.java index 19ec48ba..d2691fb5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeListParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeListParam.java @@ -1,4 +1,4 @@ -package com.hzs.activity.add.controller.param; +package com.hzs.activity.add.param; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeParam.java similarity index 77% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java rename to bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeParam.java index 8380fa18..daa8654d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeParam.java @@ -1,16 +1,11 @@ -package com.hzs.activity.add.controller.param; +package com.hzs.activity.add.param; import com.hzs.activity.base.param.ActivityParam; -import com.hzs.activity.recommend.vo.AcRecommendSharVO; -import com.hzs.activity.recommend.vo.AcRecommendUpgradeVO; -import com.hzs.activity.recommend.vo.AcRepurchaseCouponsShowVO; -import com.hzs.common.core.web.domain.BaseApprovalEntity; import com.hzs.common.domain.activity.base.AcBaseAuthority; import com.hzs.system.sys.dto.LoginUser; import lombok.AllArgsConstructor; import lombok.Data; -import lombok.EqualsAndHashCode; import lombok.NoArgsConstructor; import java.io.Serializable; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeRuleConfigParam.java similarity index 93% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java rename to bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeRuleConfigParam.java index c12f8178..3cb155a9 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/controller/param/AcAddUpgradeRuleConfigParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/param/AcAddUpgradeRuleConfigParam.java @@ -1,4 +1,4 @@ -package com.hzs.activity.add.controller.param; +package com.hzs.activity.add.param; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java index b5f4c352..8c8b5a9d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java @@ -1,8 +1,8 @@ package com.hzs.activity.add.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; -import com.hzs.activity.add.controller.param.AcAddUpgradeParam; +import com.hzs.activity.add.param.AcAddUpgradeListParam; +import com.hzs.activity.add.param.AcAddUpgradeParam; import com.hzs.activity.add.vo.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; import com.hzs.common.core.web.domain.AjaxResult; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java index 4fba7174..8a5bf769 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -3,8 +3,8 @@ package com.hzs.activity.add.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.add.controller.param.*; import com.hzs.activity.add.mapper.AcAddUpgradeConfigMapper; +import com.hzs.activity.add.param.*; import com.hzs.activity.add.service.IAcAddUpgradeConfigService; import com.hzs.activity.add.vo.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; @@ -12,27 +12,20 @@ import com.hzs.activity.base.param.ActivityParam; import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.base.service.IAcGoalMemberConfigService; import com.hzs.activity.base.service.IActivityService; -import com.hzs.common.core.annotation.Transaction; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EAwardsLevel; import com.hzs.common.core.enums.EControlType; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; -import com.hzs.common.domain.activity.wares.AcWaresRuleConfig; import com.hzs.common.security.utils.SecurityUtils; -import com.hzs.sale.wares.service.IBdWaresAwardsService; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import javax.security.auth.callback.Callback; import java.util.*; -import java.util.stream.Collectors; /** *

diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/vo/BaseConfigVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/vo/BaseConfigVo.java index 2f5f3363..80773645 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/vo/BaseConfigVo.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/vo/BaseConfigVo.java @@ -48,27 +48,27 @@ public class BaseConfigVo implements Serializable { /** * 活动开始时间 */ - @Excel(name = "开始日期", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "开始日期", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date actStartDate; /** * 活动结束时间 */ - @Excel(name = "结束日期", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "结束日期", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date actEndDate; /** * 显示开始时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") private Date disStartDate; /** * 显示结束时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd") private Date disEndDate; /** @@ -93,8 +93,8 @@ public class BaseConfigVo implements Serializable { /** * 创建时间 */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd HH:mm:ss") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") private Date creationTime; /** * 目标群体配置列表 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java index 36832f65..19da1a0c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java @@ -1,100 +1,96 @@ -//package com.hzs.activity.declaration.controller.manage; -// -// -//import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; -//import com.hzs.activity.add.controller.param.AcAddUpgradeListParam; -//import com.hzs.activity.add.controller.param.AcAddUpgradeParam; -//import com.hzs.activity.add.vo.AcAddUpgradeListVO; -//import com.hzs.activity.base.param.QueryActivityParam; -//import com.hzs.activity.base.service.IActivityService; -//import com.hzs.activity.base.vo.BaseConfigVo; -//import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; -//import com.hzs.common.core.annotation.Log; -//import com.hzs.common.core.enums.EActType; -//import com.hzs.common.core.enums.EOperationBusiness; -//import com.hzs.common.core.enums.EOperationMethod; -//import com.hzs.common.core.enums.EOperationModule; -//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.security.service.UserTokenService; -//import com.hzs.common.security.utils.SecurityUtils; -//import org.springframework.beans.factory.annotation.Autowired; -//import org.springframework.web.bind.annotation.*; -// -//import javax.servlet.http.HttpServletResponse; -//import java.util.List; -// -///** -// *

-// * 前端控制器 -// *

-// * -// * @author bd -// * @since 2025-10-13 -// */ -//@RestController -//@RequestMapping("/manage/acDeclarationConfig") -//public class AcDeclarationGiftConfigController extends BaseController { -// -// @Autowired -// private UserTokenService userTokenService; -// -// @Autowired -// private IActivityService iActivityService; -// -// @Autowired -// private IAcDeclarationGiftConfigService iAcDeclarationGiftConfigService; -// /** -// * -// * 报单赠送活动操作 -// * @param acAddUpgradeParam 报单赠送活动 -// * @return AjaxResult -// */ -// @Log(module = EOperationModule.AC_DECLARATION_GIFT_SUBMIT, business = EOperationBusiness.AC_DECLARATION_GIFT_SUBMIT, method = EOperationMethod.INSERT, remark = "加购活动") -// @PostMapping("/submit") -// public AjaxResult onLinePetition(@RequestBody AcAddUpgradeParam acAddUpgradeParam) { -// acAddUpgradeParam.setPkCountry(SecurityUtils.getPkCountry()); -// acAddUpgradeParam.setPkMember(SecurityUtils.getUserId()); -// acAddUpgradeParam.setLoginUser(userTokenService.getLoginUser()); -// String str = iAcDeclarationGiftConfigService.onLinePetition(acAddUpgradeParam); -// if (str != null) { -// return AjaxResult.error(str); -// } -// return AjaxResult.success(); -// } -// -// /** -// * 报单赠送活动详情 -// * -// * @param pkId 报单赠送活动详情 -// * @return AjaxResult -// */ -// @Log(module = EOperationModule.AC_DECLARATION_GIFT_DETAIL, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.SELECT, remark = "加购升级详情") -// @GetMapping("/get-detail") -// public AjaxResult getDetail(Integer pkId) { -// return iAcDeclarationGiftConfigService.getDetail(pkId); -// } -// -// /** -// * 报单赠送导出 -// */ -// @Log(module = EOperationModule.AC_DECLARATION_GIFT_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.EXPORT, remark = "加购升级导出") -// @PostMapping("/export") -// public void export(QueryActivityParam queryActivityParam, HttpServletResponse response) { -// queryActivityParam.setActType(EActType.DECLARATION_GIFT.getValue()); -// queryActivityParam.setPkCountry(SecurityUtils.getPkCountry()); -// List resultList = iActivityService.activityList(queryActivityParam); -// ExcelUtil util = new ExcelUtil<>(BaseConfigVo.class); -// util.exportExcel(response, resultList, "报单赠送导出"); -// } -// -// /** -// * -// * @param param -// * @return -// */ +package com.hzs.activity.declaration.controller.manage; + + +import com.hzs.activity.base.param.QueryActivityParam; +import com.hzs.activity.base.service.IActivityService; +import com.hzs.activity.base.vo.BaseConfigVo; +import com.hzs.activity.declaration.param.AcDeclarationParam; +import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; +import com.hzs.common.core.annotation.Log; +import com.hzs.common.core.enums.EActType; +import com.hzs.common.core.enums.EOperationBusiness; +import com.hzs.common.core.enums.EOperationMethod; +import com.hzs.common.core.enums.EOperationModule; +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.security.service.UserTokenService; +import com.hzs.common.security.utils.SecurityUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + *

+ * 前端控制器 + *

+ * + * @author bd + * @since 2025-10-13 + */ +@RestController +@RequestMapping("/manage/acDeclarationConfig") +public class AcDeclarationGiftConfigController extends BaseController { + + @Autowired + private UserTokenService userTokenService; + + @Autowired + private IActivityService iActivityService; + + @Autowired + private IAcDeclarationGiftConfigService iAcDeclarationGiftConfigService; + /** + * + * 报单赠送活动操作 + * @param acDeclarationParam 报单赠送活动 + * @return AjaxResult + */ + @Log(module = EOperationModule.AC_DECLARATION_GIFT_SUBMIT, business = EOperationBusiness.AC_DECLARATION_GIFT_SUBMIT, method = EOperationMethod.INSERT, remark = "加购活动") + @PostMapping("/submit") + public AjaxResult onLinePetition(@RequestBody AcDeclarationParam acDeclarationParam) { + acDeclarationParam.setPkCountry(SecurityUtils.getPkCountry()); + acDeclarationParam.setPkMember(SecurityUtils.getUserId()); + acDeclarationParam.setLoginUser(userTokenService.getLoginUser()); + String str = iAcDeclarationGiftConfigService.onLinePetition(acDeclarationParam); + if (str != null) { + return AjaxResult.error(str); + } + return AjaxResult.success(); + } + + /** + * 报单赠送活动详情 + * + * @param pkId 报单赠送活动详情 + * @return AjaxResult + */ + @Log(module = EOperationModule.AC_DECLARATION_GIFT_DETAIL, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.SELECT, remark = "加购升级详情") + @GetMapping("/get-detail") + public AjaxResult getDetail(Integer pkId) { + return iAcDeclarationGiftConfigService.getDetail(pkId); + } + + /** + * 报单赠送导出 + */ + @Log(module = EOperationModule.AC_DECLARATION_GIFT_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_DETAIL, method = EOperationMethod.EXPORT, remark = "加购升级导出") + @PostMapping("/export") + public void export(QueryActivityParam queryActivityParam, HttpServletResponse response) { + queryActivityParam.setActType(EActType.DECLARATION_GIFT.getValue()); + queryActivityParam.setPkCountry(SecurityUtils.getPkCountry()); + List resultList = iActivityService.activityList(queryActivityParam); + ExcelUtil util = new ExcelUtil<>(BaseConfigVo.class); + util.exportExcel(response, resultList, "报单赠送导出"); + } + + /** + * + * @param param + * @return + */ // @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST, method = EOperationMethod.SELECT) // @GetMapping("/list") // public TableDataInfo directPushUpgradeList(AcAddUpgradeListParam param) { @@ -110,4 +106,4 @@ // ExcelUtil util = new ExcelUtil<>(AcAddUpgradeListVO.class); // util.exportExcel(response, list, "加购升级数据导出"); // } -//} +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java new file mode 100644 index 00000000..7ef60951 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java @@ -0,0 +1,49 @@ +package com.hzs.activity.declaration.param; + + +import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationConfigParam { + + + /** + * 报单等级 + */ + private Integer registerAuthority; + + /** + * 产品主键 + */ + private Integer pkProduct; + + /** + * 产品规格(逗号分隔) + */ + private String specsName; + + /** + * 产品规格id(逗号分隔) + */ + private String specsNameId; + + /** + * 数量 + */ + private Long quantity; + + /** + * 指定等级 + */ + private Integer level; + + + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationDetailParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationDetailParam.java new file mode 100644 index 00000000..f2a498ef --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationDetailParam.java @@ -0,0 +1,125 @@ +package com.hzs.activity.declaration.param; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.activity.add.param.AcAddUpgradeConfigParam; +import com.hzs.common.domain.activity.base.AcBaseConfig; +import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationDetailParam implements Serializable { + + private static final long serialVersionUID = 5874438017657659289L; + /** + * 活动主键 + */ + private Long pkId; + /** + * 基础主键 + */ + private Long pkBaseId; + + /** + * 业务单号 + */ + private String businessCode; + + /** + * 活动名称 + */ + private String actName; + + /** + * 活动类型 + */ + private Integer actType; + + /** + * 活动说明 + */ + private String actExplain; + + /** + * 活动开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date actStartDate; + + /** + * 活动结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date actEndDate; + + + /** + * 显示开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date disStartDate; + + /** + * 显示结束时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date disEndDate; + /** + * 活动封面图 + */ + private String actCover; + + /** + * 国家 + */ + private Integer pkCountry; + + /** + * 会员ID + */ + private Long pkCreator; + + /** + * 活动模块 + */ + private List atcModuleList; + + + /** + * 活动模块 + */ + private Integer atcModule; + + + /** + * 报单赠送参数 + */ + private List acDeclarationConfigParams; + + /** + * 目标群体配置列表 + */ + private List goalMemberConfigList; + + /** + * 是否强制弹框 0 是 1 否 + */ + private Integer isStrongAlert; + + /** + * 提货天数 + */ + private Integer deliveryDays; + + /** + * 时间参数 + */ + private String startDate; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java new file mode 100644 index 00000000..03674420 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java @@ -0,0 +1,58 @@ +package com.hzs.activity.declaration.param; + + +import com.hzs.activity.base.param.ActivityParam; +import com.hzs.common.domain.activity.base.AcBaseAuthority; +import com.hzs.system.sys.dto.LoginUser; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationParam { + /** + * 活动基本配置主键 + */ + private Long pkBaseId; + + /** + * 操作类型(1=新增,2=修改,3=删除) + */ + private Integer controlType; + + /** + * 国家 + */ + private Integer pkCountry; + + /** + * 会员ID + */ + private Long pkMember; + + + /** + * 登录用户信息 + */ + private LoginUser loginUser; + + /** + * 基本信息 + */ + private ActivityParam activityParam; + + /** + * 加购升级信息 + */ + private List acDeclarationConfigParams; + + /** + * 权限配置列表 + */ + private List authorityList; + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java index cc94df08..a0e8f91e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java @@ -1,7 +1,10 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.add.param.AcAddUpgradeParam; +import com.hzs.activity.declaration.param.AcDeclarationParam; import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import com.hzs.common.core.web.domain.AjaxResult; /** *

@@ -13,4 +16,8 @@ import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; */ public interface IAcDeclarationGiftConfigService extends IService { + + String onLinePetition(AcDeclarationParam acDeclarationParam); + + AjaxResult getDetail(Integer pkId); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index 49adaf75..cf1e25de 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -1,20 +1,182 @@ package com.hzs.activity.declaration.service.impl; +import cn.hutool.core.bean.BeanUtil; +import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.hzs.activity.add.param.AcAddUpgradeConfigParam; +import com.hzs.activity.add.param.AcAddUpgradeDetailParam; +import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; +import com.hzs.activity.add.vo.AcAddUpgradeConfig; +import com.hzs.activity.base.param.ActivityParam; +import com.hzs.activity.base.service.IAcBaseConfigService; +import com.hzs.activity.base.service.IAcGoalMemberConfigService; +import com.hzs.activity.base.service.IActivityService; import com.hzs.activity.declaration.mapper.AcDeclarationGiftConfigMapper; +import com.hzs.activity.declaration.param.AcDeclarationConfigParam; +import com.hzs.activity.declaration.param.AcDeclarationDetailParam; +import com.hzs.activity.declaration.param.AcDeclarationParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import com.hzs.common.core.enums.EActType; +import com.hzs.common.core.enums.EApprovalBusiness; +import com.hzs.common.core.enums.EControlType; +import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.activity.base.AcBaseConfig; +import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.system.sys.dto.LoginUser; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; /** *

- * 服务实现类 + * 服务实现类 *

* * @author bd * @since 2025-10-13 */ @Service +@Slf4j public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl implements IAcDeclarationGiftConfigService { + @Autowired + private IActivityService iActivityService; + + @Autowired + private IAcBaseConfigService baseConfigService; + + @Autowired + private IAcGoalMemberConfigService iAcGoalMemberConfigService; + + @Override + @Transactional(rollbackFor = Exception.class) + public String onLinePetition(AcDeclarationParam acDeclarationParam) { + log.info("加购升级入参{}", acDeclarationParam); + EApprovalBusiness approvalBusiness = null; + if (acDeclarationParam.getControlType() == EControlType.SAVE.getValue()) { + approvalBusiness = EApprovalBusiness.AC_DECLARATION_GIFT_ADD; + } else if (acDeclarationParam.getControlType() == EControlType.MODIFY.getValue()) { + approvalBusiness = EApprovalBusiness.AC_DECLARATION_GIFT_UPDATE; + } else if (acDeclarationParam.getControlType() == EControlType.DELETE.getValue()) { + approvalBusiness = EApprovalBusiness.AC_DECLARATION_GIFT_REMOVE; + } + + LoginUser loginUser = acDeclarationParam.getLoginUser(); + if (loginUser == null) { + log.error("登录用户信息为空"); + return "登录用户信息为空"; + } + if (acDeclarationParam.getControlType().equals(EControlType.SAVE.getValue())) { + ActivityParam activityParam = acDeclarationParam.getActivityParam(); + activityParam.setPkCountry(loginUser.getDataCountry()); + activityParam.setPkCreator(loginUser.getUserId()); + activityParam.setActType(EActType.DECLARATION_GIFT.getValue()); + // 新增活动基本配置 + AcBaseConfig acBaseConfig = iActivityService.saveBaseConfig(activityParam); + // 新增活动目标权限 + iActivityService.saveGoalMemberConfig(activityParam, acBaseConfig); + // 新增加购活动配置 + saveDeclarationConfig(acDeclarationParam.getAcDeclarationConfigParams(), acBaseConfig); + } else if (acDeclarationParam.getControlType().equals(EControlType.MODIFY.getValue())) { + ActivityParam activityParam = acDeclarationParam.getActivityParam(); + activityParam.setPkCountry(loginUser.getDataCountry()); + activityParam.setPkCreator(loginUser.getUserId()); + activityParam.setActType(EActType.DECLARATION_GIFT.getValue()); + updateDeclarationConfig(activityParam, acDeclarationParam.getAcDeclarationConfigParams()); + } else if (acDeclarationParam.getControlType().equals(EControlType.DELETE.getValue())) { + ActivityParam activityParam = acDeclarationParam.getActivityParam(); + Long pkId = activityParam.getPkId(); + removeDeclarationConfig(pkId); + } + //日志 + ActivityParam activityParam = acDeclarationParam.getActivityParam(); + activityParam.setPkCountry(SecurityUtils.getPkCountry()); + activityParam.setPkCreator(SecurityUtils.getUserId()); + activityParam.setActType(EActType.PRODUCT_GIFT.getValue()); + activityParam.setBusinessCode(acDeclarationParam.getActivityParam().getBusinessCode()); + iActivityService.createBaseConfigLog(activityParam, new StringBuffer(), null, approvalBusiness.getValue(), false); + return null; + } + + @Override + public AjaxResult getDetail(Integer pkId) { + AcBaseConfig baseConfig = baseConfigService.getById(pkId); + AcDeclarationDetailParam activityParam = BeanUtil.copyProperties(baseConfig, AcDeclarationDetailParam.class); + + List list = baseMapper.selectList(new LambdaQueryWrapper() + .eq(AcDeclarationGiftConfig::getPkBaseId,pkId) + .eq(AcDeclarationGiftConfig::getDelFlag,0)); + List collect = list.stream() + .map(i -> BeanUtil.copyProperties(i, AcDeclarationConfigParam.class)) + .collect(Collectors.toList()); + + List goalMemberConfigList = iAcGoalMemberConfigService.list(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, baseConfig.getPkId())); + activityParam.setAcDeclarationConfigParams(collect); + activityParam.setGoalMemberConfigList(goalMemberConfigList); + activityParam.setPkBaseId(baseConfig.getPkId()); + return AjaxResult.success(activityParam); + } + + private void removeDeclarationConfig(Long pkId) { + // 删除活动基本配置 + baseConfigService.removeById(pkId); + // 删除加购活动配置 + baseMapper.delete(new LambdaQueryWrapper() + .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); + // 删除用户权限配置 + iAcGoalMemberConfigService.remove(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, pkId)); + } + + private void updateDeclarationConfig(ActivityParam activityParam, List acDeclarationConfigParams) { + { + Long pkId = activityParam.getPkId(); + // 查询基础信息 + AcBaseConfig baseConfig = BeanUtil.copyProperties(activityParam, AcBaseConfig.class); + baseConfig.setPkId(activityParam.getPkId()); + baseConfigService.updateById(baseConfig); + + // 删除活动配置 + baseMapper.delete(new LambdaQueryWrapper() + .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); + // 删除用户权限配置 + iAcGoalMemberConfigService.remove(new LambdaQueryWrapper() + .eq(AcGoalMemberConfig::getPkBaseId, pkId)); + // 添加加购活动配置 + saveDeclarationConfig(acDeclarationConfigParams,baseConfig); + // 添加用户权限配置 + iActivityService.saveGoalMemberConfig(activityParam, baseConfig); + } + } + + private void saveDeclarationConfig(List acDeclarationConfigParams, AcBaseConfig acBaseConfig) { + acDeclarationConfigParams.forEach(item -> { + if (item != null) { + AcDeclarationGiftConfig build = AcDeclarationGiftConfig.builder() + .pkBaseId(acBaseConfig.getPkId()) + .registerAuthority(item.getRegisterAuthority()) + .pkProduct(item.getPkProduct()) + .specsName(item.getSpecsName()) + .specsNameId(item.getSpecsNameId()) + .quantity(item.getQuantity()) + .level(item.getLevel()) + .build(); + build.setPkCountry(acBaseConfig.getPkCountry()); + build.setCreationTime(acBaseConfig.getCreationTime()); + build.setPkCreator(acBaseConfig.getPkCreator()); + build.setDelFlag(0); + baseMapper.insert(build); + } + }); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java index f627454d..99845ca2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java @@ -1,11 +1,11 @@ package com.hzs.activity.declaration.vo; +import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Data; -import lombok.EqualsAndHashCode; +import lombok.*; import lombok.experimental.Accessors; /** @@ -20,6 +20,8 @@ import lombok.experimental.Accessors; @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @TableName("AC_DECLARATION_GIFT_CONFIG") +@KeySequence("AC_DECLARATION_GIFT_CONFIG_SEQ") +@Builder public class AcDeclarationGiftConfig extends BaseEntity { private static final long serialVersionUID = 1L; diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index 1aceb261..7ee56200 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -31,10 +31,12 @@ PK_ID, PK_BASE_ID, ORDER_TYPE, PK_WARES, QUANTITY, ORIGINAL_LEVEL, UPGRADE_LEVEL + SELECT + abc.ACT_NAME, + cm.member_code, + cm.member_name, + BG.GRADE_NAME AS originalLevelVal, + BGG.GRADE_NAME AS upgradeLevelVal, + abc.ACT_START_DATE, + abc.ACT_END_DATE, + aaur.* + FROM + AC_ADD_UPGRADE_RECORD aaur + LEFT JOIN AC_BASE_CONFIG abc ON aaur.PK_BASE_ID = abc.PK_ID + LEFT JOIN CU_MEMBER cm ON aaur.PK_MEMBER = cm.PK_ID + LEFT JOIN BD_GRADE BG ON aaur.PK_ORIGIN_GRADE = BG.PK_ID + LEFT JOIN BD_GRADE BGG ON aaur.PK_UPGRADE_GRADE = BGG.PK_ID + WHERE + aaur.DEL_FLAG = 0 + + AND abc.ACT_NAME = #{actName} + + + AND cm.member_code = #{memberCode} + + + AND abc.ACT_START_DATE >= TO_DATE(SUBSTR(#{startActStartDate},1,10), 'YYYY-MM-DD') + + + AND abc.ACT_START_DATE <= TO_DATE(SUBSTR(#{startActEndDate},1,10), 'YYYY-MM-DD') + + + AND abc.ACT_END_DATE >= TO_DATE(SUBSTR(#{endActStartDate},1,10), 'YYYY-MM-DD') + + + AND abc.ACT_END_DATE <= TO_DATE(SUBSTR(#{endActEndDate},1,10), 'YYYY-MM-DD') + + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index ee3413b6..295b6c74 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -28,5 +28,42 @@ PK_COUNTRY, PK_ID, PK_BASE_ID, PK_RULE_ID, PK_MEMBER, PK_PRODUCT, QUANTITY + 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 18683b3b..9eff93ea 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 @@ -267,7 +267,10 @@ public enum EOperationBusiness { AC_ADD_UPGRADE_LIST_EXPORT("加购升级数据"), - AC_DECLARATION_GIFT_SUBMIT("报单赠送"), + + AC_DECLARATION_GIFT_SAVE("报单赠送新增"), + AC_DECLARATION_GIFT_UPDATE("报单修改"), + AC_DECLARATION_GIFT_DELETE("报单删除"), AC_DECLARATION_GIFT_DETAIL("报单赠送详情"), 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 e6cf0722..defde74f 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 @@ -377,7 +377,9 @@ public enum EOperationModule { AC_ADD_UPGRADE_LIST_EXPORT("加购升级数据导出"), - AC_DECLARATION_GIFT_SUBMIT("报单赠送"), + AC_DECLARATION_GIFT_SAVE("报单赠送新增"), + AC_DECLARATION_GIFT_UPDATE("报单修改"), + AC_DECLARATION_GIFT_DELETE("报单删除"), AC_DECLARATION_GIFT_DETAIL("报单赠送详情"), @@ -388,7 +390,6 @@ public enum EOperationModule { AC_DECLARATION_GIFT_LIST_EXPORT("报单赠送数据导出"), - ///////////////////////////统计分析//////////////////////////// STATISTIC_ANALYSIS("统计分析"), From 46edfadd29ba72e88b5154f87ba1947c223c3f84 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 14 Oct 2025 10:32:46 +0800 Subject: [PATCH 20/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../manage/AcDeclarationGiftConfigController.java | 10 +++++++--- .../declaration/param/AcDeclarationConfigParam.java | 2 +- .../declaration/param/AcDeclarationParam.java | 7 +------ .../declaration/param/AcDeclarationPkIdParam.java | 12 ++++++++++++ .../impl/AcDeclarationGiftConfigServiceImpl.java | 4 ++-- .../impl/AcDeclarationGiftRecordServiceImpl.java | 8 +++++++- .../declaration/vo/AcDeclarationGiftConfig.java | 4 ++-- .../activity/declaration/vo/AcDeclarationListVO.java | 12 +++++++++++- .../declaration/AcDeclarationGiftRecordMapper.xml | 8 +++++--- 9 files changed, 48 insertions(+), 19 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationPkIdParam.java diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java index febafbbe..6efc7a5c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java @@ -5,6 +5,7 @@ import com.hzs.activity.base.param.QueryActivityParam; import com.hzs.activity.base.service.IActivityService; import com.hzs.activity.base.vo.BaseConfigVo; import com.hzs.activity.declaration.param.AcDeclarationParam; +import com.hzs.activity.declaration.param.AcDeclarationPkIdParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.enums.EActType; @@ -83,13 +84,16 @@ public class AcDeclarationGiftConfigController extends BaseController { /** * * 报单赠送活动删除 - * @param pkId 报单赠送删除 + * @param acDeclarationPkIdParam 报单赠送删除 * @return AjaxResult */ @Log(module = EOperationModule.AC_DECLARATION_GIFT_DELETE, business = EOperationBusiness.AC_DECLARATION_GIFT_DELETE, method = EOperationMethod.DELETE, remark = "报单赠送删除") @PostMapping("/delete") - public AjaxResult declarationConfigDelete(@RequestBody Long pkId) { - String str = iAcDeclarationGiftConfigService.deleteConfig(pkId); + public AjaxResult declarationConfigDelete(@RequestBody AcDeclarationPkIdParam acDeclarationPkIdParam) { + if (acDeclarationPkIdParam.getPkId() == null) { + return AjaxResult.error(); + } + String str = iAcDeclarationGiftConfigService.deleteConfig(acDeclarationPkIdParam.getPkId()); if (str != null) { return AjaxResult.error(str); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java index 7ef60951..6d1c5644 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java @@ -42,7 +42,7 @@ public class AcDeclarationConfigParam { /** * 指定等级 */ - private Integer level; + private Integer specifyLevel; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java index 2e0cbf09..17fe8734 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java @@ -19,11 +19,6 @@ public class AcDeclarationParam { */ private Long pkBaseId; - /** - * 操作类型(1=新增,2=修改,3=删除) - */ - private Integer controlType; - /** * 国家 */ @@ -46,7 +41,7 @@ public class AcDeclarationParam { private ActivityParam activityParam; /** - * 加购升级信息 + * 报单赠送信息 */ private List acDeclarationConfigParams; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationPkIdParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationPkIdParam.java new file mode 100644 index 00000000..f5141a85 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationPkIdParam.java @@ -0,0 +1,12 @@ +package com.hzs.activity.declaration.param; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationPkIdParam { + private Long pkId; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index 1cb9d127..989f811c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -124,7 +124,7 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl queryList(AcDeclarationListParam param) { - return baseMapper.queryList(param); + List acDeclarationListVOS = baseMapper.queryList(param); + acDeclarationListVOS.forEach(item->{ + // 将注册权限实际值注入 + item.setRegisterAuthorityVal(ERegistrationAuthority.getEnumByValue(item.getRegisterAuthority()).getLabel()); + }); + return acDeclarationListVOS; } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java index 99845ca2..373005bd 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java @@ -71,8 +71,8 @@ public class AcDeclarationGiftConfig extends BaseEntity { /** * 指定等级 */ - @TableField("LEVEL") - private Integer level; + @TableField("SPECIFY_LEVEL") + private Integer specifyLevel; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java index 964b566e..beba0c4f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java @@ -29,6 +29,16 @@ public class AcDeclarationListVO { @Excel(name = "会员名称") private String memberName; + /** + * 注册权限 + */ + private Integer registerAuthority; + /** + * 注册权限实际值 + */ + @Excel(name = "注册权限") + private String registerAuthorityVal; + /** * 活动开始时间 @@ -61,5 +71,5 @@ public class AcDeclarationListVO { private Integer quantity; @Excel(name = "指定等级") - private String levelVal; + private String specifyLevelVal; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index 295b6c74..a670f477 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -28,22 +28,24 @@ PK_COUNTRY, PK_ID, PK_BASE_ID, PK_RULE_ID, PK_MEMBER, PK_PRODUCT, QUANTITY - SELECT abc.ACT_NAME, cm.member_code, cm.member_name, - BG.GRADE_NAME AS levelVal, + adgc.REGISTER_AUTHORITY + BG.GRADE_NAME AS specifyLevelVal, abc.ACT_START_DATE, abc.ACT_END_DATE, bp.PRODUCT_NAME, adgr.* FROM AC_DECLARATION_GIFT_RECORD adgr + LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID LEFT JOIN AC_BASE_CONFIG abc ON adgr.PK_BASE_ID = abc.PK_ID LEFT JOIN CU_MEMBER cm ON adgr.PK_MEMBER = cm.PK_ID - LEFT JOIN BD_GRADE BG ON adgr.LEVEL = BG.PK_ID + LEFT JOIN BD_GRADE BG ON adgr.SPECIFY_LEVEL = BG.PK_ID WHERE adgr.DEL_FLAG = 0 From de851fd9cf618a0a51c3901bd2739cfe70d20a6d Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 14 Oct 2025 13:16:45 +0800 Subject: [PATCH 21/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E7=AD=89=E7=BA=A7=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/add/mapper/AcAddUpgradeConfigMapper.java | 3 +++ .../service/impl/AcAddUpgradeConfigServiceImpl.java | 11 ++++++++--- .../mapper/activity/add/AcAddUpgradeConfigMapper.xml | 3 +++ 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java index 7367bece..83aab87c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -5,6 +5,7 @@ import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; import com.hzs.activity.add.vo.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.common.domain.system.config.BdGrade; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -25,4 +26,6 @@ public interface AcAddUpgradeConfigMapper extends BaseMapper List selectOrderTypeByBaseId(@Param("pkId") Integer pkId); List queryList(AcAddUpgradeListParam param); + + BdGrade selectGradeValue(@Param("pkId") Integer pkId); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java index bced1642..0de2b456 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -18,6 +18,7 @@ import com.hzs.common.core.enums.EControlType; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; @@ -149,11 +150,15 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl acAddUpgradeRuleConfigParams = item.getAcAddUpgradeRuleConfigParams(); if (acAddUpgradeRuleConfigParams != null) { acAddUpgradeRuleConfigParams.forEach(ac -> { + // 获取升级后等级值 + BdGrade UpGrade = baseMapper.selectGradeValue(ac.getUpgradeLevel()); + // 获取升级前等级值 + BdGrade OriginalGrade = baseMapper.selectGradeValue(ac.getOriginalLevel()); // 校验升级等级是否小于原等级 - if (ac.getUpgradeLevel() < ac.getOriginalLevel()) { + if (UpGrade.getGradeValue() < OriginalGrade.getGradeValue()) { throw new IllegalArgumentException( - String.format("原等级 [%d] 大于升级等级 [%d],不允许插入!", - ac.getOriginalLevel(), ac.getUpgradeLevel()) + String.format("原等级 [%s] 大于升级等级 [%s],不允许插入!", + OriginalGrade.getGradeName(), UpGrade.getGradeName()) ); } AcAddUpgradeConfig build = AcAddUpgradeConfig.builder() diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index 7ee56200..e8bbc8bd 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -88,5 +88,8 @@ AND abc.ACT_END_DATE <= TO_DATE(SUBSTR(#{endActEndDate},1,10), 'YYYY-MM-DD') + From aad1a2fa0b28c3501ffc327fb61a5ebe8631b842 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 14 Oct 2025 17:24:25 +0800 Subject: [PATCH 22/57] =?UTF-8?q?##=20=E6=8F=90=E8=B4=A7=E5=9F=BA=E6=95=B0?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2,=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/hzs/sale/product/vo/ProductVo.java | 6 +++++- .../main/resources/mapper/sale/product/BdProductMapper.xml | 3 ++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/ProductVo.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/ProductVo.java index 3b073ef2..e727daf7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/ProductVo.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/vo/ProductVo.java @@ -283,5 +283,9 @@ public class ProductVo implements Serializable { */ private Integer pkCubasdoc; - + /** + * 提货基数 + */ + @Excel(name = "提货基数") + private Integer deliveryQuantity; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml index 65c38b27..5943c9a1 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/sale/product/BdProductMapper.xml @@ -77,6 +77,7 @@ + + SELECT adgr.PK_MEMBER, + 32 AS PICK_TYPE, + adgc.PK_ID as PK_BASE_CONFIG, + adgr.PK_PRODUCT AS PK_DATA_ID, + adgc.SPECS_NAME AS SPECS_NAME, + adgc.SPECS_NAME_ID AS SPECS_NAME_ID, + adgr.QUANTITY AS USABLE_QUANTITY, + bp.COVER AS PICK_COVER, + 0 AS IS_FREE_MAIL, + 0 AS DEL_FLAG, + bpe.DELIVERY_QUANTITY AS BASE_QUANTITY, + adgr.PK_BASE_ID AS PK_BASE_ID + FROM AC_DECLARATION_GIFT_RECORD adgr + LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID + LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID + LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT + WHERE TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7; + diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java index 4c79f653..30ff2460 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java @@ -35,6 +35,11 @@ public enum EPickType { */ LOTTERY_DRAW(17, "抽奖"), + /** + * 关联 AC_DECLARATION_GIFT_CONFIG 表 + */ + DELCARATION_GIFT(32,"报单赠送") + ; /** diff --git a/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java b/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java index 6662e880..a0699136 100644 --- a/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java @@ -34,4 +34,19 @@ public class ActivityJob { log.info("旅游活动更新积分 结束执行"); } + /** + * 报单赠送更新提货列表 + */ + @XxlJob("handleDeclarationData") + public void handleDeclarationData() { + log.info("报单赠送更新提货列表 开始执行"); + R resultR = iAcTourismServiceApi.handleDeclarationData(); + if (resultR.isSuccess()) { + log.info("报单赠送更新提货列表 执行成功"); + } else { + log.error("报单赠送更新提货列表 执行失败"); + } + log.info("报单赠送更新提货列表 结束执行"); + } + } From ecce752adaf540048b3ddbe42dd9a00f31d76abd Mon Sep 17 00:00:00 2001 From: zhangheng Date: Wed, 15 Oct 2025 16:23:37 +0800 Subject: [PATCH 24/57] =?UTF-8?q?##=20=E6=8F=90=E8=B4=A7=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E8=AE=B0=E5=BD=95=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../provider/AcTourismServiceProvider.java | 2 +- .../AcDeclarationGiftConfigMapper.xml | 85 +++++++++++-------- 2 files changed, 49 insertions(+), 38 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index 1f47ce52..750374d7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -42,7 +42,7 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { iAcDeclarationGiftConfigService.handleDeclarationData(); return R.ok(); } catch (Exception e) { - log.error("旅游活动更新积分异常", e); + log.error("报单赠送更新提货列表异常", e); } return R.fail(); } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index 1de3fced..98cba8c9 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -32,32 +32,36 @@ PK_ID, PK_BASE_ID, REGISTER_AUTHORITY, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY, LEVEL - DECLARE - v_error_count NUMBER := 0; + DECLARE v_error_count NUMBER := 0; BEGIN BEGIN - MERGE INTO AC_PICK tgt USING (SELECT adgr.PK_ID AS SRC_ID, - adgr.PK_MEMBER, - 32 AS PICK_TYPE, - adgc.PK_ID AS PK_BASE_CONFIG, - adgr.PK_PRODUCT AS PK_DATA_ID, - adgc.SPECS_NAME AS SPECS_NAME, - adgc.SPECS_NAME_ID AS SPECS_NAME_ID, - adgr.QUANTITY AS USABLE_QUANTITY, - bp.COVER AS PICK_COVER, - 0 AS IS_FREE_MAIL, - 0 AS DEL_FLAG, - adgr.QUANTITY AS BASE_QUANTITY, - adgr.PK_BASE_ID AS PK_BASE_ID, - SYSDATE AS CREATION_TIME, - adgr.PK_MEMBER AS PK_CREATOR, - #{pkCountry} AS PK_COUNTRY - FROM AC_DECLARATION_GIFT_RECORD adgr - LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID - LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID - LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT - WHERE TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7 - OR adgr.SYNC_STATUS = 2) src ON ( + MERGE INTO AC_PICK tgt USING ( + SELECT + adgr.PK_ID AS SRC_ID, + adgr.PK_MEMBER, + 32 AS PICK_TYPE, + adgc.PK_ID AS PK_BASE_CONFIG, + adgr.PK_PRODUCT AS PK_DATA_ID, + adgc.SPECS_NAME AS SPECS_NAME, + adgc.SPECS_NAME_ID AS SPECS_NAME_ID, + adgr.QUANTITY AS USABLE_QUANTITY, + bp.COVER AS PICK_COVER, + 0 AS IS_FREE_MAIL, + 0 AS DEL_FLAG, + adgr.QUANTITY AS BASE_QUANTITY, + adgr.PK_BASE_ID AS PK_BASE_ID, + SYSDATE AS CREATION_TIME, + 100000000 AS PK_CREATOR, + 1 AS PK_COUNTRY + FROM + AC_DECLARATION_GIFT_RECORD adgr + LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID + LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID + LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT + WHERE + TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7 + OR adgr.SYNC_STATUS = 2 + ) src ON ( tgt.PICK_TYPE = src.PICK_TYPE AND tgt.PK_BASE_CONFIG = src.PK_BASE_CONFIG AND tgt.PK_DATA_ID = src.PK_DATA_ID @@ -89,7 +93,9 @@ PK_CREATOR, PK_COUNTRY ) - VALUES (AC_PICK_SEQ.NEXTVAL, + VALUES + ( + AC_PICK_SEQ.NEXTVAL, src.PK_MEMBER, src.PICK_TYPE, src.PK_BASE_CONFIG, @@ -103,26 +109,31 @@ src.BASE_QUANTITY, src.PK_BASE_ID, src.CREATION_TIME, - src.PK_CREATOR, - src.PK_COUNTRY); + 100000000, + src.PK_COUNTRY + ); UPDATE AC_DECLARATION_GIFT_RECORD SET SYNC_STATUS = 1 - WHERE (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); + WHERE + (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); EXCEPTION WHEN OTHERS THEN v_error_count := SQL % ROWCOUNT; UPDATE AC_DECLARATION_GIFT_RECORD SET SYNC_STATUS = 2 - WHERE (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); + WHERE + (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); END; - INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) - SELECT AC_PICK_LOG_SEQ.NEXTVAL, - p.PK_ID, - p.PK_CREATOR, - p.USABLE_QUANTITY, - p.PK_COUNTRY - FROM AC_PICK p - WHERE TRUNC(p.CREATION_TIME) = TRUNC(SYSDATE) + INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) SELECT + AC_PICK_LOG_SEQ.NEXTVAL, + p.PK_ID, + p.PK_CREATOR, + p.USABLE_QUANTITY, + p.PK_COUNTRY + FROM + AC_PICK p + WHERE + TRUNC(p.CREATION_TIME) = TRUNC(SYSDATE) OR TRUNC(p.MODIFIED_TIME) = TRUNC(SYSDATE); COMMIT; END; From 19cb52a5063aed7ac40ac9e6c19d8375eb08bc20 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 16 Oct 2025 09:31:16 +0800 Subject: [PATCH 25/57] =?UTF-8?q?##=20=E6=8F=90=E8=B4=A7=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcDeclarationGiftDetailController.java | 20 +++++ .../mapper/AcDeclarationGiftDetailMapper.java | 16 ++++ .../param/AcDeclarationConfigParam.java | 23 +----- .../declaration/param/AcDeclarationParam.java | 1 - .../param/AcDeclarationProductParam.java | 31 ++++++++ .../IAcDeclarationGiftDetailService.java | 16 ++++ .../AcDeclarationGiftConfigServiceImpl.java | 59 +++++++++++---- .../AcDeclarationGiftDetailServiceImpl.java | 20 +++++ .../vo/AcDeclarationGiftConfig.java | 24 ------ .../vo/AcDeclarationGiftDetail.java | 74 +++++++++++++++++++ .../AcDeclarationGiftDetailMapper.xml | 32 ++++++++ 11 files changed, 259 insertions(+), 57 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftDetailController.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java create mode 100644 bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftDetailController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftDetailController.java new file mode 100644 index 00000000..af89e959 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftDetailController.java @@ -0,0 +1,20 @@ +package com.hzs.activity.declaration.controller.manage; + + +import org.springframework.web.bind.annotation.RequestMapping; + +import org.springframework.web.bind.annotation.RestController; + +/** + *

+ * 前端控制器 + *

+ * + * @author bd + * @since 2025-10-16 + */ +@RestController +@RequestMapping("/com.hzs.common.domain/ac-declaration-gift-detail") +public class AcDeclarationGiftDetailController { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java new file mode 100644 index 00000000..08d85971 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; + +/** + *

+ * Mapper 接口 + *

+ * + * @author bd + * @since 2025-10-16 + */ +public interface AcDeclarationGiftDetailMapper extends BaseMapper { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java index 6d1c5644..0151182b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationConfigParam.java @@ -8,6 +8,8 @@ import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.List; + @Data @AllArgsConstructor @NoArgsConstructor @@ -20,30 +22,13 @@ public class AcDeclarationConfigParam { private Integer registerAuthority; /** - * 产品主键 + * 产品信息 */ - private Integer pkProduct; - - /** - * 产品规格(逗号分隔) - */ - private String specsName; - - /** - * 产品规格id(逗号分隔) - */ - private String specsNameId; - - /** - * 数量 - */ - private Long quantity; + private List acDeclarationProductParamList; /** * 指定等级 */ private Integer specifyLevel; - - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java index 17fe8734..c6fab2af 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationParam.java @@ -45,5 +45,4 @@ public class AcDeclarationParam { */ private List acDeclarationConfigParams; - } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java new file mode 100644 index 00000000..61dc32a4 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java @@ -0,0 +1,31 @@ +package com.hzs.activity.declaration.param; + + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationProductParam { + /** + * 产品主键 + */ + private Integer pkProduct; + + /** + * 产品规格(逗号分隔) + */ + private String specsName; + + /** + * 产品规格id(逗号分隔) + */ + private String specsNameId; + + /** + * 数量 + */ + private Long quantity; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java new file mode 100644 index 00000000..4d22d7fa --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java @@ -0,0 +1,16 @@ +package com.hzs.activity.declaration.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; + +/** + *

+ * 服务类 + *

+ * + * @author bd + * @since 2025-10-16 + */ +public interface IAcDeclarationGiftDetailService extends IService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index fdfc568d..277e7df0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -15,13 +15,17 @@ import com.hzs.activity.declaration.mapper.AcDeclarationGiftConfigMapper; import com.hzs.activity.declaration.param.AcDeclarationConfigParam; import com.hzs.activity.declaration.param.AcDeclarationDetailParam; import com.hzs.activity.declaration.param.AcDeclarationParam; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EControlType; +import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; @@ -35,7 +39,10 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; +import java.util.Map; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -57,7 +64,7 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl list = baseMapper.selectList(new LambdaQueryWrapper() .eq(AcDeclarationGiftConfig::getPkBaseId,pkId) .eq(AcDeclarationGiftConfig::getDelFlag,0)); - List collect = list.stream() - .map(i -> BeanUtil.copyProperties(i, AcDeclarationConfigParam.class)) - .collect(Collectors.toList()); + ArrayList acDeclarationConfigParams = new ArrayList<>(); + list.forEach(item->{ + AcDeclarationConfigParam acDeclarationConfigParam = BeanUtil.copyProperties(item, AcDeclarationConfigParam.class); + List declarationGiftDetails = iAcDeclarationGiftDetailService.list(new LambdaQueryWrapper() + .eq(AcDeclarationGiftDetail::getPkRuleId, item.getPkId()) + .eq(AcDeclarationGiftDetail::getDelFlag, 0)); + List declarationConfigParams = declarationGiftDetails.stream() + .map(i -> BeanUtil.copyProperties(i, AcDeclarationProductParam.class)) + .collect(Collectors.toList()); + acDeclarationConfigParam.setAcDeclarationProductParamList(declarationConfigParams); + acDeclarationConfigParams.add(acDeclarationConfigParam); + }); - List goalMemberConfigList = iAcGoalMemberConfigService.list(new LambdaQueryWrapper() - .eq(AcGoalMemberConfig::getPkBaseId, baseConfig.getPkId())); - activityParam.setAcDeclarationConfigParams(collect); - activityParam.setGoalMemberConfigList(goalMemberConfigList); + activityParam.setAcDeclarationConfigParams(acDeclarationConfigParams); activityParam.setPkBaseId(baseConfig.getPkId()); return AjaxResult.success(activityParam); } @@ -135,9 +148,12 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl() .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); + // 删除报单赠送详情配置 + iAcDeclarationGiftDetailService.remove(new LambdaQueryWrapper() + .eq(AcDeclarationGiftDetail::getPkBaseId, pkId)); } private void updateDeclarationConfig(ActivityParam activityParam, List acDeclarationConfigParams) { @@ -151,6 +167,9 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl() .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); + // 删除活动详情配置 + iAcDeclarationGiftDetailService.remove(new LambdaQueryWrapper() + .eq(AcDeclarationGiftDetail::getPkBaseId, pkId)); // 添加加购活动配置 saveDeclarationConfig(acDeclarationConfigParams,baseConfig); } @@ -162,10 +181,6 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl { + if (item1 != null) { + AcDeclarationGiftDetail acDeclarationGiftDetail = AcDeclarationGiftDetail.builder() + .pkBaseId(acBaseConfig.getPkId()) + .pkRuleId(build.getPkId()) + .pkProduct(item1.getPkProduct()) + .specsName(item1.getSpecsName()) + .specsNameId(item1.getSpecsNameId()) + .quantity(item1.getQuantity()) + .build(); + acDeclarationGiftDetail.setPkCountry(acBaseConfig.getPkCountry()); + acDeclarationGiftDetail.setCreationTime(acBaseConfig.getCreationTime()); + acDeclarationGiftDetail.setPkCreator(acBaseConfig.getPkCreator()); + acDeclarationGiftDetail.setDelFlag(0); + iAcDeclarationGiftDetailService.save(acDeclarationGiftDetail); + } + }); + } }); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java new file mode 100644 index 00000000..cc05eade --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java @@ -0,0 +1,20 @@ +package com.hzs.activity.declaration.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.mapper.AcDeclarationGiftDetailMapper; +import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; +import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author bd + * @since 2025-10-16 + */ +@Service +public class AcDeclarationGiftDetailServiceImpl extends ServiceImpl implements IAcDeclarationGiftDetailService { + +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java index 373005bd..4179be57 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java @@ -44,30 +44,6 @@ public class AcDeclarationGiftConfig extends BaseEntity { @TableField("REGISTER_AUTHORITY") private Integer registerAuthority; - /** - * 产品主键 - */ - @TableField("PK_PRODUCT") - private Integer pkProduct; - - /** - * 产品规格(逗号分隔) - */ - @TableField("SPECS_NAME") - private String specsName; - - /** - * 产品规格id(逗号分隔) - */ - @TableField("SPECS_NAME_ID") - private String specsNameId; - - /** - * 数量 - */ - @TableField("QUANTITY") - private Long quantity; - /** * 指定等级 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java new file mode 100644 index 00000000..70bb7fa8 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java @@ -0,0 +1,74 @@ +package com.hzs.activity.declaration.vo; + +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableField; +import com.hzs.common.core.web.domain.BaseEntity; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author bd + * @since 2025-10-16 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@Accessors(chain = true) +@TableName("AC_DECLARATION_GIFT_DETAIL") +@KeySequence("AC_DECLARATION_GIFT_DETAIL_SEQ") +@Builder +public class AcDeclarationGiftDetail extends BaseEntity { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId("PK_ID") + private Long pkId; + + /** + * 活动规则主键 + */ + @TableField("PK_RULE_ID") + private Long pkRuleId; + + /** + * 活动基本规则主键 + */ + @TableField("PK_BASE_ID") + private Long pkBaseId; + + /** + * 产品主键 + */ + @TableField("PK_PRODUCT") + private Integer pkProduct; + + /** + * 产品规格(逗号分隔) + */ + @TableField("SPECS_NAME") + private String specsName; + + /** + * 产品规格id(逗号分隔) + */ + @TableField("SPECS_NAME_ID") + private String specsNameId; + + /** + * 数量 + */ + @TableField("QUANTITY") + private Long quantity; + + +} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml new file mode 100644 index 00000000..4fb54a46 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + DEL_FLAG, + CREATION_TIME, + PK_CREATOR, + MODIFIED_TIME, + PK_MODIFIED, + PK_COUNTRY, + PK_ID, PK_RULE_ID, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY + + + From 7073ff6a69989ac3ff49f2d49641db4abbf40bb9 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 16 Oct 2025 09:53:03 +0800 Subject: [PATCH 26/57] =?UTF-8?q?##=20=E6=8F=90=E8=B4=A7=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/declaration/AcDeclarationGiftConfigMapper.xml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index 98cba8c9..e612a930 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -42,8 +42,8 @@ 32 AS PICK_TYPE, adgc.PK_ID AS PK_BASE_CONFIG, adgr.PK_PRODUCT AS PK_DATA_ID, - adgc.SPECS_NAME AS SPECS_NAME, - adgc.SPECS_NAME_ID AS SPECS_NAME_ID, + adgd.SPECS_NAME AS SPECS_NAME, + adgd.SPECS_NAME_ID AS SPECS_NAME_ID, adgr.QUANTITY AS USABLE_QUANTITY, bp.COVER AS PICK_COVER, 0 AS IS_FREE_MAIL, @@ -52,10 +52,11 @@ adgr.PK_BASE_ID AS PK_BASE_ID, SYSDATE AS CREATION_TIME, 100000000 AS PK_CREATOR, - 1 AS PK_COUNTRY + #{pkCountry} AS PK_COUNTRY FROM AC_DECLARATION_GIFT_RECORD adgr LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID + LEFT JOIN AC_DECLARATION_GIFT_DETAIL adgd ON adgc.PK_ID = adgd.PK_RULE_ID LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT WHERE From e543046e1965aa53a875faa3bcbef102849ed93e Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 16 Oct 2025 10:34:24 +0800 Subject: [PATCH 27/57] =?UTF-8?q?##=20=E6=8F=90=E8=B4=A7=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=95=86=E5=93=81=E5=90=8D=E7=A7=B0=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/AcDeclarationGiftDetailMapper.java | 5 +++++ .../declaration/param/AcDeclarationProductParam.java | 4 ++++ .../service/IAcDeclarationGiftDetailService.java | 4 ++++ .../impl/AcDeclarationGiftConfigServiceImpl.java | 11 +++++------ .../impl/AcDeclarationGiftDetailServiceImpl.java | 8 ++++++++ .../declaration/AcDeclarationGiftDetailMapper.xml | 11 +++++++++++ 6 files changed, 37 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java index 08d85971..0fcd59bb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java @@ -1,7 +1,11 @@ package com.hzs.activity.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -13,4 +17,5 @@ import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; */ public interface AcDeclarationGiftDetailMapper extends BaseMapper { + List listByPKRuleId(@Param("pkId") Long pkId); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java index 61dc32a4..82c8fa04 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java @@ -14,6 +14,10 @@ public class AcDeclarationProductParam { */ private Integer pkProduct; + /** + * 产品名称 + */ + private String productName; /** * 产品规格(逗号分隔) */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java index 4d22d7fa..596476b1 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java @@ -1,8 +1,11 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import java.util.List; + /** *

* 服务类 @@ -13,4 +16,5 @@ import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; */ public interface IAcDeclarationGiftDetailService extends IService { + List listByPKRuleId(Long pkId); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index 277e7df0..db4b51e2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -31,6 +31,7 @@ import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; import com.hzs.common.domain.activity.pick.AcPick; import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.sale.product.service.IBdProductService; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; @@ -66,6 +67,9 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl acDeclarationConfigParams = new ArrayList<>(); list.forEach(item->{ AcDeclarationConfigParam acDeclarationConfigParam = BeanUtil.copyProperties(item, AcDeclarationConfigParam.class); - List declarationGiftDetails = iAcDeclarationGiftDetailService.list(new LambdaQueryWrapper() - .eq(AcDeclarationGiftDetail::getPkRuleId, item.getPkId()) - .eq(AcDeclarationGiftDetail::getDelFlag, 0)); - List declarationConfigParams = declarationGiftDetails.stream() - .map(i -> BeanUtil.copyProperties(i, AcDeclarationProductParam.class)) - .collect(Collectors.toList()); + List declarationConfigParams = iAcDeclarationGiftDetailService.listByPKRuleId(item.getPkId()); acDeclarationConfigParam.setAcDeclarationProductParamList(declarationConfigParams); acDeclarationConfigParams.add(acDeclarationConfigParam); }); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java index cc05eade..aed2e432 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java @@ -2,10 +2,14 @@ package com.hzs.activity.declaration.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.declaration.mapper.AcDeclarationGiftDetailMapper; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; import org.springframework.stereotype.Service; +import java.util.Collections; +import java.util.List; + /** *

* 服务实现类 @@ -17,4 +21,8 @@ import org.springframework.stereotype.Service; @Service public class AcDeclarationGiftDetailServiceImpl extends ServiceImpl implements IAcDeclarationGiftDetailService { + @Override + public List listByPKRuleId(Long pkId) { + return baseMapper.listByPKRuleId(pkId); + } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml index 4fb54a46..4e9b08fa 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml @@ -28,5 +28,16 @@ PK_COUNTRY, PK_ID, PK_RULE_ID, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY + From 35770bccd82e1e7b4a6bbfeb07af27364fd2a6e5 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 16 Oct 2025 11:31:59 +0800 Subject: [PATCH 28/57] =?UTF-8?q?##=20=E4=BA=A7=E5=93=81=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8F=90=E8=B4=A7=E5=9F=BA=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/sale/product/controller/manage/BdProductController.java | 1 + 1 file changed, 1 insertion(+) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java index 17cd1c2b..8a302bb2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/product/controller/manage/BdProductController.java @@ -499,6 +499,7 @@ public class BdProductController extends BaseController { productParams.setIsOceanTrans(productExtend.getIsOceanTrans()); productParams.setSort(productExtend.getSort()); productParams.setIsPutOn(productExtend.getIsPutOn()); + productParams.setDeliveryQuantity(productExtend.getDeliveryQuantity()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(BdProductSpecs::getPkProduct, productId); List pkSpecsType = new ArrayList<>(); From 1420dbc729232c1cf9dd27a5c04ae3a4cdccca2a Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 16 Oct 2025 17:25:36 +0800 Subject: [PATCH 29/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcDeclarationGiftRecordController.java | 4 +- .../mapper/AcDeclarationGiftDetailMapper.java | 2 + .../mapper/AcDeclarationGiftRecordMapper.java | 2 + .../param/AcDeclarationListParam.java | 39 +++++---- .../param/AcDeclarationProductParam.java | 14 +++- .../IAcDeclarationGiftDetailService.java | 2 + .../IAcDeclarationGiftRecordService.java | 3 +- .../AcDeclarationGiftDetailServiceImpl.java | 5 ++ .../AcDeclarationGiftRecordServiceImpl.java | 71 ++++++++++++++-- .../declaration/vo/AcDeclarationListVO.java | 83 +++++++++++-------- .../AcDeclarationGiftDetailMapper.xml | 18 +++- .../AcDeclarationGiftRecordMapper.xml | 50 +++++++++++ 12 files changed, 229 insertions(+), 64 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java index 1bddc472..9a9a8b31 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java @@ -45,14 +45,14 @@ public class AcDeclarationGiftRecordController extends BaseController { @GetMapping("/list") public TableDataInfo directPushUpgradeList(AcDeclarationListParam param) { startPage(); - return getDataTable(acDeclarationGiftRecordService.queryList(param)); + return getDataTable(acDeclarationGiftRecordService.selectDeclarationList(param)); } @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST_EXPORT, method = EOperationMethod.SELECT) @PostMapping("/listExport") public void export(AcDeclarationListParam param, HttpServletResponse response) { startPage(); - List list = acDeclarationGiftRecordService.queryList(param); + List list = acDeclarationGiftRecordService.selectDeclarationList(param); ExcelUtil util = new ExcelUtil<>(AcDeclarationListVO.class); util.exportExcel(response, list, "报单赠送数据导出"); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java index 0fcd59bb..8ac1fffa 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java @@ -18,4 +18,6 @@ import java.util.List; public interface AcDeclarationGiftDetailMapper extends BaseMapper { List listByPKRuleId(@Param("pkId") Long pkId); + + List listByPKRuleIds(@Param("ruleIds") List ruleIds); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java index 941331a9..a245466c 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -19,4 +19,6 @@ import java.util.List; public interface AcDeclarationGiftRecordMapper extends BaseMapper { List queryList(AcDeclarationListParam param); + + List selectDeclarationList(AcDeclarationListParam param); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListParam.java index 6fce8b15..c3db748a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListParam.java @@ -4,39 +4,46 @@ import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.List; + @Data @AllArgsConstructor @NoArgsConstructor public class AcDeclarationListParam { - /** * 活动名称 */ private String actName; - /** - * 会员编号 + * 报单中心会员编号 + */ + private String referenceCode; + /** + * 姓名 + */ + private String referenceName; + /** + * 报单权限 + */ + private Integer registerAuthority; + /** + * 新会员编号 */ private String memberCode; - - /** - * 开始活动开始时间 + * 姓名 */ - private String startActStartDate; - + private String memberName; /** - * 开始活动结束时间 + * 订单编号 */ - private String startActEndDate; - + private String orderCode; /** - * 结束活动开始时间 + * 订单支付开始时间 */ - private String endActStartDate; - + private Data creationStartTime; /** - * 结束活动结束时间 + * 订单支付结束时间 */ - private String endActEndDate; + private Data creationEndTime; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java index 82c8fa04..533930de 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java @@ -1,6 +1,7 @@ package com.hzs.activity.declaration.param; +import com.hzs.common.core.annotation.Excel; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @@ -13,14 +14,24 @@ public class AcDeclarationProductParam { * 产品主键 */ private Integer pkProduct; - + /** + * 活动规则主键 + */ + private Long pkRuleId; /** * 产品名称 */ + @Excel(name = "产品主键") private String productName; + /** + * 产品编号 + */ + @Excel(name = "产品编号") + private String productCode; /** * 产品规格(逗号分隔) */ + @Excel(name = "产品规格") private String specsName; /** @@ -31,5 +42,6 @@ public class AcDeclarationProductParam { /** * 数量 */ + @Excel(name = "数量") private Long quantity; } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java index 596476b1..bb6f0e7e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java @@ -17,4 +17,6 @@ import java.util.List; public interface IAcDeclarationGiftDetailService extends IService { List listByPKRuleId(Long pkId); + + List listByPKRuleIds(List ruleIds); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java index a4ca2b99..95bb82c7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -18,5 +18,6 @@ import java.util.List; */ public interface IAcDeclarationGiftRecordService extends IService { - List queryList(AcDeclarationListParam param); + + List selectDeclarationList(AcDeclarationListParam param); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java index aed2e432..eff83725 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java @@ -25,4 +25,9 @@ public class AcDeclarationGiftDetailServiceImpl extends ServiceImpl listByPKRuleId(Long pkId) { return baseMapper.listByPKRuleId(pkId); } + + @Override + public List listByPKRuleIds(List ruleIds) { + return baseMapper.listByPKRuleIds(ruleIds); + } } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java index 5b57259f..dbee1aa3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java @@ -1,17 +1,24 @@ package com.hzs.activity.declaration.service.impl; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.add.param.AcAddUpgradeListParam; +import com.hzs.activity.declaration.mapper.AcDeclarationGiftDetailMapper; import com.hzs.activity.declaration.mapper.AcDeclarationGiftRecordMapper; import com.hzs.activity.declaration.param.AcDeclarationListParam; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; +import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.core.enums.ERegistrationAuthority; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import java.util.Collections; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; /** *

@@ -24,13 +31,61 @@ import java.util.List; @Service public class AcDeclarationGiftRecordServiceImpl extends ServiceImpl implements IAcDeclarationGiftRecordService { + @Autowired + private IAcDeclarationGiftDetailService iAcDeclarationGiftDetailService; + + + @Override - public List queryList(AcDeclarationListParam param) { - List acDeclarationListVOS = baseMapper.queryList(param); - acDeclarationListVOS.forEach(item->{ - // 将注册权限实际值注入 - item.setRegisterAuthorityVal(ERegistrationAuthority.getEnumByValue(item.getRegisterAuthority()).getLabel()); + public List selectDeclarationList(AcDeclarationListParam param) { + // 一次性查询所有主记录 + List voList = baseMapper.selectDeclarationList(param); + if (voList.isEmpty()) { + return Collections.emptyList(); + } + + // 提取所有规则主键 + List ruleIds = voList.stream() + .map(AcDeclarationListVO::getPkRuleId) + .filter(Objects::nonNull) + .distinct() + .collect(Collectors.toList()); + + // 批量查询明细 + List allDetails = iAcDeclarationGiftDetailService.listByPKRuleIds(ruleIds); + + // 按规则ID分组 + Map> detailMap = allDetails.stream() + .collect(Collectors.groupingBy(AcDeclarationProductParam::getPkRuleId)); + + // 组装数据 + voList.forEach(item -> { + // 绑定明细列表 + List productList = detailMap.getOrDefault(item.getPkRuleId(), new ArrayList<>()); + item.setAcDeclarationProductParamList(productList); + + // 报单权限转义 + item.setRegisterAuthorityVal( + Optional.ofNullable(ERegistrationAuthority.getEnumByValue(item.getRegisterAuthority())) + .map(ERegistrationAuthority::getLabel) + .orElse("未知") + ); + + // 拼接产品信息字符串 + if (!productList.isEmpty()) { + String giftInfo = productList.stream() + .map(p -> String.format("%s(%s) x%d", + p.getProductName(), + p.getSpecsName(), + p.getQuantity())) + .collect(Collectors.joining(";")); + item.setGiftProductInfo(giftInfo); + } else { + item.setGiftProductInfo("无赠送产品"); + } }); - return acDeclarationListVOS; + + return voList; } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java index beba0c4f..c54a7fac 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java @@ -1,75 +1,88 @@ package com.hzs.activity.declaration.vo; +import com.alibaba.nacos.shaded.org.checkerframework.checker.formatter.qual.Format; import com.fasterxml.jackson.annotation.JsonFormat; +import com.hzs.activity.declaration.param.AcDeclarationConfigParam; +import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.common.core.annotation.Excel; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; +import java.util.List; @Data @AllArgsConstructor @NoArgsConstructor public class AcDeclarationListVO { - + /** + * 活动配置主键 + */ + private Long pkRuleId; /** * 活动名称 */ @Excel(name = "活动名称") private String actName; /** - * 会员编号 + * 报单中心会员编号 */ - @Excel(name = "会员编号") - private String memberCode; + @Excel(name = "报单中心会员编号") + private String referenceCode; /** - * 会员名称 + * 姓名 */ - @Excel(name = "会员名称") - private String memberName; - + @Excel(name = "报单中心会员名称") + private String referenceName; /** - * 注册权限 + * 报单权限 */ private Integer registerAuthority; /** - * 注册权限实际值 + * 报单权限实际值 */ - @Excel(name = "注册权限") + @Excel(name = "报单权限") private String registerAuthorityVal; - - /** - * 活动开始时间 + * 新会员编号 */ - @Excel(name = "活动开始时间", dateFormat = "yyyy-MM-dd") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date actStartDate; - + @Excel(name = "新会员编号") + private String memberCode; /** - * 活动结束时间 + * 姓名 */ - @Excel(name = "活动结束时间", dateFormat = "yyyy-MM-dd") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date actEndDate; - + @Excel(name = "新会员名称") + private String memberName; /** - * 创建时间 + * 订单编号 */ - @Excel(name = "创建时间", dateFormat = "yyyy-MM-dd") - @JsonFormat(pattern = "yyyy-MM-dd") - private Date creationTime; - + @Excel(name = "订单编号") + private String orderCode; /** - * 产品名称 + * 订单支付时间 + */ + @Excel(name = "订单支付时间",dateFormat = "yyyy-HH-mm") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date payTime; + /** + * 指定等级实际值 */ - @Excel(name = "产品名称") - private String productName; - - @Excel(name = "数量") - private Integer quantity; - @Excel(name = "指定等级") private String specifyLevelVal; + + /** + * 指定等级 + */ + private Integer specifyLevel; + /** + * 产品信息 + */ + private List acDeclarationProductParamList; + + /** + * 产品信息字符串(拼接导出用) + */ + @Excel(name = "赠送产品信息") + private String giftProductInfo; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml index 4e9b08fa..ecdf4296 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml @@ -31,7 +31,8 @@ + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index a670f477..e38853ea 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -67,5 +67,55 @@ AND abc.ACT_END_DATE <= TO_DATE(SUBSTR(#{endActEndDate},1,10), 'YYYY-MM-DD') + From 0c0eeab847d17ece846d38c0c670631eb795473d Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 17 Oct 2025 10:50:56 +0800 Subject: [PATCH 30/57] =?UTF-8?q?##=20Opt=20-=20=E5=A5=96=E9=87=91?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/MemberStatisticsServiceImpl.java | 4 +- .../member/statis/MemberStatisticsMapper.xml | 112 +++++++++------- .../sale/component/load/RedisComponent.java | 2 +- .../common/core/utils/DataMaskingUtil.java | 123 ++++++++---------- .../statis/DirectStatisticsTop30VO.java | 2 +- 5 files changed, 128 insertions(+), 115 deletions(-) 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 bbe5a734..820d5d63 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,9 +74,9 @@ 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, 6)); + directStatisticsTop30VO.setMemberName(DataMaskingUtil.maskFirstLast(directStatisticsTop30VO.getMemberName())); } - directStatisticsTop30VO.setNumberOfAmount(directStatisticsTop30VO.getNumberOfAmount().divide(new BigDecimal(10000))); +// directStatisticsTop30VO.setNumberOfAmount(directStatisticsTop30VO.getNumberOfAmount().divide(new BigDecimal(10000))); } return result; } 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 05233d8c..cea9cc83 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 @@ -4,54 +4,78 @@ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java index dceb5c1a..d701a7a3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java @@ -46,7 +46,7 @@ class RedisComponent { public void initConfig() { // 商品信息 - initWaresConfig(); +// initWaresConfig(); // 邮费 initPostageTemp(); } 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 e50a409a..52946d4c 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 @@ -5,101 +5,90 @@ package com.hzs.common.core.utils; * 提供字符串脱敏功能,可指定保留前几位和后几位字符 */ public class DataMaskingUtil { - - // 默认脱敏字符 - private static final char DEFAULT_MASK_CHAR = '*'; - /** - * 对字符串进行脱敏处理 - * @param input 原始字符串 - * @param keepPrefix 保留的前缀位数 - * @param keepSuffix 保留的后缀位数 + * 数据脱敏方法 - 前一后一格式 + * @param input 输入字符串 + * @param keepPrefix 保留前缀长度 + * @param keepSuffix 保留后缀长度 * @return 脱敏后的字符串 */ public static String mask(String input, int keepPrefix, int keepSuffix) { - // 参数验证 - if (input == null) { - return null; - } - - // 处理边界情况 - if (keepPrefix < 0 || keepSuffix < 0) { - throw new IllegalArgumentException("保留位数不能为负数"); + // 处理空值或null情况 + if (input == null || input.isEmpty()) { + return input; } int length = input.length(); - // 如果字符串长度小于等于需要保留的位数之和,直接返回原字符串 - if (length <= keepPrefix + keepSuffix) { + // 特殊情况:长度为2时,只保留第一位 + if (length == 2) { + return input.substring(0, 1) + "*"; + } + + // 特殊情况:长度小于等于1时,直接返回 + if (length <= 1) { return input; } - // 构建StringBuilder用于高效拼接字符串 - StringBuilder result = new StringBuilder(length); + // 调整保留长度,确保合理 + keepPrefix = Math.min(keepPrefix, length); + keepSuffix = Math.min(keepSuffix, length - keepPrefix); - // 添加前缀保留字符 - result.append(input, 0, keepPrefix); + StringBuilder result = new StringBuilder(); - // 添加脱敏字符 - int maskCount = length - keepPrefix - keepSuffix; - for (int i = 0; i < maskCount; i++) { - result.append(DEFAULT_MASK_CHAR); + // 添加前缀 + result.append(input.substring(0, keepPrefix)); + + // 添加脱敏部分(使用*代替) + int maskLength = length - keepPrefix - keepSuffix; + for (int i = 0; i < maskLength; i++) { + result.append('*'); } - // 添加后缀保留字符 - result.append(input, length - keepSuffix, length); + // 添加后缀 + if (keepSuffix > 0) { + result.append(input.substring(length - keepSuffix)); + } return result.toString(); } + + /** + * 带最大长度限制的数据脱敏方法 + * @param input 输入字符串 + * @param keepPrefix 保留前缀长度 + * @param keepSuffix 保留后缀长度 + * @param maxLength 最大输出长度 + * @return 脱敏后的字符串 + */ public static String mask(String input, int keepPrefix, int keepSuffix, int maxLength) { + // 调用基础脱敏方法 String str = mask(input, keepPrefix, keepSuffix); - if(str.length() > maxLength) { + + // 限制最大长度 + if (str.length() > maxLength) { str = str.substring(0, maxLength); } + return str; } /** - * 对字符串进行脱敏处理,可自定义脱敏字符 - * @param input 原始字符串 - * @param keepPrefix 保留的前缀位数 - * @param keepSuffix 保留的后缀位数 - * @param maskChar 自定义脱敏字符 + * 前一后一格式的快捷脱敏方法 + * @param input 输入字符串 * @return 脱敏后的字符串 */ - public static String mask(String input, int keepPrefix, int keepSuffix, char maskChar) { - // 参数验证 - if (input == null) { - return null; - } + public static String maskFirstLast(String input) { + return mask(input, 1, 1); + } - // 处理边界情况 - if (keepPrefix < 0 || keepSuffix < 0) { - throw new IllegalArgumentException("保留位数不能为负数"); - } - - int length = input.length(); - - // 如果字符串长度小于等于需要保留的位数之和,直接返回原字符串 - if (length <= keepPrefix + keepSuffix) { - return input; - } - - // 构建StringBuilder用于高效拼接字符串 - StringBuilder result = new StringBuilder(length); - - // 添加前缀保留字符 - result.append(input, 0, keepPrefix); - - // 添加脱敏字符 - int maskCount = length - keepPrefix - keepSuffix; - for (int i = 0; i < maskCount; i++) { - result.append(maskChar); - } - - // 添加后缀保留字符 - result.append(input, length - keepSuffix, length); - - return result.toString(); + /** + * 带最大长度限制的前一后一格式脱敏方法 + * @param input 输入字符串 + * @param maxLength 最大输出长度 + * @return 脱敏后的字符串 + */ + public static String maskFirstLast(String input, int maxLength) { + return mask(input, 1, 1, maxLength); } } diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/statis/DirectStatisticsTop30VO.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/statis/DirectStatisticsTop30VO.java index 10c55e0d..c6d707ce 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/statis/DirectStatisticsTop30VO.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/member/statis/DirectStatisticsTop30VO.java @@ -37,6 +37,6 @@ public class DirectStatisticsTop30VO implements Serializable { /** * 直推金额 */ - @BigDecimalFormat(value = "#0.0000") + @BigDecimalFormat(value = "#0.00") private BigDecimal numberOfAmount; } From e33b1e799c4abc984c7ff1b8f4f12ed6d2772452 Mon Sep 17 00:00:00 2001 From: sangelxiu1 <15781802@163.com> Date: Fri, 17 Oct 2025 10:55:21 +0800 Subject: [PATCH 31/57] =?UTF-8?q?##=20Opt=20-=20=E5=A5=96=E9=87=91?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/hzs/sale/component/load/RedisComponent.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java index d701a7a3..dceb5c1a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/component/load/RedisComponent.java @@ -46,7 +46,7 @@ class RedisComponent { public void initConfig() { // 商品信息 -// initWaresConfig(); + initWaresConfig(); // 邮费 initPostageTemp(); } From 0a5edf9a78927da5aadbe9945130eb676ec1639e Mon Sep 17 00:00:00 2001 From: zhangheng Date: Fri, 17 Oct 2025 13:17:32 +0800 Subject: [PATCH 32/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A0=A1=E9=AA=8C,=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E8=87=B3=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/sale/order/ISaOrderServiceApi.java | 2 + .../base/service/IActivityService.java | 1 + .../mapper/AcDeclarationGiftRecordMapper.java | 2 + .../IAcDeclarationGiftRecordService.java | 2 + .../AcDeclarationGiftConfigServiceImpl.java | 67 ++++++++- .../AcDeclarationGiftRecordServiceImpl.java | 5 + .../vo/AcDeclarationGiftRecord.java | 23 ++- .../provider/SaOrderServiceProvider.java | 134 ++++++++++++++++++ .../AcDeclarationGiftConfigMapper.xml | 19 +-- .../AcDeclarationGiftRecordMapper.xml | 8 ++ .../java/com/hzs/third/job/ActivityJob.java | 5 +- .../main/java/com/hzs/third/job/OrderJob.java | 19 +++ 12 files changed, 261 insertions(+), 26 deletions(-) diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index e223baa5..e269c790 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -147,4 +147,6 @@ public interface ISaOrderServiceApi { */ List singleItemStat(SingleItemStatParamDTO singleItemStatParamDTO); + R autoPushDeclaration(); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IActivityService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IActivityService.java index fc0bbc0c..73c97149 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IActivityService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/base/service/IActivityService.java @@ -1,5 +1,6 @@ package com.hzs.activity.base.service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.base.param.ActivityParam; import com.hzs.activity.base.param.QueryActivityParam; import com.hzs.activity.base.vo.BaseConfigVo; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java index a245466c..bb0e3bac 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -21,4 +21,6 @@ public interface AcDeclarationGiftRecordMapper extends BaseMapper queryList(AcDeclarationListParam param); List selectDeclarationList(AcDeclarationListParam param); + + AcDeclarationGiftRecord selectLastRecord(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java index 95bb82c7..dac543eb 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -20,4 +20,6 @@ public interface IAcDeclarationGiftRecordService extends IService selectDeclarationList(AcDeclarationListParam param); + + AcDeclarationGiftRecord selectLastRecord(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index db4b51e2..91a9a105 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -1,6 +1,7 @@ package com.hzs.activity.declaration.service.impl; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.nacos.client.naming.utils.CollectionUtils; import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.add.param.AcAddUpgradeConfigParam; @@ -39,10 +40,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -69,6 +67,10 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl acDeclarationConfigParams) { + // 获取当前时间还有效的报单赠送活动 + List validBaseConfigs = iAcBaseConfigService.list( + new LambdaQueryWrapper() + .le(AcBaseConfig::getActStartDate, new Date()) + .ge(AcBaseConfig::getActEndDate, new Date()) + .eq(AcBaseConfig::getActType, EActType.DECLARATION_GIFT.getValue()) + .eq(AcBaseConfig::getDelFlag, 0) + ); + + if (CollectionUtils.isEmpty(validBaseConfigs)) { + log.info("当前没有有效的报单赠送活动,可以直接添加新配置"); + // 可以直接执行新增 + return null; + } + + // 获取报单赠送详情配置 + List baseIds = validBaseConfigs.stream() + .map(AcBaseConfig::getPkId) + .collect(Collectors.toList()); + + List existingConfigs = iAcDeclarationGiftConfigService.list( + new LambdaQueryWrapper() + .in(AcDeclarationGiftConfig::getPkBaseId, baseIds) + .eq(AcDeclarationGiftConfig::getDelFlag, 0) + ); + + // 获取报单赠送报单等级和指定等级组合 + Set existingComboSet = existingConfigs.stream() + .map(cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel()) + .collect(Collectors.toSet()); + + // 当前配置活动数据报单等级和指定等级组合 + Set newComboSet = acDeclarationConfigParams.stream() + .filter(Objects::nonNull) + .map(cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel()) + .collect(Collectors.toSet()); + + // 判断是否有重复值,有重复值不允许添加 + Set duplicates = newComboSet.stream() + .filter(existingComboSet::contains) + .collect(Collectors.toSet()); + + if (!duplicates.isEmpty()) { + return "新增活动配置中存在重复的报单等级+指定等级组合: " + duplicates; + } + return null; + } + @Override public String updateConfig(AcDeclarationParam acDeclarationParam) { LoginUser loginUser = acDeclarationParam.getLoginUser(); @@ -119,6 +174,10 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl> queryRepeatSaOrderByDay(Date startDate, Date endDate) { @@ -180,4 +206,112 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { return singleItemStatVoList.stream().map(a -> BeanUtil.copyProperties(a, SingleItemStatDTO.class)).collect(Collectors.toList()); } + @Override + @Transactional(rollbackFor = Exception.class) + public R autoPushDeclaration() { + // 获取所属国家 + Integer pkCountry = CountryConstants.CHINA_COUNTRY; + // 获取 record 表最后一条数据 + AcDeclarationGiftRecord lastRecord = iAcDeclarationGiftRecordService.selectLastRecord(); + + // 默认查 7 天前的数据 + int daysAgo = 7; + + // 如果上次记录不是昨天(表示有漏数据) + if (lastRecord != null) { + LocalDate lastDate = lastRecord.getCreationTime().toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDate(); + + LocalDate today = LocalDate.now(); + long diff = ChronoUnit.DAYS.between(lastDate, today); + + if (diff > 1) { + // 有漏跑天数,就加上差值 + daysAgo = (int) (7 + (diff - 1)); + log.info("检测到漏跑 {} 天,将查询 {} 天前的订单", diff - 1, daysAgo); + } + } + + // 获取目标日期(SYSDATE - daysAgo) + Date targetDate = java.sql.Date.valueOf(LocalDate.now().minusDays(7)); + log.info("处理日期: {}", targetDate); + + // 查询订单 + List orderList = iSaOrderService.list(new LambdaQueryWrapper() + .in(SaOrder::getOrderType, 1, 2, 4, 5) + .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) + .eq(SaOrder::getOrderStatus, 1) + .eq(SaOrder::getDelFlag, 0)); + log.info("{}天无有效订单,处理结束",daysAgo); + // 获取所有7天前有效的报单赠送活动 + List acBaseConfigList = iAcBaseConfigService.list(new LambdaQueryWrapper() + .le(AcBaseConfig::getActStartDate, targetDate) + .ge(AcBaseConfig::getActEndDate, targetDate) + .eq(AcBaseConfig::getActType, 32) + .eq(AcBaseConfig::getDelFlag, 0)); + if (acBaseConfigList.isEmpty()) { + log.info("{}天前无有效报单赠送活动,处理结束",daysAgo); + return R.ok(); + } + // 报单赠送活动主键集合 + List declarationBaseIds = acBaseConfigList.stream().map(AcBaseConfig::getPkId).collect(Collectors.toList()); + // 查询所有报单赠送活动数据 + List declarationGiftConfigs = iAcDeclarationGiftConfigService.list(new LambdaQueryWrapper() + .in(AcDeclarationGiftConfig::getPkBaseId, declarationBaseIds) + .eq(AcDeclarationGiftConfig::getDelFlag, 0)); + Map configMap = declarationGiftConfigs.stream() + .collect(Collectors.toMap( + cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel(), + Function.identity(), + (a, b) -> b + )); + + orderList.forEach(order -> { + // 查看是否有重复订单 + int count = iAcDeclarationGiftRecordService.count(new LambdaQueryWrapper() + .eq(AcDeclarationGiftRecord::getOrderCode, order.getOrderCode()) + .eq(AcDeclarationGiftRecord::getDelFlag, 0)); + if (count > 0) { + log.warn("当前订单已同步至报单明细{}",order.getOrderCode()); + return; + } + // 查询会员信息 + R memberResult = iMemberServiceApi.getMember(order.getPkCreator()); + CuMember member = memberResult.getData(); + + if (member == null) { + log.warn("会员信息不存在, orderId={}", order.getPkId()); + return; + } + + // 组合 key 匹配活动配置 + String key = member.getRegisterAuthority() + "_" + member.getPkSettleGrade(); + AcDeclarationGiftConfig matchedConfig = configMap.get(key); + + if (matchedConfig == null) { + log.info("未找到匹配的报单赠送配置, 会员id={}, 注册权限={}, 结算等级={}", + member.getPkId(), member.getRegisterAuthority(), member.getPkSettleGrade()); + return; + } + + AcDeclarationGiftRecord record = AcDeclarationGiftRecord.builder() + .pkRuleId(matchedConfig.getPkId()) + .pkBaseId(matchedConfig.getPkBaseId()) + .orderCode(order.getOrderCode()) + .syncStatus(0) + .build(); + record.setCreationTime(new Date()); + record.setDelFlag(0); + record.setPkCreator(member.getPkId()); + record.setPkCountry(pkCountry); + // 插入数据库 + iAcDeclarationGiftRecordService.save(record); + + log.info("成功插入报单赠送记录 -> memberId={}, ruleId={}", + member.getPkId(), matchedConfig.getPkId()); + }); + return R.ok(); + } + } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index e612a930..66b3dcf2 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -38,17 +38,17 @@ MERGE INTO AC_PICK tgt USING ( SELECT adgr.PK_ID AS SRC_ID, - adgr.PK_MEMBER, + so.PK_CREATOR AS PK_MEMBER, 32 AS PICK_TYPE, adgc.PK_ID AS PK_BASE_CONFIG, - adgr.PK_PRODUCT AS PK_DATA_ID, + adgd.PK_PRODUCT AS PK_DATA_ID, adgd.SPECS_NAME AS SPECS_NAME, adgd.SPECS_NAME_ID AS SPECS_NAME_ID, - adgr.QUANTITY AS USABLE_QUANTITY, + adgd.QUANTITY AS USABLE_QUANTITY, bp.COVER AS PICK_COVER, 0 AS IS_FREE_MAIL, 0 AS DEL_FLAG, - adgr.QUANTITY AS BASE_QUANTITY, + adgd.QUANTITY AS BASE_QUANTITY, adgr.PK_BASE_ID AS PK_BASE_ID, SYSDATE AS CREATION_TIME, 100000000 AS PK_CREATOR, @@ -57,10 +57,11 @@ AC_DECLARATION_GIFT_RECORD adgr LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID LEFT JOIN AC_DECLARATION_GIFT_DETAIL adgd ON adgc.PK_ID = adgd.PK_RULE_ID - LEFT JOIN BD_PRODUCT bp ON adgr.PK_PRODUCT = bp.PK_ID + LEFT JOIN BD_PRODUCT bp ON adgd.PK_PRODUCT = bp.PK_ID LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT + LEFT JOIN SA_ORDER so ON adgr.ORDER_CODE = so.ORDER_CODE WHERE - TRUNC(adgr.CREATION_TIME) = TRUNC(SYSDATE) - 7 + adgr.SYNC_STATUS = 0 OR adgr.SYNC_STATUS = 2 ) src ON ( tgt.PICK_TYPE = src.PICK_TYPE @@ -116,14 +117,16 @@ UPDATE AC_DECLARATION_GIFT_RECORD SET SYNC_STATUS = 1 WHERE - (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); + SYNC_STATUS = 0 + OR SYNC_STATUS = 2; EXCEPTION WHEN OTHERS THEN v_error_count := SQL % ROWCOUNT; UPDATE AC_DECLARATION_GIFT_RECORD SET SYNC_STATUS = 2 WHERE - (TRUNC(CREATION_TIME) = TRUNC(SYSDATE) - 7 OR SYNC_STATUS = 2); + SYNC_STATUS = 0 + OR SYNC_STATUS = 2; END; INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) SELECT AC_PICK_LOG_SEQ.NEXTVAL, diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index e38853ea..a859d7ad 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -117,5 +117,13 @@ AND adgr.CREATION_TIME <= #{creationEndTime} + diff --git a/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java b/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java index a0699136..002b60d3 100644 --- a/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/ActivityJob.java @@ -7,6 +7,8 @@ import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; /** * 活动涉及定时任务 @@ -44,7 +46,8 @@ public class ActivityJob { if (resultR.isSuccess()) { log.info("报单赠送更新提货列表 执行成功"); } else { - log.error("报单赠送更新提货列表 执行失败"); + log.error("报单赠送更新提货列表" + + " 执行失败"); } log.info("报单赠送更新提货列表 结束执行"); } diff --git a/bd-third/src/main/java/com/hzs/third/job/OrderJob.java b/bd-third/src/main/java/com/hzs/third/job/OrderJob.java index 7cda2af6..9e09a625 100644 --- a/bd-third/src/main/java/com/hzs/third/job/OrderJob.java +++ b/bd-third/src/main/java/com/hzs/third/job/OrderJob.java @@ -1,11 +1,15 @@ package com.hzs.third.job; +import com.hzs.common.core.domain.R; import com.hzs.sale.order.ISaOrderServiceApi; import com.xxl.job.core.handler.annotation.XxlJob; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; @Slf4j @ConditionalOnProperty(name = "xxl-job.start", havingValue = "true") @@ -22,5 +26,20 @@ public class OrderJob { public void timingCloseOrder() { iSaOrderServiceApi.closeOrder(); } + /** + * 报单赠送订单推送 + */ + @XxlJob("autoPushDeclaration") + public void autoPushDeclaration() { + log.info("推送报单赠送订单 开始执行"); + R resultR = iSaOrderServiceApi.autoPushDeclaration(); + if (resultR.isSuccess()) { + log.info("推送报单赠送订单 执行成功"); + } else { + log.error("推送报单赠送订单 执行失败"); + } + log.info("推送报单赠送订单 结束执行"); + + } } From e3606433a3bce48a7305640954966ec630aa34cb Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 20 Oct 2025 11:17:09 +0800 Subject: [PATCH 33/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81=E9=83=A8=E5=88=86bug?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/sale/order/ISaOrderServiceApi.java | 1 - .../AcDeclarationGiftConfigController.java | 3 +- .../param/AcDeclarationProductParam.java | 3 + .../AcDeclarationGiftConfigServiceImpl.java | 111 ++++++++------ .../provider/AcTourismServiceProvider.java | 144 +++++++++++++++++- .../provider/SaOrderServiceProvider.java | 106 ------------- .../activity/add/AcAddUpgradeConfigMapper.xml | 1 + .../main/java/com/hzs/third/job/OrderJob.java | 15 -- 8 files changed, 215 insertions(+), 169 deletions(-) diff --git a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java index e269c790..4e93ec4a 100644 --- a/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java +++ b/bd-api/bd-api-sale/src/main/java/com/hzs/sale/order/ISaOrderServiceApi.java @@ -147,6 +147,5 @@ public interface ISaOrderServiceApi { */ List singleItemStat(SingleItemStatParamDTO singleItemStatParamDTO); - R autoPushDeclaration(); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java index 6efc7a5c..d190a1d6 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftConfigController.java @@ -18,6 +18,7 @@ import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.security.service.UserTokenService; import com.hzs.common.security.utils.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; @@ -51,7 +52,7 @@ public class AcDeclarationGiftConfigController extends BaseController { */ @Log(module = EOperationModule.AC_DECLARATION_GIFT_SAVE, business = EOperationBusiness.AC_DECLARATION_GIFT_SAVE, method = EOperationMethod.INSERT, remark = "报单赠送添加") @PostMapping("/save") - public AjaxResult declarationConfigSave(@RequestBody AcDeclarationParam acDeclarationParam) { + public AjaxResult declarationConfigSave(@RequestBody @Validated AcDeclarationParam acDeclarationParam) { acDeclarationParam.setPkCountry(SecurityUtils.getPkCountry()); acDeclarationParam.setPkMember(SecurityUtils.getUserId()); acDeclarationParam.setLoginUser(userTokenService.getLoginUser()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java index 533930de..f8fc1583 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationProductParam.java @@ -6,6 +6,8 @@ import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import javax.validation.constraints.NotNull; + @Data @AllArgsConstructor @NoArgsConstructor @@ -32,6 +34,7 @@ public class AcDeclarationProductParam { * 产品规格(逗号分隔) */ @Excel(name = "产品规格") + @NotNull(message = "产品规格不能为空") private String specsName; /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index 91a9a105..83bef513 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -26,6 +26,7 @@ import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EControlType; +import com.hzs.common.core.enums.ERegistrationAuthority; import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.activity.base.AcBaseConfig; @@ -33,6 +34,8 @@ import com.hzs.common.domain.activity.base.AcGoalMemberConfig; import com.hzs.common.domain.activity.pick.AcPick; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdProductService; +import com.hzs.sale.wares.service.IBdWaresGradeService; +import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; @@ -71,6 +74,8 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl list = baseMapper.selectList(new LambdaQueryWrapper() - .eq(AcDeclarationGiftConfig::getPkBaseId,pkId) - .eq(AcDeclarationGiftConfig::getDelFlag,0)); + .eq(AcDeclarationGiftConfig::getPkBaseId, pkId) + .eq(AcDeclarationGiftConfig::getDelFlag, 0)); ArrayList acDeclarationConfigParams = new ArrayList<>(); - list.forEach(item->{ + list.forEach(item -> { AcDeclarationConfigParam acDeclarationConfigParam = BeanUtil.copyProperties(item, AcDeclarationConfigParam.class); List declarationConfigParams = iAcDeclarationGiftDetailService.listByPKRuleId(item.getPkId()); acDeclarationConfigParam.setAcDeclarationProductParamList(declarationConfigParams); @@ -94,13 +99,14 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl acDeclarationConfigParams) { + private String validateDuplicateConfig(AcDeclarationParam acDeclarationParam) { + List acDeclarationConfigParams = acDeclarationParam.getAcDeclarationConfigParams(); + // 获取当前时间还有效的报单赠送活动 - List validBaseConfigs = iAcBaseConfigService.list( - new LambdaQueryWrapper() - .le(AcBaseConfig::getActStartDate, new Date()) - .ge(AcBaseConfig::getActEndDate, new Date()) - .eq(AcBaseConfig::getActType, EActType.DECLARATION_GIFT.getValue()) - .eq(AcBaseConfig::getDelFlag, 0) - ); - - if (CollectionUtils.isEmpty(validBaseConfigs)) { - log.info("当前没有有效的报单赠送活动,可以直接添加新配置"); - // 可以直接执行新增 - return null; + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.le(AcBaseConfig::getActStartDate, new Date()) + .ge(AcBaseConfig::getActEndDate, new Date()) + .eq(AcBaseConfig::getActType, EActType.DECLARATION_GIFT.getValue()) + .eq(AcBaseConfig::getDelFlag, 0); + if (acDeclarationParam.getActivityParam().getPkId() != null) { + queryWrapper.ne(AcBaseConfig::getPkId, acDeclarationParam.getActivityParam().getPkId()); } + List validBaseConfigs = iAcBaseConfigService.list(queryWrapper); - // 获取报单赠送详情配置 - List baseIds = validBaseConfigs.stream() - .map(AcBaseConfig::getPkId) + // 先把新增组合转换成List + List newComboList = acDeclarationConfigParams.stream() + .filter(Objects::nonNull) + .map(cfg -> ERegistrationAuthority.getEnumByValue(cfg.getRegisterAuthority()).getLabel() + + "_" + iGradeServiceApi.getGrade(cfg.getSpecifyLevel()).getData().getGradeName()) .collect(Collectors.toList()); - List existingConfigs = iAcDeclarationGiftConfigService.list( - new LambdaQueryWrapper() - .in(AcDeclarationGiftConfig::getPkBaseId, baseIds) - .eq(AcDeclarationGiftConfig::getDelFlag, 0) - ); + // 校验新增组合内部是否有重复 + Map newCountMap = newComboList.stream() + .collect(Collectors.groupingBy(Function.identity(), Collectors.counting())); - // 获取报单赠送报单等级和指定等级组合 - Set existingComboSet = existingConfigs.stream() - .map(cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel()) + Set internalDuplicates = newCountMap.entrySet().stream() + .filter(entry -> entry.getValue() > 1) + .map(Map.Entry::getKey) .collect(Collectors.toSet()); - // 当前配置活动数据报单等级和指定等级组合 - Set newComboSet = acDeclarationConfigParams.stream() - .filter(Objects::nonNull) - .map(cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel()) - .collect(Collectors.toSet()); - - // 判断是否有重复值,有重复值不允许添加 - Set duplicates = newComboSet.stream() - .filter(existingComboSet::contains) - .collect(Collectors.toSet()); - - if (!duplicates.isEmpty()) { - return "新增活动配置中存在重复的报单等级+指定等级组合: " + duplicates; + if (!internalDuplicates.isEmpty()) { + return "新增活动配置内部存在重复的报单等级+指定等级组合: " + internalDuplicates; } + + // 校验新增组合是否与已有数据库组合重复 + if (!CollectionUtils.isEmpty(validBaseConfigs)) { + List baseIds = validBaseConfigs.stream() + .map(AcBaseConfig::getPkId) + .collect(Collectors.toList()); + + List existingConfigs = iAcDeclarationGiftConfigService.list( + new LambdaQueryWrapper() + .in(AcDeclarationGiftConfig::getPkBaseId, baseIds) + .eq(AcDeclarationGiftConfig::getDelFlag, 0) + ); + + Set existingComboSet = existingConfigs.stream() + .map(cfg -> ERegistrationAuthority.getEnumByValue(cfg.getRegisterAuthority()).getLabel() + + "_" + iGradeServiceApi.getGrade(cfg.getSpecifyLevel()).getData().getGradeName()) + .collect(Collectors.toSet()); + + Set dbDuplicates = newComboList.stream() + .filter(existingComboSet::contains) + .collect(Collectors.toSet()); + + if (!dbDuplicates.isEmpty()) { + return "新增活动配置中存在与已有活动重复的报单等级+指定等级组合: " + dbDuplicates; + } + } + return null; + } @Override + @Transactional(rollbackFor = Exception.class) public String updateConfig(AcDeclarationParam acDeclarationParam) { LoginUser loginUser = acDeclarationParam.getLoginUser(); if (loginUser == null) { log.error("登录用户信息为空"); return "登录用户信息为空"; } - String validated = validateDuplicateConfig(acDeclarationParam.getAcDeclarationConfigParams()); + String validated = validateDuplicateConfig(acDeclarationParam); if (validated != null) { return validated; } @@ -188,6 +210,7 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl() .eq(AcDeclarationGiftDetail::getPkBaseId, pkId)); // 添加加购活动配置 - saveDeclarationConfig(acDeclarationConfigParams,baseConfig); + saveDeclarationConfig(acDeclarationConfigParams, baseConfig); } } @@ -267,6 +289,7 @@ public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl handleTourismData() { @@ -37,9 +67,13 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { } @Override + @Transactional(rollbackFor = Exception.class) public R handleDeclarationData() { try { - iAcDeclarationGiftConfigService.handleDeclarationData(); + R del = saOrderPushDel(); + if (del.isSuccess()) { + iAcDeclarationGiftConfigService.handleDeclarationData(); + } return R.ok(); } catch (Exception e) { log.error("报单赠送更新提货列表异常", e); @@ -47,4 +81,110 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { return R.fail(); } + private R saOrderPushDel() { + // 获取所属国家 + Integer pkCountry = CountryConstants.CHINA_COUNTRY; + // 获取 record 表最后一条数据 + AcDeclarationGiftRecord lastRecord = iAcDeclarationGiftRecordService.selectLastRecord(); + + // 默认查 7 天前的数据 + int daysAgo = 7; + + // 如果上次记录不是昨天(表示有漏数据) + if (lastRecord != null) { + LocalDate lastDate = lastRecord.getCreationTime().toInstant() + .atZone(ZoneId.systemDefault()) + .toLocalDate(); + + LocalDate today = LocalDate.now(); + long diff = ChronoUnit.DAYS.between(lastDate, today); + + if (diff > 1) { + // 有漏跑天数,就加上差值 + daysAgo = (int) (7 + (diff - 1)); + log.info("检测到漏跑 {} 天,将查询 {} 天前的订单", diff - 1, daysAgo); + } + } + + // 获取目标日期(SYSDATE - daysAgo) + Date targetDate = java.sql.Date.valueOf(LocalDate.now().minusDays(7)); + log.info("处理日期: {}", targetDate); + + // 查询订单 + List orderList = iSaOrderService.list(new LambdaQueryWrapper() + .in(SaOrder::getOrderType, 1, 2, 4, 5) + .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) + .eq(SaOrder::getOrderStatus, 1) + .eq(SaOrder::getDelFlag, 0)); + log.info("{}天无有效订单,处理结束", daysAgo); + // 获取所有7天前有效的报单赠送活动 + List acBaseConfigList = iAcBaseConfigService.list(new LambdaQueryWrapper() + .le(AcBaseConfig::getActStartDate, targetDate) + .ge(AcBaseConfig::getActEndDate, targetDate) + .eq(AcBaseConfig::getActType, 32) + .eq(AcBaseConfig::getDelFlag, 0)); + if (acBaseConfigList.isEmpty()) { + log.info("{}天前无有效报单赠送活动,处理结束", daysAgo); + return R.ok(); + } + // 报单赠送活动主键集合 + List declarationBaseIds = acBaseConfigList.stream().map(AcBaseConfig::getPkId).collect(Collectors.toList()); + // 查询所有报单赠送活动数据 + List declarationGiftConfigs = iAcDeclarationGiftConfigService.list(new LambdaQueryWrapper() + .in(AcDeclarationGiftConfig::getPkBaseId, declarationBaseIds) + .eq(AcDeclarationGiftConfig::getDelFlag, 0)); + Map configMap = declarationGiftConfigs.stream() + .collect(Collectors.toMap( + cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel(), + Function.identity(), + (a, b) -> b + )); + + orderList.forEach(order -> { + // 查看是否有重复订单 + int count = iAcDeclarationGiftRecordService.count(new LambdaQueryWrapper() + .eq(AcDeclarationGiftRecord::getOrderCode, order.getOrderCode()) + .eq(AcDeclarationGiftRecord::getDelFlag, 0)); + if (count > 0) { + log.warn("当前订单已同步至报单明细{}", order.getOrderCode()); + return; + } + // 查询会员信息 + R memberResult = iMemberServiceApi.getMember(order.getPkCreator()); + CuMember member = memberResult.getData(); + + if (member == null) { + log.warn("会员信息不存在, orderId={}", order.getPkId()); + return; + } + + // 组合 key 匹配活动配置 + String key = member.getRegisterAuthority() + "_" + member.getPkSettleGrade(); + AcDeclarationGiftConfig matchedConfig = configMap.get(key); + + if (matchedConfig == null) { + log.info("未找到匹配的报单赠送配置, 会员id={}, 注册权限={}, 结算等级={}", + member.getPkId(), member.getRegisterAuthority(), member.getPkSettleGrade()); + return; + } + + AcDeclarationGiftRecord record = AcDeclarationGiftRecord.builder() + .pkRuleId(matchedConfig.getPkId()) + .pkBaseId(matchedConfig.getPkBaseId()) + .orderCode(order.getOrderCode()) + .syncStatus(0) + .build(); + record.setCreationTime(new Date()); + record.setDelFlag(0); + record.setPkCreator(member.getPkId()); + record.setPkCountry(pkCountry); + // 插入数据库 + iAcDeclarationGiftRecordService.save(record); + + log.info("成功插入报单赠送记录 -> memberId={}, ruleId={}", + member.getPkId(), matchedConfig.getPkId()); + }); + return R.ok(); + } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index 45fcd4d0..96ba4614 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -206,112 +206,6 @@ public class SaOrderServiceProvider implements ISaOrderServiceApi { return singleItemStatVoList.stream().map(a -> BeanUtil.copyProperties(a, SingleItemStatDTO.class)).collect(Collectors.toList()); } - @Override - @Transactional(rollbackFor = Exception.class) - public R autoPushDeclaration() { - // 获取所属国家 - Integer pkCountry = CountryConstants.CHINA_COUNTRY; - // 获取 record 表最后一条数据 - AcDeclarationGiftRecord lastRecord = iAcDeclarationGiftRecordService.selectLastRecord(); - // 默认查 7 天前的数据 - int daysAgo = 7; - - // 如果上次记录不是昨天(表示有漏数据) - if (lastRecord != null) { - LocalDate lastDate = lastRecord.getCreationTime().toInstant() - .atZone(ZoneId.systemDefault()) - .toLocalDate(); - - LocalDate today = LocalDate.now(); - long diff = ChronoUnit.DAYS.between(lastDate, today); - - if (diff > 1) { - // 有漏跑天数,就加上差值 - daysAgo = (int) (7 + (diff - 1)); - log.info("检测到漏跑 {} 天,将查询 {} 天前的订单", diff - 1, daysAgo); - } - } - - // 获取目标日期(SYSDATE - daysAgo) - Date targetDate = java.sql.Date.valueOf(LocalDate.now().minusDays(7)); - log.info("处理日期: {}", targetDate); - - // 查询订单 - List orderList = iSaOrderService.list(new LambdaQueryWrapper() - .in(SaOrder::getOrderType, 1, 2, 4, 5) - .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) - .eq(SaOrder::getOrderStatus, 1) - .eq(SaOrder::getDelFlag, 0)); - log.info("{}天无有效订单,处理结束",daysAgo); - // 获取所有7天前有效的报单赠送活动 - List acBaseConfigList = iAcBaseConfigService.list(new LambdaQueryWrapper() - .le(AcBaseConfig::getActStartDate, targetDate) - .ge(AcBaseConfig::getActEndDate, targetDate) - .eq(AcBaseConfig::getActType, 32) - .eq(AcBaseConfig::getDelFlag, 0)); - if (acBaseConfigList.isEmpty()) { - log.info("{}天前无有效报单赠送活动,处理结束",daysAgo); - return R.ok(); - } - // 报单赠送活动主键集合 - List declarationBaseIds = acBaseConfigList.stream().map(AcBaseConfig::getPkId).collect(Collectors.toList()); - // 查询所有报单赠送活动数据 - List declarationGiftConfigs = iAcDeclarationGiftConfigService.list(new LambdaQueryWrapper() - .in(AcDeclarationGiftConfig::getPkBaseId, declarationBaseIds) - .eq(AcDeclarationGiftConfig::getDelFlag, 0)); - Map configMap = declarationGiftConfigs.stream() - .collect(Collectors.toMap( - cfg -> cfg.getRegisterAuthority() + "_" + cfg.getSpecifyLevel(), - Function.identity(), - (a, b) -> b - )); - - orderList.forEach(order -> { - // 查看是否有重复订单 - int count = iAcDeclarationGiftRecordService.count(new LambdaQueryWrapper() - .eq(AcDeclarationGiftRecord::getOrderCode, order.getOrderCode()) - .eq(AcDeclarationGiftRecord::getDelFlag, 0)); - if (count > 0) { - log.warn("当前订单已同步至报单明细{}",order.getOrderCode()); - return; - } - // 查询会员信息 - R memberResult = iMemberServiceApi.getMember(order.getPkCreator()); - CuMember member = memberResult.getData(); - - if (member == null) { - log.warn("会员信息不存在, orderId={}", order.getPkId()); - return; - } - - // 组合 key 匹配活动配置 - String key = member.getRegisterAuthority() + "_" + member.getPkSettleGrade(); - AcDeclarationGiftConfig matchedConfig = configMap.get(key); - - if (matchedConfig == null) { - log.info("未找到匹配的报单赠送配置, 会员id={}, 注册权限={}, 结算等级={}", - member.getPkId(), member.getRegisterAuthority(), member.getPkSettleGrade()); - return; - } - - AcDeclarationGiftRecord record = AcDeclarationGiftRecord.builder() - .pkRuleId(matchedConfig.getPkId()) - .pkBaseId(matchedConfig.getPkBaseId()) - .orderCode(order.getOrderCode()) - .syncStatus(0) - .build(); - record.setCreationTime(new Date()); - record.setDelFlag(0); - record.setPkCreator(member.getPkId()); - record.setPkCountry(pkCountry); - // 插入数据库 - iAcDeclarationGiftRecordService.save(record); - - log.info("成功插入报单赠送记录 -> memberId={}, ruleId={}", - member.getPkId(), matchedConfig.getPkId()); - }); - return R.ok(); - } } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index e8bbc8bd..d86083a9 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -44,6 +44,7 @@ LEFT JOIN BD_GRADE bgg ON aauc.UPGRADE_LEVEL = bgg.PK_ID WHERE aauc.PK_BASE_ID = #{pkId} AND aauc.DEL_FLAG = 0 + AND aauc.ORDER_TYPE = #{orderType} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index a859d7ad..4a57bb46 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -125,5 +125,28 @@ WHERE ROWNUM = 1 + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcPickMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcPickMapper.xml index aabb8b18..16d7fd07 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcPickMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/pick/AcPickMapper.xml @@ -294,7 +294,7 @@ where ap.del_flag = 0 and ap.pk_country = #{pkCountry} and ap.pk_member = #{pkMember} - and ap.pick_type in (12, 13, 14, 15) + and ap.pick_type in (12, 13, 14, 15, 32) and ap.usable_quantity > 0 and (ap.receive_time is null or to_char(ap.receive_time, 'yyyy-mm-dd') >= to_char(sysdate, 'yyyy-mm-dd')) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java index 30ff2460..d99580ca 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/EPickType.java @@ -38,7 +38,7 @@ public enum EPickType { /** * 关联 AC_DECLARATION_GIFT_CONFIG 表 */ - DELCARATION_GIFT(32,"报单赠送") + DECLARATION_GIFT(32,"报单赠送") ; From 641bfc505cb8d00319cb33019c35e0cce36ecb9d Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 20 Oct 2025 14:43:23 +0800 Subject: [PATCH 35/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E4=BC=9A=E5=91=98=E7=AD=89=E7=BA=A7=E5=92=8C?= =?UTF-8?q?=E4=BA=A7=E5=93=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/activity/tourism/provider/AcTourismServiceProvider.java | 2 +- .../activity/declaration/AcDeclarationGiftRecordMapper.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index afbd82ea..26a3cd6e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -150,7 +150,7 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { return; } // 查询会员信息 - R memberResult = iMemberServiceApi.getMember(order.getPkCreator()); + R memberResult = iMemberServiceApi.getMember(order.getPkMember()); CuMember member = memberResult.getData(); if (member == null) { diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index 4a57bb46..6d46bab8 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -82,10 +82,10 @@ FROM AC_DECLARATION_GIFT_RECORD adgr LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID - LEFT JOIN BD_GRADE bg ON adgc.SPECIFY_LEVEL = bg.PK_ID LEFT JOIN SA_ORDER so ON adgr.ORDER_CODE = so.ORDER_CODE LEFT JOIN CU_MEMBER cm ON so.PK_REFERENCE = cm.PK_ID LEFT JOIN CU_MEMBER cmm ON so.PK_MEMBER = cmm.PK_ID + LEFT JOIN BD_GRADE bg ON cmm.PK_SETTLE_GRADE = bg.PK_ID LEFT JOIN AC_BASE_CONFIG abc ON adgr.PK_BASE_ID = abc.PK_ID WHERE so.ORDER_STATUS = 1 AND so.DEL_FLAG = 0 From d17986e1556d94d700d7d32732daaeb6337c43ba Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 20 Oct 2025 14:58:22 +0800 Subject: [PATCH 36/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E6=9D=83=E9=99=90=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../provider/AcTourismServiceProvider.java | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index 26a3cd6e..1c570859 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -149,22 +149,24 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { log.warn("当前订单已同步至报单明细{}", order.getOrderCode()); return; } - // 查询会员信息 - R memberResult = iMemberServiceApi.getMember(order.getPkMember()); - CuMember member = memberResult.getData(); - - if (member == null) { - log.warn("会员信息不存在, orderId={}", order.getPkId()); + // 查询新会员信息 + R newMemberResult = iMemberServiceApi.getMember(order.getPkMember()); + CuMember newMember = newMemberResult.getData(); + // 查询老会员信息 + R oldMemberResult = iMemberServiceApi.getMember(order.getPkCreator()); + CuMember oldMember = oldMemberResult.getData(); + if (oldMember == null || newMember == null) { + log.warn("会员信息不存在, 新会员id={},老会员id={}", order.getPkMember(), order.getPkCreator()); return; } // 组合 key 匹配活动配置 - String key = member.getRegisterAuthority() + "_" + member.getPkSettleGrade(); + String key = oldMember.getRegisterAuthority() + "_" + newMember.getPkSettleGrade(); AcDeclarationGiftConfig matchedConfig = configMap.get(key); if (matchedConfig == null) { - log.info("未找到匹配的报单赠送配置, 会员id={}, 注册权限={}, 结算等级={}", - member.getPkId(), member.getRegisterAuthority(), member.getPkSettleGrade()); + log.info("未找到匹配的报单赠送配置, 会员id={}, 老会员注册权限={}, 新会员结算等级={}", + oldMember.getPkId(), oldMember.getRegisterAuthority(), newMember.getPkSettleGrade()); return; } @@ -176,13 +178,13 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { .build(); record.setCreationTime(new Date()); record.setDelFlag(0); - record.setPkCreator(member.getPkId()); + record.setPkCreator(oldMember.getPkId()); record.setPkCountry(pkCountry); // 插入数据库 iAcDeclarationGiftRecordService.save(record); log.info("成功插入报单赠送记录 -> memberId={}, ruleId={}", - member.getPkId(), matchedConfig.getPkId()); + oldMember.getPkId(), matchedConfig.getPkId()); }); return R.ok(); } From 8ba02badc3eb05985e3ca269e32d35ee7d635cb8 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 20 Oct 2025 15:28:00 +0800 Subject: [PATCH 37/57] =?UTF-8?q?##=20=E5=AE=9E=E4=BD=93=E7=9B=AE=E5=BD=95?= =?UTF-8?q?=E4=BF=AE=E6=94=B9,=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E5=90=8C=E6=AD=A5=E5=A4=8D=E8=B4=AD=E5=8D=95=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../add/mapper/AcAddUpgradeConfigMapper.java | 2 +- .../add/mapper/AcAddUpgradeRecordMapper.java | 2 +- .../add/service/IAcAddUpgradeConfigService.java | 6 +----- .../add/service/IAcAddUpgradeRecordService.java | 2 +- .../impl/AcAddUpgradeConfigServiceImpl.java | 3 +-- .../impl/AcAddUpgradeRecordServiceImpl.java | 3 +-- .../mapper/AcDeclarationGiftConfigMapper.java | 2 +- .../mapper/AcDeclarationGiftDetailMapper.java | 2 +- .../mapper/AcDeclarationGiftRecordMapper.java | 3 +-- .../service/IAcDeclarationGiftConfigService.java | 3 +-- .../service/IAcDeclarationGiftDetailService.java | 2 +- .../service/IAcDeclarationGiftRecordService.java | 3 +-- .../impl/AcDeclarationGiftConfigServiceImpl.java | 16 ++-------------- .../impl/AcDeclarationGiftDetailServiceImpl.java | 3 +-- .../impl/AcDeclarationGiftRecordServiceImpl.java | 7 +------ .../provider/AcTourismServiceProvider.java | 14 +++++++++----- .../order/provider/SaOrderServiceProvider.java | 14 -------------- .../activity/add/AcAddUpgradeConfigMapper.xml | 2 +- .../activity/add/AcAddUpgradeRecordMapper.xml | 2 +- .../AcDeclarationGiftConfigMapper.xml | 2 +- .../AcDeclarationGiftDetailMapper.xml | 2 +- .../AcDeclarationGiftRecordMapper.xml | 4 ++-- .../domain/activity/add}/AcAddUpgradeConfig.java | 2 +- .../domain/activity/add}/AcAddUpgradeRecord.java | 2 +- .../declaration}/AcDeclarationGiftConfig.java | 2 +- .../declaration}/AcDeclarationGiftDetail.java | 2 +- .../declaration}/AcDeclarationGiftRecord.java | 2 +- 27 files changed, 36 insertions(+), 73 deletions(-) rename {bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo => bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add}/AcAddUpgradeConfig.java (97%) rename {bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo => bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add}/AcAddUpgradeRecord.java (96%) rename {bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo => bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration}/AcDeclarationGiftConfig.java (95%) rename {bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo => bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration}/AcDeclarationGiftDetail.java (96%) rename {bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo => bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration}/AcDeclarationGiftRecord.java (95%) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java index 83aab87c..2b452257 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -3,7 +3,7 @@ package com.hzs.activity.add.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; -import com.hzs.activity.add.vo.AcAddUpgradeConfig; +import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; import com.hzs.common.domain.system.config.BdGrade; import org.apache.ibatis.annotations.Param; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java index ecabc47e..6cf0b188 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeRecordMapper.java @@ -3,7 +3,7 @@ package com.hzs.activity.add.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.vo.AcAddUpgradeListVO; -import com.hzs.activity.add.vo.AcAddUpgradeRecord; +import com.hzs.common.domain.activity.add.AcAddUpgradeRecord; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java index 38a7de47..f0ee90ee 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java @@ -1,14 +1,10 @@ package com.hzs.activity.add.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.param.AcAddUpgradeParam; -import com.hzs.activity.add.vo.AcAddUpgradeConfig; -import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; import com.hzs.common.core.web.domain.AjaxResult; -import java.util.List; - /** *

* 加购升级配置表 服务类 diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java index 623f3419..ccff1cba 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeRecordService.java @@ -3,7 +3,7 @@ package com.hzs.activity.add.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.vo.AcAddUpgradeListVO; -import com.hzs.activity.add.vo.AcAddUpgradeRecord; +import com.hzs.common.domain.activity.add.AcAddUpgradeRecord; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java index 0de2b456..315a8730 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -6,8 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.add.mapper.AcAddUpgradeConfigMapper; import com.hzs.activity.add.param.*; import com.hzs.activity.add.service.IAcAddUpgradeConfigService; -import com.hzs.activity.add.vo.AcAddUpgradeConfig; -import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; import com.hzs.activity.base.param.ActivityParam; import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.base.service.IAcGoalMemberConfigService; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java index 2faa4d57..03aebe19 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeRecordServiceImpl.java @@ -5,10 +5,9 @@ import com.hzs.activity.add.mapper.AcAddUpgradeRecordMapper; import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.service.IAcAddUpgradeRecordService; import com.hzs.activity.add.vo.AcAddUpgradeListVO; -import com.hzs.activity.add.vo.AcAddUpgradeRecord; +import com.hzs.common.domain.activity.add.AcAddUpgradeRecord; import org.springframework.stereotype.Service; -import java.util.Collections; import java.util.List; /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java index 89568ce5..8c1613f4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftConfigMapper.java @@ -1,7 +1,7 @@ package com.hzs.activity.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftConfig; import com.hzs.common.domain.activity.pick.AcPick; import org.apache.ibatis.annotations.Param; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java index 8ac1fffa..cc802405 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftDetailMapper.java @@ -2,7 +2,7 @@ package com.hzs.activity.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.activity.declaration.param.AcDeclarationProductParam; -import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftDetail; import org.apache.ibatis.annotations.Param; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java index 8ada8fc1..4b850038 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -1,9 +1,8 @@ package com.hzs.activity.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.declaration.param.AcDeclarationListParam; -import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; import org.apache.ibatis.annotations.Param; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java index 03b76c4c..f7a9e007 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftConfigService.java @@ -1,9 +1,8 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.activity.add.param.AcAddUpgradeParam; import com.hzs.activity.declaration.param.AcDeclarationParam; -import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftConfig; import com.hzs.common.core.web.domain.AjaxResult; /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java index bb6f0e7e..bc891a6e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftDetailService.java @@ -2,7 +2,7 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.activity.declaration.param.AcDeclarationProductParam; -import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftDetail; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java index feb6d4f5..42c7f891 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -1,9 +1,8 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; -import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.declaration.param.AcDeclarationListParam; -import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java index 83bef513..3c55158f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftConfigServiceImpl.java @@ -2,15 +2,9 @@ package com.hzs.activity.declaration.service.impl; import cn.hutool.core.bean.BeanUtil; import com.alibaba.nacos.client.naming.utils.CollectionUtils; -import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.activity.add.param.AcAddUpgradeConfigParam; -import com.hzs.activity.add.param.AcAddUpgradeDetailParam; -import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; -import com.hzs.activity.add.vo.AcAddUpgradeConfig; import com.hzs.activity.base.param.ActivityParam; import com.hzs.activity.base.service.IAcBaseConfigService; -import com.hzs.activity.base.service.IAcGoalMemberConfigService; import com.hzs.activity.base.service.IActivityService; import com.hzs.activity.declaration.mapper.AcDeclarationGiftConfigMapper; import com.hzs.activity.declaration.param.AcDeclarationConfigParam; @@ -20,25 +14,19 @@ import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; -import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; -import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftConfig; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftDetail; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EApprovalBusiness; -import com.hzs.common.core.enums.EControlType; import com.hzs.common.core.enums.ERegistrationAuthority; -import com.hzs.common.core.utils.StringUtils; import com.hzs.common.core.web.domain.AjaxResult; import com.hzs.common.domain.activity.base.AcBaseConfig; -import com.hzs.common.domain.activity.base.AcGoalMemberConfig; -import com.hzs.common.domain.activity.pick.AcPick; import com.hzs.common.security.utils.SecurityUtils; import com.hzs.sale.product.service.IBdProductService; -import com.hzs.sale.wares.service.IBdWaresGradeService; import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java index eff83725..ed939b0f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftDetailServiceImpl.java @@ -4,10 +4,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.declaration.mapper.AcDeclarationGiftDetailMapper; import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; -import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftDetail; import org.springframework.stereotype.Service; -import java.util.Collections; import java.util.List; /** diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java index c8a75552..98324c72 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java @@ -1,17 +1,12 @@ package com.hzs.activity.declaration.service.impl; -import cn.hutool.core.bean.BeanUtil; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.hzs.activity.add.param.AcAddUpgradeListParam; -import com.hzs.activity.declaration.mapper.AcDeclarationGiftDetailMapper; import com.hzs.activity.declaration.mapper.AcDeclarationGiftRecordMapper; import com.hzs.activity.declaration.param.AcDeclarationListParam; import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.hzs.activity.declaration.vo.AcDeclarationGiftDetail; -import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.core.enums.ERegistrationAuthority; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index 1c570859..fdb60354 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -1,16 +1,16 @@ package com.hzs.activity.tourism.provider; -import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; -import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; -import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftConfig; +import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.tourism.IAcTourismServiceApi; import com.hzs.activity.tourism.service.IAcTourismDataService; import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.domain.R; +import com.hzs.common.core.enums.EOrderType; import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.sale.order.SaOrder; @@ -112,10 +112,14 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { // 查询订单 List orderList = iSaOrderService.list(new LambdaQueryWrapper() - .in(SaOrder::getOrderType, 1, 2, 4, 5) + .nested(w -> w.in(SaOrder::getOrderType, EOrderType.REGISTER_ORDER, EOrderType.UPGRADE_ORDER) + .or() + .nested(x -> x.eq(SaOrder::getOrderType, EOrderType.REPURCHASE_ORDER) + .eq(SaOrder::getOrderTypeExtend, 1))) .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) .eq(SaOrder::getOrderStatus, 1) - .eq(SaOrder::getDelFlag, 0)); + .eq(SaOrder::getDelFlag, 0) + ); log.info("{}天无有效订单,处理结束", daysAgo); // 获取所有7天前有效的报单赠送活动 List acBaseConfigList = iAcBaseConfigService.list(new LambdaQueryWrapper() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java index 96ba4614..16838b93 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/provider/SaOrderServiceProvider.java @@ -1,28 +1,20 @@ package com.hzs.sale.order.provider; import cn.hutool.core.bean.BeanUtil; -import com.alibaba.nacos.shaded.org.checkerframework.checker.units.qual.A; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.hzs.activity.base.service.IAcBaseConfigService; import com.hzs.activity.declaration.service.IAcDeclarationGiftConfigService; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; -import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; -import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; import com.hzs.common.core.constant.CacheConstants; -import com.hzs.common.core.constant.CountryConstants; import com.hzs.common.core.constant.msg.SaOrderMsgConstants; import com.hzs.common.core.domain.R; import com.hzs.common.core.enums.EOrderStatus; import com.hzs.common.core.service.RedisService; import com.hzs.common.core.utils.ComputeUtil; -import com.hzs.common.domain.activity.base.AcBaseConfig; -import com.hzs.common.domain.member.base.CuMember; import com.hzs.common.domain.member.ext.CuMemberAccountExt; import com.hzs.common.domain.sale.ext.SaOrderExt; import com.hzs.common.domain.sale.order.SaOrder; import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.member.base.IMemberServiceApi; -import com.hzs.member.detail.ICuMemberDetailServiceApi; import com.hzs.sale.order.ISaOrderServiceApi; import com.hzs.sale.order.dto.*; import com.hzs.sale.order.param.*; @@ -31,18 +23,12 @@ import com.hzs.sale.order.vo.MemberFirstOrderVo; import com.hzs.sale.order.vo.SingleItemStatVo; import com.hzs.system.sys.dto.ApprovalBusinessResultDTO; import lombok.extern.slf4j.Slf4j; -import org.apache.dubbo.config.annotation.DubboReference; import org.apache.dubbo.config.annotation.DubboService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.ZoneId; -import java.time.temporal.ChronoUnit; import java.util.*; -import java.util.function.Function; import java.util.stream.Collectors; /** diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index d86083a9..7e6be604 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -3,7 +3,7 @@ - + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml index 0c3f7d29..928d7939 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml @@ -3,7 +3,7 @@ - + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index 66b3dcf2..479f6ede 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -3,7 +3,7 @@ - + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml index 23b0d831..df6af1d2 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftDetailMapper.xml @@ -3,7 +3,7 @@ - + diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index 6d46bab8..33644375 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -3,7 +3,7 @@ - + @@ -117,7 +117,7 @@ AND adgr.CREATION_TIME <= #{creationEndTime} - SELECT * FROM diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java similarity index 97% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java rename to bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java index f05e3355..11c54201 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeConfig.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java @@ -1,4 +1,4 @@ -package com.hzs.activity.add.vo; +package com.hzs.common.domain.activity.add; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeRecord.java similarity index 96% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java rename to bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeRecord.java index bfc0848e..16a618a0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/vo/AcAddUpgradeRecord.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeRecord.java @@ -1,4 +1,4 @@ -package com.hzs.activity.add.vo; +package com.hzs.common.domain.activity.add; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftConfig.java similarity index 95% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java rename to bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftConfig.java index 4179be57..337d4db3 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftConfig.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftConfig.java @@ -1,4 +1,4 @@ -package com.hzs.activity.declaration.vo; +package com.hzs.common.domain.activity.declaration; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftDetail.java similarity index 96% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java rename to bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftDetail.java index 70bb7fa8..b7f4cab7 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftDetail.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftDetail.java @@ -1,4 +1,4 @@ -package com.hzs.activity.declaration.vo; +package com.hzs.common.domain.activity.declaration; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftRecord.java similarity index 95% rename from bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java rename to bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftRecord.java index 0698041d..7afcd09b 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationGiftRecord.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/declaration/AcDeclarationGiftRecord.java @@ -1,4 +1,4 @@ -package com.hzs.activity.declaration.vo; +package com.hzs.common.domain.activity.declaration; import com.baomidou.mybatisplus.annotation.KeySequence; import com.baomidou.mybatisplus.annotation.TableName; From db5210e04bb61779da595f90498c01df6c8eb339 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Mon, 20 Oct 2025 16:09:45 +0800 Subject: [PATCH 38/57] =?UTF-8?q?##=20=E5=90=8E=E5=8F=B0=E5=85=85=E5=80=BC?= =?UTF-8?q?=E6=8F=90=E8=B4=A7=E5=8D=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/AcDeclarationGiftRecordMapper.java | 2 +- .../service/IAcDeclarationGiftRecordService.java | 2 +- .../service/impl/AcDeclarationGiftRecordServiceImpl.java | 2 +- .../activity/pick/controller/api/ApiPickController.java | 3 ++- .../pick/controller/manage/AcPickController.java | 1 - .../com/hzs/activity/pick/service/IAcPickService.java | 1 + .../activity/pick/service/impl/AcPickServiceImpl.java | 2 +- .../wares/service/impl/AcGiftConfigServiceImpl.java | 9 +++++++++ 8 files changed, 16 insertions(+), 6 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java index 4b850038..f36ff32d 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -25,5 +25,5 @@ public interface AcDeclarationGiftRecordMapper extends BaseMapper queryListByRuleList(@Param("pkDataId") Long pkDataId,@Param("pkCountry") Integer pkCountry); + List queryListByRuleList(@Param("pkDataId") List pkDataId,@Param("pkCountry") Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java index 42c7f891..97e3856a 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -23,5 +23,5 @@ public interface IAcDeclarationGiftRecordService extends IService queryListByRuleIdList(Long pkDataId, Integer pkCountry); + List queryListByRuleIdList(List pkDataId, Integer pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java index 98324c72..fe5ad928 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java @@ -90,7 +90,7 @@ public class AcDeclarationGiftRecordServiceImpl extends ServiceImpl queryListByRuleIdList(Long pkDataId, Integer pkCountry) { + public List queryListByRuleIdList(List pkDataId, Integer pkCountry) { return baseMapper.queryListByRuleList(pkDataId,pkCountry); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/api/ApiPickController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/api/ApiPickController.java index d4be2678..f86193e2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/api/ApiPickController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/api/ApiPickController.java @@ -40,6 +40,7 @@ import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Collections; import java.util.Date; import java.util.List; import java.util.concurrent.TimeUnit; @@ -144,7 +145,7 @@ public class ApiPickController extends BaseController { break; case DECLARATION_GIFT: // 处理报单赠送活动 - List acGiftConfigExtList = iAcDeclarationGiftRecordService.queryListByRuleIdList(acPick.getPkDataId(),pkCountry); + List acGiftConfigExtList = iAcDeclarationGiftRecordService.queryListByRuleIdList(Collections.singletonList(acPick.getPkDataId()),pkCountry); for (AcGiftConfigExt acGiftConfigExt : acGiftConfigExtList) { // 处理提货产品明细 detailList.add(ApiPickDetailVO.builder() diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java index 71cc8a54..389ede58 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java @@ -76,7 +76,6 @@ public class AcPickController extends BaseController { startPage(); List acPickExtList = iAcPickService.queryList(param, pkCountry); - if (CollectionUtil.isNotEmpty(acPickExtList)) { // 活动规则ID列表 List ruleIdList = acPickExtList.stream().filter(acPickQueryVO -> EPickType.PICK_PRODUCT.getValue() != acPickQueryVO.getPickType()).map(AcPickExt::getPkDataId).collect(Collectors.toList()); diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java index bfadf279..3819ec77 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/IAcPickService.java @@ -10,6 +10,7 @@ import com.hzs.common.domain.activity.pick.ext.AcPickExt; import com.hzs.system.sys.dto.LoginUser; import java.math.BigDecimal; +import java.util.Collection; import java.util.Date; import java.util.List; diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickServiceImpl.java index 0ea01693..03c51823 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/service/impl/AcPickServiceImpl.java @@ -568,7 +568,7 @@ public class AcPickServiceImpl extends ServiceImpl impleme break; case DECLARATION_GIFT: // 报单赠送列表 - List acDecList = iAcDeclarationGiftRecordService.queryListByRuleIdList(acPick.getPkDataId(), pkCountry); + List acDecList = iAcDeclarationGiftRecordService.queryListByRuleIdList(Collections.singletonList(acPick.getPkDataId()), pkCountry); for (AcGiftConfigExt acGiftConfigExt : acDecList) { productList.add(PostageProductDTO.builder() .productId(acGiftConfigExt.getPkProduct()) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/wares/service/impl/AcGiftConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/wares/service/impl/AcGiftConfigServiceImpl.java index 1b8d0e88..4234a178 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/wares/service/impl/AcGiftConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/wares/service/impl/AcGiftConfigServiceImpl.java @@ -2,10 +2,12 @@ package com.hzs.activity.wares.service.impl; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.hzs.activity.wares.mapper.AcGiftConfigMapper; import com.hzs.activity.wares.service.IAcGiftConfigService; import com.hzs.common.domain.activity.base.AcGiftConfig; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.*; @@ -20,12 +22,19 @@ import java.util.stream.Collectors; @Service public class AcGiftConfigServiceImpl extends ServiceImpl implements IAcGiftConfigService { + @Autowired + private IAcDeclarationGiftRecordService iAcDeclarationGiftRecordService; + @Override public Map> queryListByRuleIdList(List ruleIdList, Integer pkCountry) { // 返回数据map Map> resultMap = new HashMap<>(); List acGiftConfigExtList = baseMapper.queryListByRuleIdList(ruleIdList, pkCountry); + List configExts = iAcDeclarationGiftRecordService.queryListByRuleIdList(ruleIdList, pkCountry); + if (CollectionUtil.isNotEmpty(configExts)) { + acGiftConfigExtList.addAll(configExts); + } if (CollectionUtil.isNotEmpty(acGiftConfigExtList)) { resultMap = acGiftConfigExtList.stream().collect(Collectors.groupingBy(AcGiftConfigExt::getPkRuleId)); } From 56c26c9d80c29f8a1aebc5791652e6380ddc2cc7 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 21 Oct 2025 09:15:44 +0800 Subject: [PATCH 39/57] =?UTF-8?q?##=20=E6=B7=BB=E5=8A=A0=E6=8A=A5=E5=8D=95?= =?UTF-8?q?=E8=B5=A0=E9=80=81=E6=80=BB=E8=AE=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AcDeclarationGiftRecordController.java | 31 ++++- .../mapper/AcDeclarationGiftRecordMapper.java | 4 + .../param/AcDeclarationListTotalParam.java | 19 +++ .../IAcDeclarationGiftRecordService.java | 4 + .../AcDeclarationGiftRecordServiceImpl.java | 7 ++ .../vo/AcDeclarationTotalListVO.java | 42 +++++++ .../provider/AcTourismServiceProvider.java | 4 +- .../AcDeclarationGiftConfigMapper.xml | 1 + .../AcDeclarationGiftRecordMapper.xml | 109 ++++++++++++------ .../common/core/enums/EOperationBusiness.java | 4 + .../common/core/enums/EOperationModule.java | 5 +- 11 files changed, 189 insertions(+), 41 deletions(-) create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListTotalParam.java create mode 100644 bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationTotalListVO.java diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java index 9a9a8b31..6c916d5f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/controller/manage/AcDeclarationGiftRecordController.java @@ -3,8 +3,10 @@ package com.hzs.activity.declaration.controller.manage; import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.declaration.param.AcDeclarationListParam; +import com.hzs.activity.declaration.param.AcDeclarationListTotalParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.hzs.activity.declaration.vo.AcDeclarationListVO; +import com.hzs.activity.declaration.vo.AcDeclarationTotalListVO; import com.hzs.common.core.annotation.Log; import com.hzs.common.core.enums.EOperationBusiness; import com.hzs.common.core.enums.EOperationMethod; @@ -54,6 +56,33 @@ public class AcDeclarationGiftRecordController extends BaseController { startPage(); List list = acDeclarationGiftRecordService.selectDeclarationList(param); ExcelUtil util = new ExcelUtil<>(AcDeclarationListVO.class); - util.exportExcel(response, list, "报单赠送数据导出"); + util.exportExcel(response, list, "报单赠送明细数据导出"); } + /** + * + * @param param + * @return + */ + @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST_TOTAL, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST_TOTAL, method = EOperationMethod.SELECT) + @GetMapping("/list-total") + public TableDataInfo directPushUpgradeListTotal(AcDeclarationListTotalParam param) { + startPage(); + return getDataTable(acDeclarationGiftRecordService.selectDeclarationListTotal(param)); + } + + /** + * + * @param param + * @return + */ + @Log(module = EOperationModule.AC_DECLARATION_GIFT_LIST_TOTAL_EXPORT, business = EOperationBusiness.AC_DECLARATION_GIFT_LIST_TOTAL_EXPORT, method = EOperationMethod.SELECT) + @PostMapping("/list-total-export") + public void directPushUpgradeListTotalExport(AcDeclarationListTotalParam param, HttpServletResponse response) { + startPage(); + List list = acDeclarationGiftRecordService.selectDeclarationListTotal(param); + ExcelUtil util = new ExcelUtil<>(AcDeclarationTotalListVO.class); + util.exportExcel(response, list, "报单赠送总计数据导出"); + } + + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java index f36ff32d..0d47198f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/mapper/AcDeclarationGiftRecordMapper.java @@ -2,6 +2,8 @@ package com.hzs.activity.declaration.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.hzs.activity.declaration.param.AcDeclarationListParam; +import com.hzs.activity.declaration.param.AcDeclarationListTotalParam; +import com.hzs.activity.declaration.vo.AcDeclarationTotalListVO; import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; @@ -26,4 +28,6 @@ public interface AcDeclarationGiftRecordMapper extends BaseMapper queryListByRuleList(@Param("pkDataId") List pkDataId,@Param("pkCountry") Integer pkCountry); + + List selectDeclarationListTotal(AcDeclarationListTotalParam param); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListTotalParam.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListTotalParam.java new file mode 100644 index 00000000..b424ea40 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/param/AcDeclarationListTotalParam.java @@ -0,0 +1,19 @@ +package com.hzs.activity.declaration.param; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationListTotalParam { + /** + * 活动名称 + */ + private String actName; + /** + * 产品编号 + */ + private String productCode; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java index 97e3856a..32d0c1cf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/IAcDeclarationGiftRecordService.java @@ -2,6 +2,8 @@ package com.hzs.activity.declaration.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.activity.declaration.param.AcDeclarationListParam; +import com.hzs.activity.declaration.param.AcDeclarationListTotalParam; +import com.hzs.activity.declaration.vo.AcDeclarationTotalListVO; import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; @@ -24,4 +26,6 @@ public interface IAcDeclarationGiftRecordService extends IService queryListByRuleIdList(List pkDataId, Integer pkCountry); + + List selectDeclarationListTotal(AcDeclarationListTotalParam param); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java index fe5ad928..d81230db 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/service/impl/AcDeclarationGiftRecordServiceImpl.java @@ -2,10 +2,12 @@ package com.hzs.activity.declaration.service.impl; import com.hzs.activity.declaration.mapper.AcDeclarationGiftRecordMapper; import com.hzs.activity.declaration.param.AcDeclarationListParam; +import com.hzs.activity.declaration.param.AcDeclarationListTotalParam; import com.hzs.activity.declaration.param.AcDeclarationProductParam; import com.hzs.activity.declaration.service.IAcDeclarationGiftDetailService; import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.declaration.vo.AcDeclarationTotalListVO; import com.hzs.common.domain.activity.declaration.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; import com.hzs.common.core.enums.ERegistrationAuthority; @@ -94,4 +96,9 @@ public class AcDeclarationGiftRecordServiceImpl extends ServiceImpl selectDeclarationListTotal(AcDeclarationListTotalParam param) { + return baseMapper.selectDeclarationListTotal(param); + } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationTotalListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationTotalListVO.java new file mode 100644 index 00000000..75cb6060 --- /dev/null +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationTotalListVO.java @@ -0,0 +1,42 @@ +package com.hzs.activity.declaration.vo; + +import com.hzs.common.core.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class AcDeclarationTotalListVO { + + /** + * 活动名称 + */ + @Excel(name = "活动名称") + private String actName; + + /** + * 产品名称 + */ + @Excel(name = "产品名称") + private String productName; + + /** + * 产品编号 + */ + @Excel(name = "产品编号") + private String productCode; + + /** + * 产品规格 + */ + @Excel(name = "产品规格") + private String specsName; + + /** + * 数量 + */ + @Excel(name = "数量") + private Integer quantity; +} diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index fdb60354..762c7dd5 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -112,9 +112,9 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { // 查询订单 List orderList = iSaOrderService.list(new LambdaQueryWrapper() - .nested(w -> w.in(SaOrder::getOrderType, EOrderType.REGISTER_ORDER, EOrderType.UPGRADE_ORDER) + .nested(w -> w.in(SaOrder::getOrderType, EOrderType.REGISTER_ORDER.getValue(), EOrderType.UPGRADE_ORDER.getValue()) .or() - .nested(x -> x.eq(SaOrder::getOrderType, EOrderType.REPURCHASE_ORDER) + .nested(x -> x.eq(SaOrder::getOrderType, EOrderType.REPURCHASE_ORDER.getValue()) .eq(SaOrder::getOrderTypeExtend, 1))) .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) .eq(SaOrder::getOrderStatus, 1) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index 479f6ede..6c841216 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -70,6 +70,7 @@ AND tgt.SPECS_NAME = src.SPECS_NAME AND tgt.SPECS_NAME_ID = src.SPECS_NAME_ID AND tgt.PK_BASE_ID = src.PK_BASE_ID + AND tgt.DEL_FLAG = src.DEL_FLAG ) WHEN MATCHED THEN UPDATE diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index 33644375..8ab6c9a4 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -4,23 +4,24 @@ - - - - - - - - - - - - + + + + + + + + + + + + - DEL_FLAG, + DEL_FLAG + , CREATION_TIME, PK_CREATOR, MODIFIED_TIME, @@ -69,26 +70,26 @@ + 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 9eff93ea..b92c6aaa 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 @@ -280,6 +280,10 @@ public enum EOperationBusiness { AC_DECLARATION_GIFT_LIST_EXPORT("报单赠送数据导出"), + AC_DECLARATION_GIFT_LIST_TOTAL("报单赠送总计数据"), + + AC_DECLARATION_GIFT_LIST_TOTAL_EXPORT("报单赠送总计数据导出"), + AC_TOURISM_CONFIG("旅游活动"), TICKET_GIVE("门票活动"), 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 defde74f..703fc2b7 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 @@ -385,9 +385,12 @@ public enum EOperationModule { AC_DECLARATION_GIFT_EXPORT("报单赠送导出"), - AC_DECLARATION_GIFT_LIST("报单赠送数据"), + AC_DECLARATION_GIFT_LIST("报单赠送明细数据"), AC_DECLARATION_GIFT_LIST_EXPORT("报单赠送数据导出"), + AC_DECLARATION_GIFT_LIST_TOTAL("报单赠送总计数据"), + + AC_DECLARATION_GIFT_LIST_TOTAL_EXPORT("报单赠送总计数据导出"), ///////////////////////////统计分析//////////////////////////// From a2965823044d7670f4f7f874c90eca3c20d52e1b Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 21 Oct 2025 11:54:32 +0800 Subject: [PATCH 40/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../add/mapper/AcAddUpgradeConfigMapper.java | 16 ++++ .../service/IAcAddUpgradeConfigService.java | 13 +++- .../impl/AcAddUpgradeConfigServiceImpl.java | 47 +++++++++++- .../api/ApiRegSaOrderController.java | 18 ++++- .../com/hzs/sale/order/param/OrderReturn.java | 6 +- .../sale/order/service/ISaOrderService.java | 2 +- .../service/impl/SaOrderServiceImpl.java | 73 +++++++++++++------ .../activity/add/AcAddUpgradeConfigMapper.xml | 58 ++++++++++++++- .../activity/add/AcAddUpgradeConfig.java | 6 +- .../add/ext/AcAddUpgradeConfigExt.java | 28 +++++++ 10 files changed, 229 insertions(+), 38 deletions(-) create mode 100644 bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java index 2b452257..fda3a770 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -5,6 +5,7 @@ import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam; import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; import com.hzs.activity.add.vo.AcAddUpgradeListVO; +import com.hzs.common.domain.activity.add.ext.AcAddUpgradeConfigExt; import com.hzs.common.domain.system.config.BdGrade; import org.apache.ibatis.annotations.Param; @@ -28,4 +29,19 @@ public interface AcAddUpgradeConfigMapper extends BaseMapper List queryList(AcAddUpgradeListParam param); BdGrade selectGradeValue(@Param("pkId") Integer pkId); + + /** + * 查询符合条件的规则 + */ + AcAddUpgradeConfigExt getUpgradeConfig(@Param("orderType") Integer orderType, + @Param("waresCodeList") List waresCodeList, + @Param("pkGrade") Integer pkGrade); + + /** + * 查询符合条件的规则 + */ + AcAddUpgradeConfigExt getUpgradeConfigByPkWares(@Param("orderType") Integer orderType, + @Param("pkWaresList") List pkWaresList, + @Param("pkGrade") Integer pkGrade); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java index f0ee90ee..f3fb89f8 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/IAcAddUpgradeConfigService.java @@ -2,8 +2,14 @@ package com.hzs.activity.add.service; import com.baomidou.mybatisplus.extension.service.IService; import com.hzs.activity.add.param.AcAddUpgradeParam; -import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; +import com.hzs.common.domain.sale.order.SaOrderItems; +import com.hzs.sale.order.param.OrderParam; +import com.hzs.sale.order.param.OrderReturn; +import com.hzs.system.config.dto.GradeDTO; + +import java.util.List; /** *

@@ -18,4 +24,9 @@ public interface IAcAddUpgradeConfigService extends IService String onLinePetition(AcAddUpgradeParam acAddUpgradeParam); AjaxResult getDetail(Integer pkId); + + void handleAddUpgrade(OrderParam orderParam, OrderReturn orderReturn); + + GradeDTO handleAddUpgrade(Integer specialArea, List orderItemsList, Integer pkGrade); + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java index 315a8730..938de98e 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -1,6 +1,7 @@ package com.hzs.activity.add.service.impl; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hzs.activity.add.mapper.AcAddUpgradeConfigMapper; @@ -15,10 +16,16 @@ import com.hzs.common.core.enums.EActType; import com.hzs.common.core.enums.EApprovalBusiness; import com.hzs.common.core.enums.EControlType; import com.hzs.common.core.web.domain.AjaxResult; +import com.hzs.common.domain.activity.add.ext.AcAddUpgradeConfigExt; import com.hzs.common.domain.activity.base.AcBaseConfig; import com.hzs.common.domain.activity.base.AcGoalMemberConfig; +import com.hzs.common.domain.sale.order.SaOrderItems; import com.hzs.common.domain.system.config.BdGrade; import com.hzs.common.security.utils.SecurityUtils; +import com.hzs.sale.order.param.OrderItemsParam; +import com.hzs.sale.order.param.OrderParam; +import com.hzs.sale.order.param.OrderReturn; +import com.hzs.system.config.dto.GradeDTO; import com.hzs.system.sys.dto.LoginUser; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; @@ -26,6 +33,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.*; +import java.util.stream.Collectors; /** *

@@ -75,7 +83,7 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl() .eq(AcAddUpgradeConfig::getPkBaseId, pkId)); // 添加加购活动配置 - saveAddUpgradeConfig(acAddUpgradeConfigParam,baseConfig); + saveAddUpgradeConfig(acAddUpgradeConfigParam, baseConfig); } } - private void saveAddUpgradeConfig(List acAddUpgradeConfigParam,AcBaseConfig acBaseConfig) { + private void saveAddUpgradeConfig(List acAddUpgradeConfigParam, AcBaseConfig acBaseConfig) { acAddUpgradeConfigParam.forEach(item -> { List acAddUpgradeRuleConfigParams = item.getAcAddUpgradeRuleConfigParams(); if (acAddUpgradeRuleConfigParams != null) { @@ -178,4 +186,37 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl orderItemsParams = orderParam.getOrderItemsParams(); + if (CollectionUtil.isEmpty(orderItemsParams)) { + return; + } + List waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); + + AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfig(orderParam.getSpecialArea(), waresCodeList, orderReturn.getPkGradeTmp()); + if (null != configExt) { + orderReturn.setPkGradeVal(configExt.getGradeName()); + } + } + + @Override + public GradeDTO handleAddUpgrade(Integer specialArea, List orderItemsList, Integer pkGrade) { + if (CollectionUtil.isEmpty(orderItemsList)) { + return null; + } + List pkWaresList = orderItemsList.stream().map(SaOrderItems::getPkWares).collect(Collectors.toList()); + AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfigByPkWares(specialArea, pkWaresList, pkGrade); + if (null != configExt) { + return GradeDTO.builder() + .pkId(configExt.getUpgradeLevel()) + .gradeName(configExt.getGradeName()) + .pkAwards(configExt.getPkAwards()) + .registerAuthority(configExt.getRegisterAuthority()) + .build(); + } + return null; + } + } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java index a9872dbe..8cbdb2bf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/controller/api/ApiRegSaOrderController.java @@ -2,6 +2,7 @@ package com.hzs.sale.order.controller.api; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; +import com.hzs.activity.add.service.IAcAddUpgradeConfigService; import com.hzs.activity.pick.IAcPickServiceApi; import com.hzs.common.core.annotation.RepeatSubmit; import com.hzs.common.core.config.BdConfig; @@ -32,6 +33,7 @@ import com.hzs.system.config.IGradeServiceApi; import com.hzs.system.config.dto.GradeDTO; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboReference; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -47,6 +49,9 @@ import java.util.concurrent.TimeUnit; @Slf4j public class ApiRegSaOrderController extends ParentOrderController { + @Autowired + private IAcAddUpgradeConfigService iAcAddUpgradeConfigService; + @DubboReference IGradeServiceApi iGradeServiceApi; @DubboReference @@ -251,7 +256,8 @@ public class ApiRegSaOrderController extends ParentOrderController { CuMember parentCuMember = getOrderService().getCuMemberByKey(cuMember.getPkParent()); CuMember placeCuMember = getOrderService().getCuMemberByKey(cuMember.getPkPlaceParent()); GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); + orderReturn.setPkGrade(gradeDTO.getPkId()); + orderReturn.setPkGradeVal(gradeDTO.getGradeName()); orderReturn.setPhone(cuMember.getPhone()); orderReturn.setParent(CommonUtil.getMemberCode(parentCuMember.getMemberCode(), parentCuMember.getServiceCode())); orderReturn.setPlaceParent(CommonUtil.getMemberCode(placeCuMember.getMemberCode(), placeCuMember.getServiceCode())); @@ -266,9 +272,10 @@ public class ApiRegSaOrderController extends ParentOrderController { orderReturn.setSource(cuMember.getSource()); } else if (EOrderType.UPGRADE_ORDER.getValue() == saOrder.getOrderType() || EOrderType.SPECIAL_UPGRADE_ORDER.getValue() == saOrder.getOrderType()) { - getOrderService().setLastCuMemberGrade(cuMember, saOrder); + getOrderService().setLastCuMemberGrade(cuMember, saOrder, null); GradeDTO gradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); + orderReturn.setPkGrade(gradeDTO.getPkId()); + orderReturn.setPkGradeVal(gradeDTO.getGradeName()); } } } else if (EOrderType.PICK_ORDER.getValue() == orderParam.getSpecialArea()) { @@ -282,7 +289,8 @@ public class ApiRegSaOrderController extends ParentOrderController { orderParam = redisService.getCacheObject(CacheConstants.TEMP_PARAM + SecurityUtils.getUserId() + orderParam.getOrderCode()); if (orderParam.getPkGrade() != null) { GradeDTO gradeDTO = iGradeServiceApi.getGrade(orderParam.getPkGrade()).getData(); - orderReturn.setPkGrade(gradeDTO.getPkTransaction()); + orderReturn.setPkGrade(gradeDTO.getPkId()); + orderReturn.setPkGradeVal(gradeDTO.getGradeName()); } orderReturn.setMemberCode(orderParam.getMemberCode()); orderReturn.setMemberName(orderParam.getMemberName()); @@ -474,6 +482,8 @@ public class ApiRegSaOrderController extends ParentOrderController { // 返回计算等级 OrderReturn orderReturn = getOrderService().computeLevel(orderParam); if (orderReturn.getIsEnough()) { + // TODO 2025.10.20,如果满足升级条件,判断是否有加购升级活动 + iAcAddUpgradeConfigService.handleAddUpgrade(orderParam, orderReturn); return AjaxResult.success(orderReturn); } else { if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() || diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderReturn.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderReturn.java index bad8e084..07ac3faf 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderReturn.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/param/OrderReturn.java @@ -117,7 +117,6 @@ public class OrderReturn implements Serializable { /** * 等级 */ - @Transaction(transactionKey = EnumsPrefixConstants.KEY_GRADE) private Integer pkGrade; /** @@ -125,6 +124,11 @@ public class OrderReturn implements Serializable { */ private String pkGradeVal; + /** + * 临时等级值 + */ + private Integer pkGradeTmp; + /** * 手机号码 */ diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java index f8560fa4..a70aae09 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/ISaOrderService.java @@ -172,7 +172,7 @@ public interface ISaOrderService extends IService { /* * 这是会员等级 **/ - Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt); + Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt, List orderItemsList); /** * 点击支付按钮,输入密码,确认下单(注册订单) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 1c00f011..eafb0bfe 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -13,6 +13,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hzs.activity.add.service.IAcAddUpgradeConfigService; import com.hzs.activity.pick.service.IAcPickService; import com.hzs.common.core.config.BdConfig; import com.hzs.common.core.constant.*; @@ -163,6 +164,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl private IBdWaresMemberLimitService iBdWaresMemberLimitService; @Autowired private ISaOrderSyncService iSaOrderSyncService; + @Autowired + private IAcAddUpgradeConfigService iAcAddUpgradeConfigService; @Autowired private UserTokenService userTokenService; @@ -474,7 +477,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); // 设置会员等级 - if (setLastCuMemberGrade(cuMember, saOrderExt)) { + if (setLastCuMemberGrade(cuMember, saOrderExt, saOrderExt.getOrderItemsList())) { return false; } // cabbage 这个位置的订单只用于注册订单确认,支付单独有别的地方处理 @@ -511,7 +514,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl @Override public SaOrderExt packageSaOrder(OrderParam orderParam, CuMember cuMember) { SaOrderExt saOrderExt = packageWholeSaOrder(orderParam, cuMember); - if (setLastCuMemberGrade(cuMember, saOrderExt)) { + if (setLastCuMemberGrade(cuMember, saOrderExt, null)) { return null; } // cabbage 这个位置的订单只用于注册订单支付,支付这个处理和确认不是一个地方 @@ -549,7 +552,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl } @Override - public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt) { + public Boolean setLastCuMemberGrade(CuMember cuMember, SaOrder saOrderExt, List orderItemsList) { OrderReturn orderReturn = OrderReturn.builder().isEnough(false).build(); GradeDTO gradeDTO = calculateGradeDTO(saOrderExt.getOrderType(), cuMember.getPkSettleCountry(), cuMember.getPkId(), saOrderExt, orderReturn); @@ -606,27 +609,49 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } - // 判断奖衔,原会员有奖衔的话判断哪个大,使用大的 - if (pkAwards != null && gradeDTO.getGradeValue() != null) { - BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(pkAwards).getData(); - BdAwards newAwards = iAwardsServiceApi.getAwardsOne(gradeDTO.getPkAwards()).getData(); - if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { - cuMember.setPkAwards(gradeDTO.getPkAwards()); + // TODO 2025.10.20 处理加购升级活动 + GradeDTO acGradeDTO = iAcAddUpgradeConfigService.handleAddUpgrade(saOrderExt.getOrderType(), orderItemsList, gradeDTO.getPkId()); + if (null != acGradeDTO) { + // 达到活动升级,需要处理 + cuMember.setPkSettleGrade(acGradeDTO.getPkId()); + cuMember.setPkSettleGradeValue(acGradeDTO.getGradeValue()); + + if (pkAwards != null && acGradeDTO.getGradeValue() != null) { + BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(pkAwards).getData(); + BdAwards newAwards = iAwardsServiceApi.getAwardsOne(acGradeDTO.getPkAwards()).getData(); + if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { + cuMember.setPkAwards(acGradeDTO.getPkAwards()); + } + } else { + cuMember.setPkAwards(acGradeDTO.getPkAwards()); + } + if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < acGradeDTO.getRegisterAuthority()) { + cuMember.setRegisterAuthority(acGradeDTO.getRegisterAuthority()); } - } else { - cuMember.setPkAwards(gradeDTO.getPkAwards()); - } - // 等级对应的结算值 - cuMember.setConsumeMoney(saOrderExt.getOrderAmount()); - if (EGrade.HAI_FAN.getValue() == gradeDTO.getGradeValue()) { - // 顾客注册会员显示订单业绩 cuMember.setConsumeAchieve(saOrderExt.getOrderAchieve()); } else { - cuMember.setConsumeAchieve(gradeDTO.getStartValue()); - } - if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < gradeDTO.getRegisterAuthority()) { - cuMember.setRegisterAuthority(gradeDTO.getRegisterAuthority()); + // 判断奖衔,原会员有奖衔的话判断哪个大,使用大的 + if (pkAwards != null && gradeDTO.getGradeValue() != null) { + BdAwards bdAwards = iAwardsServiceApi.getAwardsOne(pkAwards).getData(); + BdAwards newAwards = iAwardsServiceApi.getAwardsOne(gradeDTO.getPkAwards()).getData(); + if (bdAwards.getAwardsValue() < newAwards.getAwardsValue()) { + cuMember.setPkAwards(gradeDTO.getPkAwards()); + } + } else { + cuMember.setPkAwards(gradeDTO.getPkAwards()); + } + if (cuMember.getRegisterAuthority() == null || cuMember.getRegisterAuthority() < gradeDTO.getRegisterAuthority()) { + cuMember.setRegisterAuthority(gradeDTO.getRegisterAuthority()); + } + if (EGrade.HAI_FAN.getValue() == gradeDTO.getGradeValue()) { + // 顾客注册会员显示订单业绩 + cuMember.setConsumeAchieve(saOrderExt.getOrderAchieve()); + } else { + cuMember.setConsumeAchieve(gradeDTO.getStartValue()); + } } + cuMember.setConsumeMoney(saOrderExt.getOrderAmount()); + return false; } @@ -742,7 +767,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl } else { newCuMember.setConsumeMoney(BigDecimal.ZERO); newCuMember.setConsumeAchieve(BigDecimal.ZERO); - if (setLastCuMemberGrade(newCuMember, saOrderExt)) { + if (setLastCuMemberGrade(newCuMember, saOrderExt, saOrderExt.getOrderItemsList())) { return false; } if (isHaiFun) { @@ -942,7 +967,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl CuMember cuMember = getCuMemberByKey(saOrderExt.getPkMember()); GradeDTO oldGradeDTO = iGradeServiceApi.getGrade(cuMember.getPkSettleGrade()).getData(); // 封装等级,重新计算会员等级 - if (setLastCuMemberGrade(cuMember, saOrderExt)) { + if (setLastCuMemberGrade(cuMember, saOrderExt, saOrderExt.getOrderItemsList())) { return false; } // 验证等级,原等级<新等级,才可以进行升级 或者 累计升级 @@ -1028,7 +1053,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 升级订单验证等级 if (EOrderType.UPGRADE_ORDER.getValue() == orderParam.getSpecialArea() || EOrderType.SPECIAL_UPGRADE_ORDER.getValue() == orderParam.getSpecialArea()) { - if (setLastCuMemberGrade(cuMember, saOrderExt)) { + if (setLastCuMemberGrade(cuMember, saOrderExt, saOrderExt.getOrderItemsList())) { return false; } } else if (EOrderType.MALL_ORDER.getValue() == orderParam.getSpecialArea()) { @@ -1193,6 +1218,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl orderReturn.setIsEnough(Boolean.TRUE); CuMember member = getCuMemberByKey(orderParam.getCenterCodeId()); GradeDTO grade = iGradeServiceApi.getGrade(member.getPkSettleGrade()).getData(); + orderReturn.setPkGradeTmp(grade.getPkId()); orderReturn.setPkGradeVal(grade.getGradeName()); return orderReturn; } @@ -1222,6 +1248,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl } } + orderReturn.setPkGradeTmp(gradeDTO.getPkId()); orderReturn.setPkGradeVal(gradeDTO.getGradeName()); return orderReturn; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index 7e6be604..5e0dd3cc 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -44,7 +44,7 @@ LEFT JOIN BD_GRADE bgg ON aauc.UPGRADE_LEVEL = bgg.PK_ID WHERE aauc.PK_BASE_ID = #{pkId} AND aauc.DEL_FLAG = 0 - AND aauc.ORDER_TYPE = #{orderType} + AND aauc.ORDER_TYPE = #{orderType} + + + + + diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java index 11c54201..3797bc87 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/AcAddUpgradeConfig.java @@ -5,9 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableField; import com.hzs.common.core.web.domain.BaseEntity; -import lombok.Builder; -import lombok.Data; -import lombok.EqualsAndHashCode; +import lombok.*; import lombok.experimental.Accessors; /** @@ -19,6 +17,8 @@ import lombok.experimental.Accessors; * @since 2025-10-13 */ @Data +@AllArgsConstructor +@NoArgsConstructor @EqualsAndHashCode(callSuper = true) @Accessors(chain = true) @TableName("AC_ADD_UPGRADE_CONFIG") diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java new file mode 100644 index 00000000..092e3488 --- /dev/null +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java @@ -0,0 +1,28 @@ +package com.hzs.common.domain.activity.add.ext; + +import com.hzs.common.domain.activity.add.AcAddUpgradeConfig; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +public class AcAddUpgradeConfigExt extends AcAddUpgradeConfig { + + /** + * 等级名称 + */ + private String gradeName; + /** + * 等级值 + */ + private Integer gradeValue; + /** + * 奖衔ID + */ + private Integer pkAwards; + /** + * 注册权限 + */ + private Integer registerAuthority; + +} From 84558a35520267fbc7ccf0c7b178eb656708fbf0 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Tue, 21 Oct 2025 13:42:00 +0800 Subject: [PATCH 41/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../add/mapper/AcAddUpgradeConfigMapper.java | 12 +---- .../impl/AcAddUpgradeConfigServiceImpl.java | 40 ++++++++++----- .../activity/add/AcAddUpgradeConfigMapper.xml | 50 +++++-------------- .../add/ext/AcAddUpgradeConfigExt.java | 5 ++ 4 files changed, 46 insertions(+), 61 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java index fda3a770..a5a6bac2 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/mapper/AcAddUpgradeConfigMapper.java @@ -33,15 +33,7 @@ public interface AcAddUpgradeConfigMapper extends BaseMapper /** * 查询符合条件的规则 */ - AcAddUpgradeConfigExt getUpgradeConfig(@Param("orderType") Integer orderType, - @Param("waresCodeList") List waresCodeList, - @Param("pkGrade") Integer pkGrade); - - /** - * 查询符合条件的规则 - */ - AcAddUpgradeConfigExt getUpgradeConfigByPkWares(@Param("orderType") Integer orderType, - @Param("pkWaresList") List pkWaresList, - @Param("pkGrade") Integer pkGrade); + List getUpgradeConfig(@Param("orderType") Integer orderType, + @Param("pkGrade") Integer pkGrade); } diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java index 938de98e..f31d59d0 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/add/service/impl/AcAddUpgradeConfigServiceImpl.java @@ -193,11 +193,18 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl waresCodeList = orderItemsParams.stream().map(OrderItemsParam::getWaresCode).collect(Collectors.toList()); - AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfig(orderParam.getSpecialArea(), waresCodeList, orderReturn.getPkGradeTmp()); - if (null != configExt) { - orderReturn.setPkGradeVal(configExt.getGradeName()); + List configExtList = baseMapper.getUpgradeConfig(orderParam.getSpecialArea(), orderReturn.getPkGradeTmp()); + if (CollectionUtil.isNotEmpty(configExtList)) { + for (AcAddUpgradeConfigExt configExt : configExtList) { + for (OrderItemsParam orderItemsParam : orderItemsParams) { + if (orderItemsParam.getWaresCode().equals(configExt.getWaresCode()) + && orderItemsParam.getQuantity() >= configExt.getQuantity()) { + orderReturn.setPkGradeVal(configExt.getGradeName()); + return; + } + } + } } } @@ -206,15 +213,22 @@ public class AcAddUpgradeConfigServiceImpl extends ServiceImpl pkWaresList = orderItemsList.stream().map(SaOrderItems::getPkWares).collect(Collectors.toList()); - AcAddUpgradeConfigExt configExt = baseMapper.getUpgradeConfigByPkWares(specialArea, pkWaresList, pkGrade); - if (null != configExt) { - return GradeDTO.builder() - .pkId(configExt.getUpgradeLevel()) - .gradeName(configExt.getGradeName()) - .pkAwards(configExt.getPkAwards()) - .registerAuthority(configExt.getRegisterAuthority()) - .build(); + + List configExtList = baseMapper.getUpgradeConfig(specialArea, pkGrade); + if (CollectionUtil.isNotEmpty(configExtList)) { + for (AcAddUpgradeConfigExt configExt : configExtList) { + for (SaOrderItems orderItemsParam : orderItemsList) { + if (orderItemsParam.getPkWares().equals(configExt.getPkWares()) + && orderItemsParam.getWaresQuantity() >= configExt.getQuantity()) { + return GradeDTO.builder() + .pkId(configExt.getUpgradeLevel()) + .gradeName(configExt.getGradeName()) + .pkAwards(configExt.getPkAwards()) + .registerAuthority(configExt.getRegisterAuthority()) + .build(); + } + } + } } return null; } diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml index 5e0dd3cc..f6bba2c9 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeConfigMapper.xml @@ -97,12 +97,19 @@ - - diff --git a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java index 092e3488..014a0ed0 100644 --- a/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java +++ b/bd-common/bd-common-domain/src/main/java/com/hzs/common/domain/activity/add/ext/AcAddUpgradeConfigExt.java @@ -25,4 +25,9 @@ public class AcAddUpgradeConfigExt extends AcAddUpgradeConfig { */ private Integer registerAuthority; + /** + * 商品编号 + */ + private String waresCode; + } From d3a5667f451f245f02592fd26d7947429de24dd7 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Tue, 21 Oct 2025 14:24:36 +0800 Subject: [PATCH 42/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=8F=90=E8=B4=A7=E5=88=97=E8=A1=A8=E5=90=88=E5=B9=B6=E6=95=B0?= =?UTF-8?q?=E6=8D=AE,=E5=90=8E=E5=8F=B0=E5=85=85=E5=80=BC=E6=8F=90?= =?UTF-8?q?=E8=B4=A7=E5=8D=A1=E4=BA=A7=E5=93=81=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/manage/AcPickController.java | 2 +- .../AcDeclarationGiftConfigMapper.xml | 202 +++++++++--------- .../mapper/activity/pick/AcPickMapper.xml | 2 +- .../java/com/hzs/third/job/ActivityJob.java | 2 + 4 files changed, 102 insertions(+), 106 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java index 389ede58..771b9380 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/pick/controller/manage/AcPickController.java @@ -91,7 +91,7 @@ public class AcPickController extends BaseController { acPickQueryVO.setPickTypeVal(EPickType.getEnumByValue(acPickQueryVO.getPickType()).getLabel()); - if (EPickType.PICK_PRODUCT.getValue() == acPickExt.getPickType()) { + if (EPickType.PICK_PRODUCT.getValue() == acPickExt.getPickType() || EPickType.DECLARATION_GIFT.getValue() == acPickExt.getPickType()) { // 提货产品 acPickQueryVO.setDetailList(Collections.singletonList(AcPickQueryDetailVO.builder() .productName(acPickExt.getProductName()) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index 6c841216..a8d03145 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -31,117 +31,111 @@ PK_COUNTRY, PK_ID, PK_BASE_ID, REGISTER_AUTHORITY, PK_PRODUCT, SPECS_NAME, SPECS_NAME_ID, QUANTITY, LEVEL - - DECLARE v_error_count NUMBER := 0; - BEGIN - BEGIN - MERGE INTO AC_PICK tgt USING ( - SELECT - adgr.PK_ID AS SRC_ID, - so.PK_CREATOR AS PK_MEMBER, - 32 AS PICK_TYPE, - adgc.PK_ID AS PK_BASE_CONFIG, - adgd.PK_PRODUCT AS PK_DATA_ID, - adgd.SPECS_NAME AS SPECS_NAME, - adgd.SPECS_NAME_ID AS SPECS_NAME_ID, - adgd.QUANTITY AS USABLE_QUANTITY, - bp.COVER AS PICK_COVER, - 0 AS IS_FREE_MAIL, - 0 AS DEL_FLAG, - adgd.QUANTITY AS BASE_QUANTITY, - adgr.PK_BASE_ID AS PK_BASE_ID, - SYSDATE AS CREATION_TIME, - 100000000 AS PK_CREATOR, - #{pkCountry} AS PK_COUNTRY - FROM - AC_DECLARATION_GIFT_RECORD adgr - LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID - LEFT JOIN AC_DECLARATION_GIFT_DETAIL adgd ON adgc.PK_ID = adgd.PK_RULE_ID - LEFT JOIN BD_PRODUCT bp ON adgd.PK_PRODUCT = bp.PK_ID - LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT - LEFT JOIN SA_ORDER so ON adgr.ORDER_CODE = so.ORDER_CODE - WHERE - adgr.SYNC_STATUS = 0 - OR adgr.SYNC_STATUS = 2 - ) src ON ( + DECLARE + v_error_count NUMBER := 0; + BEGIN + BEGIN + MERGE INTO AC_PICK tgt + USING (SELECT adgr.PK_BASE_ID, + so.PK_CREATOR AS PK_MEMBER, + 32 AS PICK_TYPE, + adgd.PK_PRODUCT AS PK_DATA_ID, + adgd.SPECS_NAME, + adgd.SPECS_NAME_ID, + SUM(adgd.QUANTITY) AS USABLE_QUANTITY, + bp.COVER AS PICK_COVER, + 0 AS IS_FREE_MAIL, + 0 AS DEL_FLAG, + SUM(adgd.QUANTITY) AS BASE_QUANTITY, + SYSDATE AS CREATION_TIME, + 100000000 AS PK_CREATOR, + #{pkCountry} AS PK_COUNTRY + FROM AC_DECLARATION_GIFT_RECORD adgr + LEFT JOIN AC_DECLARATION_GIFT_CONFIG adgc ON adgr.PK_RULE_ID = adgc.PK_ID + LEFT JOIN AC_DECLARATION_GIFT_DETAIL adgd ON adgc.PK_ID = adgd.PK_RULE_ID + LEFT JOIN BD_PRODUCT bp ON adgd.PK_PRODUCT = bp.PK_ID + LEFT JOIN BD_PRODUCT_EXTEND bpe ON bp.PK_ID = bpe.PK_PRODUCT + LEFT JOIN SA_ORDER so ON adgr.ORDER_CODE = so.ORDER_CODE + WHERE adgr.SYNC_STATUS IN (0, 2) + GROUP BY adgr.PK_BASE_ID, + so.PK_CREATOR, + adgd.PK_PRODUCT, + adgd.SPECS_NAME, + adgd.SPECS_NAME_ID, + bp.COVER) src + ON ( tgt.PICK_TYPE = src.PICK_TYPE - AND tgt.PK_BASE_CONFIG = src.PK_BASE_CONFIG AND tgt.PK_DATA_ID = src.PK_DATA_ID AND tgt.SPECS_NAME = src.SPECS_NAME AND tgt.SPECS_NAME_ID = src.SPECS_NAME_ID AND tgt.PK_BASE_ID = src.PK_BASE_ID AND tgt.DEL_FLAG = src.DEL_FLAG ) - WHEN MATCHED THEN - UPDATE - SET tgt.USABLE_QUANTITY = tgt.USABLE_QUANTITY + src.USABLE_QUANTITY, - tgt.MODIFIED_TIME = SYSDATE, - tgt.PK_MODIFIED = src.PK_CREATOR - WHEN NOT MATCHED THEN - INSERT ( - PK_ID, - PK_MEMBER, - PICK_TYPE, - PK_BASE_CONFIG, - PK_DATA_ID, - SPECS_NAME, - SPECS_NAME_ID, - USABLE_QUANTITY, - PICK_COVER, - IS_FREE_MAIL, - DEL_FLAG, - BASE_QUANTITY, - PK_BASE_ID, - CREATION_TIME, - PK_CREATOR, - PK_COUNTRY - ) - VALUES - ( - AC_PICK_SEQ.NEXTVAL, - src.PK_MEMBER, - src.PICK_TYPE, - src.PK_BASE_CONFIG, - src.PK_DATA_ID, - src.SPECS_NAME, - src.SPECS_NAME_ID, - src.USABLE_QUANTITY, - src.PICK_COVER, - src.IS_FREE_MAIL, - src.DEL_FLAG, - src.BASE_QUANTITY, - src.PK_BASE_ID, - src.CREATION_TIME, - 100000000, - src.PK_COUNTRY - ); - UPDATE AC_DECLARATION_GIFT_RECORD - SET SYNC_STATUS = 1 - WHERE - SYNC_STATUS = 0 - OR SYNC_STATUS = 2; - EXCEPTION - WHEN OTHERS THEN - v_error_count := SQL % ROWCOUNT; - UPDATE AC_DECLARATION_GIFT_RECORD - SET SYNC_STATUS = 2 - WHERE - SYNC_STATUS = 0 - OR SYNC_STATUS = 2; - END; - INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) SELECT - AC_PICK_LOG_SEQ.NEXTVAL, - p.PK_ID, - p.PK_CREATOR, - p.USABLE_QUANTITY, - p.PK_COUNTRY - FROM - AC_PICK p - WHERE - TRUNC(p.CREATION_TIME) = TRUNC(SYSDATE) - OR TRUNC(p.MODIFIED_TIME) = TRUNC(SYSDATE); - COMMIT; - END; + WHEN MATCHED THEN + UPDATE SET + tgt.USABLE_QUANTITY = tgt.USABLE_QUANTITY + src.USABLE_QUANTITY, + tgt.MODIFIED_TIME = SYSDATE, + tgt.PK_MODIFIED = src.PK_CREATOR + WHEN NOT MATCHED THEN + INSERT ( + PK_ID, + PK_MEMBER, + PICK_TYPE, + PK_BASE_CONFIG, + PK_DATA_ID, + SPECS_NAME, + SPECS_NAME_ID, + USABLE_QUANTITY, + PICK_COVER, + IS_FREE_MAIL, + DEL_FLAG, + BASE_QUANTITY, + PK_BASE_ID, + CREATION_TIME, + PK_CREATOR, + PK_COUNTRY + ) + VALUES (AC_PICK_SEQ.NEXTVAL, + src.PK_MEMBER, + src.PICK_TYPE, + 0, + src.PK_DATA_ID, + src.SPECS_NAME, + src.SPECS_NAME_ID, + src.USABLE_QUANTITY, + src.PICK_COVER, + src.IS_FREE_MAIL, + src.DEL_FLAG, + src.BASE_QUANTITY, + src.PK_BASE_ID, + src.CREATION_TIME, + src.PK_CREATOR, + src.PK_COUNTRY); + + UPDATE AC_DECLARATION_GIFT_RECORD + SET SYNC_STATUS = 1 + WHERE SYNC_STATUS IN (0, 2); + + EXCEPTION + WHEN OTHERS THEN + v_error_count := SQL%ROWCOUNT; + UPDATE AC_DECLARATION_GIFT_RECORD + SET SYNC_STATUS = 2 + WHERE SYNC_STATUS IN (0, 2); + END; + + INSERT INTO AC_PICK_LOG (PK_ID, PK_PICK, PK_USER, QUANTITY, PK_COUNTRY) + SELECT AC_PICK_LOG_SEQ.NEXTVAL, + p.PK_ID, + p.PK_CREATOR, + p.USABLE_QUANTITY, + p.PK_COUNTRY + FROM AC_PICK p + WHERE TRUNC(p.CREATION_TIME) = TRUNC(SYSDATE) + OR TRUNC(p.MODIFIED_TIME) = TRUNC(SYSDATE); + + COMMIT; + END; + From 25cf069e1ebd87f534297a5e37a60016ab836280 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Wed, 22 Oct 2025 16:47:39 +0800 Subject: [PATCH 51/57] =?UTF-8?q?##=20=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=BE=85=E6=94=AF=E4=BB=98=E5=A4=84=E7=90=86?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/sale/order/service/impl/SaOrderServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 0343a4a0..2c00d6ea 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -1091,6 +1091,8 @@ public class SaOrderServiceImpl extends ServiceImpl impl } if (isToBePay) { + // 2025.10.22 加购升级,待支付不需要处理加购升级记录 + saOrderExt.setAcAddUpgradeRecord(null); processOrder(saOrderExt); } else { redisService.setCacheObject(CacheConstants.TEMP_ORDER + orderParam.getCenterCodeId() + orderParam.getOrderCode(), saOrderExt, CacheConstants.MEMBER_REFRESH_TIME, TimeUnit.MINUTES); From a9acc580919dea4a9401a915325d357abda0b4c5 Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 23 Oct 2025 09:56:51 +0800 Subject: [PATCH 52/57] =?UTF-8?q?##=20=E8=87=AA=E5=8A=A9=E6=92=A4=E5=8D=95?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E5=8A=A0=E8=B4=AD=E5=8D=87=E7=BA=A7=E8=AE=B0?= =?UTF-8?q?=E5=BD=95=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sale/order/service/impl/SaOrderServiceImpl.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java index 2c00d6ea..2f5663a4 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/sale/order/service/impl/SaOrderServiceImpl.java @@ -2298,7 +2298,7 @@ public class SaOrderServiceImpl extends ServiceImpl impl // 撤销注册订单(注册订单,海粉订单,特殊注册订单) if (myOrderVO.getOrderType() == EOrderType.REGISTER_ORDER.getValue() || myOrderVO.getOrderType() == EOrderType.SPECIAL_REGISTER_ORDER.getValue() - || (myOrderVO.getOrderType() == EOrderType.REPURCHASE_ORDER.getValue() && EOrderTypeExtend.REG_REP.getValue() == saOrderExt.getOrderTypeExtend()) + || (myOrderVO.getOrderType() == EOrderType.REPURCHASE_ORDER.getValue() && EOrderTypeExtend.REG_REP.getValue().equals(saOrderExt.getOrderTypeExtend())) ) { // 逻辑删除会员 if (!iMemberServiceApi.singleRevokeMemberBySelfRevokeOrder(pkApprove, saOrderExt, businessCommissionDTO).getData()) { @@ -2388,6 +2388,14 @@ public class SaOrderServiceImpl extends ServiceImpl impl cuMember.setConsumeAchieve(gradeDTO.getStartValue()); } + + // 删除加购升级数据 + iAcAddUpgradeRecordService.update(Wrappers.lambdaUpdate() + .eq(AcAddUpgradeRecord::getPkMember,saOrderExt.getPkMember()) + .eq(AcAddUpgradeRecord::getPkOrderId, saOrderExt.getPkId()) + .eq(AcAddUpgradeRecord::getDelFlag, EDelFlag.UN_DELETE.getValue()) + .set(AcAddUpgradeRecord::getDelFlag, EDelFlag.DELETE.getValue()) + ); } else if (myOrderVO.getOrderType() == EOrderType.PICK_ORDER.getValue()) { //提货订单退还提货数量 if (!iAcPickService.cancelPickOrder(saOrderExt.getOrderCode(), pkApprove)) { From e1f674cc4246019493cd298d838111db2632e941 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 23 Oct 2025 10:11:03 +0800 Subject: [PATCH 53/57] =?UTF-8?q?##=20bug446=20=E5=AF=BC=E5=87=BA=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E6=A0=BC=E5=BC=8F=E5=8C=96=E4=BF=AE=E6=94=B9,?= =?UTF-8?q?=E6=B4=BB=E5=8A=A8=E5=88=97=E8=A1=A8=E8=BF=87=E6=BB=A4=E5=B7=B2?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E4=BC=9A=E5=91=98=E7=9B=B8=E5=85=B3=E4=BF=A1?= =?UTF-8?q?=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/hzs/activity/declaration/vo/AcDeclarationListVO.java | 2 +- .../resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml | 2 +- .../activity/declaration/AcDeclarationGiftRecordMapper.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java index c54a7fac..845c9f41 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/declaration/vo/AcDeclarationListVO.java @@ -62,7 +62,7 @@ public class AcDeclarationListVO { /** * 订单支付时间 */ - @Excel(name = "订单支付时间",dateFormat = "yyyy-HH-mm") + @Excel(name = "订单支付时间",dateFormat = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date payTime; /** diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml index 928d7939..9ac4b095 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/add/AcAddUpgradeRecordMapper.xml @@ -46,7 +46,7 @@ LEFT JOIN BD_GRADE BG ON aaur.PK_ORIGIN_GRADE = BG.PK_ID LEFT JOIN BD_GRADE BGG ON aaur.PK_UPGRADE_GRADE = BGG.PK_ID WHERE - aaur.DEL_FLAG = 0 + aaur.DEL_FLAG = 0 AND cm.DEL_FLAG = 0 AND cm.CUSTOMER_TYPE = 0 AND abc.ACT_NAME = #{actName} diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml index 8ab6c9a4..f98a7a0b 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftRecordMapper.xml @@ -89,7 +89,7 @@ LEFT JOIN BD_GRADE bg ON cmm.PK_SETTLE_GRADE = bg.PK_ID LEFT JOIN AC_BASE_CONFIG abc ON adgr.PK_BASE_ID = abc.PK_ID WHERE - so.ORDER_STATUS = 1 AND so.DEL_FLAG = 0 + so.ORDER_STATUS = 1 AND so.DEL_FLAG = 0 AND cm.DEL_FLAG = 0 AND cm.CUSTOMER_TYPE = 0 AND cmm.DEL_FLAG = 0 AND cmm.CUSTOMER_TYPE = 0 AND abc.ACT_NAME = #{actName} From 1381412997ca8c60efbe40fa0d93f0bf0602879a Mon Sep 17 00:00:00 2001 From: cabbage <281119120@qq.com> Date: Thu, 23 Oct 2025 10:25:38 +0800 Subject: [PATCH 54/57] =?UTF-8?q?##=20=E6=B7=BB=E5=8A=A0=E6=96=B0=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E5=90=8D=E7=A7=B0=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/hzs/common/core/enums/ESysName.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java index 395b1c24..5047815a 100644 --- a/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java +++ b/bd-common/bd-common-core/src/main/java/com/hzs/common/core/enums/ESysName.java @@ -16,6 +16,18 @@ public enum ESysName { * 乐学 */ LX("lx", "乐学CN"), + /** + * 乐学鼎佩 + */ + LX_DP("lx-dp", "乐学鼎佩CN"), + /** + * 乐学麦禾 + */ + LX_MH("lx-mh", "乐学麦禾CN"), + /** + * 乐学儒商 + */ + LX_RS("lx-rs", "乐学儒商CN"), /** * 北大 */ From a2b531a01dc05637b21013174752156ac7c08913 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 23 Oct 2025 11:27:44 +0800 Subject: [PATCH 55/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=97=B6=E9=97=B4=E4=BF=AE=E6=94=B9=E8=A1=A5?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/activity/tourism/provider/AcTourismServiceProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index 762c7dd5..8897487f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -116,7 +116,7 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { .or() .nested(x -> x.eq(SaOrder::getOrderType, EOrderType.REPURCHASE_ORDER.getValue()) .eq(SaOrder::getOrderTypeExtend, 1))) - .apply("TRUNC(PAY_TIME) = TRUNC(SYSDATE - {0})", daysAgo) + .apply("TRUNC(PAY_TIME) >= TRUNC(SYSDATE - {0})", daysAgo) .eq(SaOrder::getOrderStatus, 1) .eq(SaOrder::getDelFlag, 0) ); From 0bcf5fec4d54cdd0f982fb9a92469ef924f79555 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 23 Oct 2025 11:42:07 +0800 Subject: [PATCH 56/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=97=B6=E9=97=B4=E4=BF=AE=E6=94=B9=E8=A1=A5?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hzs/activity/tourism/provider/AcTourismServiceProvider.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java index 8897487f..8b0a790f 100644 --- a/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java +++ b/bd-business/bd-business-sale/src/main/java/com/hzs/activity/tourism/provider/AcTourismServiceProvider.java @@ -116,7 +116,7 @@ public class AcTourismServiceProvider implements IAcTourismServiceApi { .or() .nested(x -> x.eq(SaOrder::getOrderType, EOrderType.REPURCHASE_ORDER.getValue()) .eq(SaOrder::getOrderTypeExtend, 1))) - .apply("TRUNC(PAY_TIME) >= TRUNC(SYSDATE - {0})", daysAgo) + .apply("TRUNC(PAY_TIME) BETWEEN TRUNC(SYSDATE - {0}) AND TRUNC(SYSDATE - 7)", daysAgo) .eq(SaOrder::getOrderStatus, 1) .eq(SaOrder::getDelFlag, 0) ); From 41b834ab3c6ed3165f9d21a79f3be483881e7692 Mon Sep 17 00:00:00 2001 From: zhangheng Date: Thu, 23 Oct 2025 11:57:38 +0800 Subject: [PATCH 57/57] =?UTF-8?q?##=20=E6=8A=A5=E5=8D=95=E8=B5=A0=E9=80=81?= =?UTF-8?q?=E6=8E=A8=E9=80=81=E6=97=B6=E9=97=B4=E4=BF=AE=E6=94=B9=E8=A1=A5?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../activity/declaration/AcDeclarationGiftConfigMapper.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml index c6d0e842..10870565 100644 --- a/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml +++ b/bd-business/bd-business-sale/src/main/resources/mapper/activity/declaration/AcDeclarationGiftConfigMapper.xml @@ -68,6 +68,7 @@ ON ( tgt.PICK_TYPE = src.PICK_TYPE AND tgt.PK_DATA_ID = src.PK_DATA_ID + AND tgt.PK_MEMBER = src.PK_MEMBER AND tgt.SPECS_NAME = src.SPECS_NAME AND tgt.SPECS_NAME_ID = src.SPECS_NAME_ID AND tgt.PK_BASE_ID = src.PK_BASE_ID