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 bb0e3bac..8ada8fc1 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 @@ -5,6 +5,8 @@ import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.declaration.param.AcDeclarationListParam; import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; +import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; +import org.apache.ibatis.annotations.Param; import java.util.List; @@ -23,4 +25,6 @@ public interface AcDeclarationGiftRecordMapper extends BaseMapper selectDeclarationList(AcDeclarationListParam param); AcDeclarationGiftRecord selectLastRecord(); + + List queryListByRuleList(@Param("pkDataId") Long 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 dac543eb..feb6d4f5 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 @@ -5,6 +5,7 @@ import com.hzs.activity.add.param.AcAddUpgradeListParam; import com.hzs.activity.declaration.param.AcDeclarationListParam; import com.hzs.activity.declaration.vo.AcDeclarationGiftRecord; import com.hzs.activity.declaration.vo.AcDeclarationListVO; +import com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; import java.util.List; @@ -22,4 +23,6 @@ public interface IAcDeclarationGiftRecordService extends IService selectDeclarationList(AcDeclarationListParam param); AcDeclarationGiftRecord selectLastRecord(); + + List queryListByRuleIdList(Long 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 2e9949f0..c8a75552 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 @@ -14,6 +14,7 @@ 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 com.hzs.common.domain.activity.base.ext.AcGiftConfigExt; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -93,4 +94,9 @@ public class AcDeclarationGiftRecordServiceImpl extends ServiceImpl queryListByRuleIdList(Long 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 2ec06fff..d4be2678 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 @@ -1,6 +1,7 @@ package com.hzs.activity.pick.controller.api; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.hzs.activity.pick.param.PickOrderParam; import com.hzs.activity.pick.param.PickPostageParam; import com.hzs.activity.pick.service.IAcPickMemberLogService; @@ -66,6 +67,8 @@ public class ApiPickController extends BaseController { IMemberServiceApi iMemberServiceApi; @DubboReference ICurrencyServiceApi iCurrencyServiceApi; + @Autowired + private IAcDeclarationGiftRecordService iAcDeclarationGiftRecordService; /** * 查询提货列表 @@ -139,6 +142,19 @@ public class ApiPickController extends BaseController { .build()); } break; + case DECLARATION_GIFT: + // 处理报单赠送活动 + List acGiftConfigExtList = iAcDeclarationGiftRecordService.queryListByRuleIdList(acPick.getPkDataId(),pkCountry); + for (AcGiftConfigExt acGiftConfigExt : acGiftConfigExtList) { + // 处理提货产品明细 + detailList.add(ApiPickDetailVO.builder() + .productName(acGiftConfigExt.getProductName()) + .specsName(acGiftConfigExt.getSpecsName()) + .cover(acGiftConfigExt.getCover()) + .quantity(acGiftConfigExt.getQuantity()) + .build()); + } + break; } apiPickVO.setIsFreeMail(acPick.getIsFreeMail()); 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 52e366ee..0ea01693 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 @@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.hzs.activity.base.service.IAcApprovalLogService; +import com.hzs.activity.declaration.service.IAcDeclarationGiftRecordService; import com.hzs.activity.pick.mapper.AcPickMapper; import com.hzs.activity.pick.param.AcPickQueryParam; import com.hzs.activity.pick.param.AcPickSaveDetailParam; @@ -70,6 +71,8 @@ public class AcPickServiceImpl extends ServiceImpl impleme IMemberServiceApi iMemberServiceApi; @DubboReference IPostageServiceApi iPostageServiceApi; + @Autowired + private IAcDeclarationGiftRecordService iAcDeclarationGiftRecordService; @Override public boolean addPickByActivity(Long pkMember, Integer pickType, Long pkBaseConfig, Long pkDataId, @@ -563,6 +566,16 @@ public class AcPickServiceImpl extends ServiceImpl impleme .build()); } break; + case DECLARATION_GIFT: + // 报单赠送列表 + List acDecList = iAcDeclarationGiftRecordService.queryListByRuleIdList(acPick.getPkDataId(), pkCountry); + for (AcGiftConfigExt acGiftConfigExt : acDecList) { + productList.add(PostageProductDTO.builder() + .productId(acGiftConfigExt.getPkProduct()) + .quantity(quantity * acGiftConfigExt.getQuantity()) + .build()); + } + break; default: } 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 ecdf4296..23b0d831 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 @@ -53,7 +53,6 @@ #{items} - AND adgd.DEL_FLAG = 0 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,"报单赠送") ;