## 加购升级功能,报单赠送功能
This commit is contained in:
		
							parent
							
								
									4384c93409
								
							
						
					
					
						commit
						7794df7df5
					
				|  | @ -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; | ||||
|  |  | |||
|  | @ -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; | ||||
|  |  | |||
|  | @ -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; | ||||
|  | @ -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; | ||||
| 
 | ||||
|  | @ -1,4 +1,4 @@ | |||
| package com.hzs.activity.add.controller.param; | ||||
| package com.hzs.activity.add.param; | ||||
| 
 | ||||
| import lombok.AllArgsConstructor; | ||||
| import lombok.Data; | ||||
|  | @ -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; | ||||
|  | @ -1,4 +1,4 @@ | |||
| package com.hzs.activity.add.controller.param; | ||||
| package com.hzs.activity.add.param; | ||||
| 
 | ||||
| import lombok.AllArgsConstructor; | ||||
| import lombok.Data; | ||||
|  | @ -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; | ||||
|  |  | |||
|  | @ -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; | ||||
| 
 | ||||
| /** | ||||
|  * <p> | ||||
|  |  | |||
|  | @ -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; | ||||
|     /** | ||||
|      * 目标群体配置列表 | ||||
|  |  | |||
|  | @ -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; | ||||
| // | ||||
| ///** | ||||
| // * <p> | ||||
| // * 前端控制器 | ||||
| // * </p> | ||||
| // * | ||||
| // * @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<BaseConfigVo> resultList = iActivityService.activityList(queryActivityParam); | ||||
| //        ExcelUtil<BaseConfigVo> 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; | ||||
| 
 | ||||
| /** | ||||
|  * <p> | ||||
|  * 前端控制器 | ||||
|  * </p> | ||||
|  * | ||||
|  * @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<BaseConfigVo> resultList = iActivityService.activityList(queryActivityParam); | ||||
|         ExcelUtil<BaseConfigVo> 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<AcAddUpgradeListVO> util = new ExcelUtil<>(AcAddUpgradeListVO.class); | ||||
| //        util.exportExcel(response, list, "加购升级数据导出"); | ||||
| //    } | ||||
| //} | ||||
| } | ||||
|  |  | |||
|  | @ -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; | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| } | ||||
|  | @ -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<Integer> atcModuleList; | ||||
| 
 | ||||
| 
 | ||||
|     /** | ||||
|      * 活动模块 | ||||
|      */ | ||||
|     private Integer atcModule; | ||||
| 
 | ||||
| 
 | ||||
|     /** | ||||
|      * 报单赠送参数 | ||||
|      */ | ||||
|     private List<AcDeclarationConfigParam> acDeclarationConfigParams; | ||||
| 
 | ||||
|     /** | ||||
|      * 目标群体配置列表 | ||||
|      */ | ||||
|     private List<AcGoalMemberConfig> goalMemberConfigList; | ||||
| 
 | ||||
|     /** | ||||
|      * 是否强制弹框 0 是  1 否 | ||||
|      */ | ||||
|     private Integer isStrongAlert; | ||||
| 
 | ||||
|     /** | ||||
|      * 提货天数 | ||||
|      */ | ||||
|     private Integer deliveryDays; | ||||
| 
 | ||||
|     /** | ||||
|      * 时间参数 | ||||
|      */ | ||||
|     private String startDate; | ||||
| } | ||||
|  | @ -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<AcDeclarationConfigParam> acDeclarationConfigParams; | ||||
| 
 | ||||
|     /** | ||||
|      * 权限配置列表 | ||||
|      */ | ||||
|     private List<AcBaseAuthority> authorityList; | ||||
| 
 | ||||
| } | ||||
|  | @ -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; | ||||
| 
 | ||||
| /** | ||||
|  * <p> | ||||
|  | @ -13,4 +16,8 @@ import com.hzs.activity.declaration.vo.AcDeclarationGiftConfig; | |||
|  */ | ||||
| public interface IAcDeclarationGiftConfigService extends IService<AcDeclarationGiftConfig> { | ||||
| 
 | ||||
| 
 | ||||
|     String onLinePetition(AcDeclarationParam acDeclarationParam); | ||||
| 
 | ||||
|     AjaxResult getDetail(Integer pkId); | ||||
| } | ||||
|  |  | |||
|  | @ -1,10 +1,40 @@ | |||
| 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; | ||||
| 
 | ||||
| /** | ||||
|  * <p> | ||||
|  | @ -15,6 +45,138 @@ import org.springframework.stereotype.Service; | |||
|  * @since 2025-10-13 | ||||
|  */ | ||||
| @Service | ||||
| @Slf4j | ||||
| public class AcDeclarationGiftConfigServiceImpl extends ServiceImpl<AcDeclarationGiftConfigMapper, AcDeclarationGiftConfig> 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<AcDeclarationGiftConfig> list = baseMapper.selectList(new LambdaQueryWrapper<AcDeclarationGiftConfig>() | ||||
|                 .eq(AcDeclarationGiftConfig::getPkBaseId,pkId) | ||||
|                 .eq(AcDeclarationGiftConfig::getDelFlag,0)); | ||||
|         List<AcDeclarationConfigParam> collect = list.stream() | ||||
|                 .map(i -> BeanUtil.copyProperties(i, AcDeclarationConfigParam.class)) | ||||
|                 .collect(Collectors.toList()); | ||||
| 
 | ||||
|         List<AcGoalMemberConfig> goalMemberConfigList = iAcGoalMemberConfigService.list(new LambdaQueryWrapper<AcGoalMemberConfig>() | ||||
|                 .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<AcDeclarationGiftConfig>() | ||||
|                 .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); | ||||
|         // 删除用户权限配置 | ||||
|         iAcGoalMemberConfigService.remove(new LambdaQueryWrapper<AcGoalMemberConfig>() | ||||
|                 .eq(AcGoalMemberConfig::getPkBaseId, pkId)); | ||||
|     } | ||||
| 
 | ||||
|     private void updateDeclarationConfig(ActivityParam activityParam, List<AcDeclarationConfigParam> acDeclarationConfigParams) { | ||||
|         { | ||||
|             Long pkId = activityParam.getPkId(); | ||||
|             // 查询基础信息 | ||||
|             AcBaseConfig baseConfig = BeanUtil.copyProperties(activityParam, AcBaseConfig.class); | ||||
|             baseConfig.setPkId(activityParam.getPkId()); | ||||
|             baseConfigService.updateById(baseConfig); | ||||
| 
 | ||||
|             // 删除活动配置 | ||||
|             baseMapper.delete(new LambdaQueryWrapper<AcDeclarationGiftConfig>() | ||||
|                     .eq(AcDeclarationGiftConfig::getPkBaseId, pkId)); | ||||
|             // 删除用户权限配置 | ||||
|             iAcGoalMemberConfigService.remove(new LambdaQueryWrapper<AcGoalMemberConfig>() | ||||
|                     .eq(AcGoalMemberConfig::getPkBaseId, pkId)); | ||||
|             // 添加加购活动配置 | ||||
|             saveDeclarationConfig(acDeclarationConfigParams,baseConfig); | ||||
|             // 添加用户权限配置 | ||||
|             iActivityService.saveGoalMemberConfig(activityParam, baseConfig); | ||||
|         } | ||||
|     } | ||||
| 
 | ||||
|     private void saveDeclarationConfig(List<AcDeclarationConfigParam> 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); | ||||
|             } | ||||
|         }); | ||||
|     } | ||||
| } | ||||
|  |  | |||
|  | @ -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; | ||||
|  |  | |||
|  | @ -31,10 +31,12 @@ | |||
|         PK_ID, PK_BASE_ID, ORDER_TYPE, PK_WARES, QUANTITY, ORIGINAL_LEVEL, UPGRADE_LEVEL | ||||
|     </sql> | ||||
|     <select id="selectListByOrderType" | ||||
|             resultType="com.hzs.activity.add.controller.param.AcAddUpgradeRuleConfigParam"> | ||||
|             resultType="com.hzs.activity.add.param.AcAddUpgradeRuleConfigParam"> | ||||
|         SELECT aauc.ORDER_TYPE, | ||||
|                aauc.PK_WARES, | ||||
|                aauc.QUANTITY, | ||||
|                aauc.ORIGINAL_LEVEL, | ||||
|                aauc.UPGRADE_LEVEL, | ||||
|                bg.GRADE_NAME  AS originalLevelVal, | ||||
|                bgg.GRADE_NAME AS upgradeLevelVal | ||||
|         FROM AC_ADD_UPGRADE_CONFIG aauc | ||||
|  |  | |||
|  | @ -408,6 +408,34 @@ public enum EApprovalBusiness { | |||
|      */ | ||||
|     MEMBER_CONSUME_GIFT_REMOVE(751, "会员消费赠送删除", EnumsPrefixConstants.APPROVAL_BUSINESS + "751"), | ||||
| 
 | ||||
|     /** | ||||
|      * 会员消费赠送添加 | ||||
|      */ | ||||
|     AC_ADD_UPGRADE_CONFIG_ADD(752, "加购升级活动添加", EnumsPrefixConstants.APPROVAL_BUSINESS + "752"), | ||||
|     /** | ||||
|      * 会员消费赠送修改 | ||||
|      */ | ||||
|     AC_ADD_UPGRADE_CONFIG_UPDATE(753, "加购升级活动修改", EnumsPrefixConstants.APPROVAL_BUSINESS + "753"), | ||||
| 
 | ||||
|     /** | ||||
|      * 会员消费赠送删除 | ||||
|      */ | ||||
|     AC_ADD_UPGRADE_CONFIG_REMOVE(754, "加购升级活动删除", EnumsPrefixConstants.APPROVAL_BUSINESS + "754"), | ||||
| 
 | ||||
|     /** | ||||
|      * 报单赠送添加 | ||||
|      */ | ||||
|     AC_DECLARATION_GIFT_ADD(755, "报单赠送添加", EnumsPrefixConstants.APPROVAL_BUSINESS + "755"), | ||||
|     /** | ||||
|      * 报单赠送修改 | ||||
|      */ | ||||
|     AC_DECLARATION_GIFT_UPDATE(756, "报单赠送修改", EnumsPrefixConstants.APPROVAL_BUSINESS + "756"), | ||||
| 
 | ||||
|     /** | ||||
|      * 报单赠送删除 | ||||
|      */ | ||||
|     AC_DECLARATION_GIFT_REMOVE(757, "报单赠送删除", EnumsPrefixConstants.APPROVAL_BUSINESS + "757"), | ||||
| 
 | ||||
|     ; | ||||
| 
 | ||||
|     /** | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue