## 加购升级功能,报单赠送功能

This commit is contained in:
zhangheng 2025-10-13 16:41:01 +08:00
parent 110f14a4cf
commit e47bcf3233
19 changed files with 551 additions and 145 deletions

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -1,4 +1,4 @@
package com.hzs.activity.add.controller.param;
package com.hzs.activity.add.param;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -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;

View File

@ -1,4 +1,4 @@
package com.hzs.activity.add.controller.param;
package com.hzs.activity.add.param;
import lombok.AllArgsConstructor;
import lombok.Data;

View File

@ -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;

View File

@ -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>

View File

@ -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;
/**
* 目标群体配置列表

View File

@ -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, "加购升级数据导出");
// }
//}
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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);
}

View File

@ -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;
/**
* <p>
* 服务实现类
* 服务实现类
* </p>
*
* @author bd
* @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);
}
});
}
}

View File

@ -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;

View File

@ -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

View File

@ -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"),
;
/**