记得上下班打卡 | git大法好,push需谨慎

Commit b0774a17 authored by 张国柄's avatar 张国柄

~API:会员权益券编辑逻辑调整(原创建改为选择);

parent a1ce192d
...@@ -31,6 +31,8 @@ public class AdamMemberRightsCouponVo implements java.io.Serializable, Cloneable ...@@ -31,6 +31,8 @@ public class AdamMemberRightsCouponVo implements java.io.Serializable, Cloneable
private BigDecimal valOver; private BigDecimal valOver;
@ApiModelProperty(position = 10, value = "满减~减") @ApiModelProperty(position = 10, value = "满减~减")
private BigDecimal valMinus; private BigDecimal valMinus;
@ApiModelProperty(position = 11, value = "折扣[8折即0.8]")
private BigDecimal discount;
/* com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo */ /* com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo */
private List<AdamMemberRightsCouponRuleVo> useRules; private List<AdamMemberRightsCouponRuleVo> useRules;
......
...@@ -15,18 +15,19 @@ public class CandyMemberCouponMatchParam { ...@@ -15,18 +15,19 @@ public class CandyMemberCouponMatchParam {
@ApiModelProperty(required = true, value = "会员类型ID[64]", example = "1") @ApiModelProperty(required = true, value = "会员类型ID[64]", example = "1")
@NotBlank(message = "会员类型ID不能为空") @NotBlank(message = "会员类型ID不能为空")
private String memberId; private String memberId;
@ApiModelProperty(required = true, value = "权益ID[64]") @ApiModelProperty(required = true, value = "权益ID[64]", example = "21269184646476")
@NotBlank(message = "会员权益ID不能为空") @NotBlank(message = "会员权益ID不能为空")
private String mrightsId; private String mrightsId;
@ApiModelProperty(required = true, value = "券ID", example = "券ID") @NotBlank(message = "权益券ID不能为空")
@ApiModelProperty(required = true, value = "券ID", example = "20211111161557612")
private String couponId; private String couponId;
@NotNull(message = "券类别不能为空") @NotNull(message = "券类别不能为空")
@ApiModelProperty(required = true, value = "业务类别[0-全场|1-演出|2-商品|3-优先购]", allowableValues = "0,1,2,3") @ApiModelProperty(required = true, value = "业务类别[0-全场|1-演出|2-商品|3-优先购]", allowableValues = "0,1,2,3")
private Integer busiType; private Integer busiType;
@NotNull(message = "券类型不能为空") @NotNull(message = "券类型不能为空")
// @ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|3-兑换券|4-折扣券|101-优先券]", allowableValues = "1,2,3,4,101") // @ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|3-兑换券|4-折扣券101-优先券]", allowableValues = "1,2,3,4,101")
@ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|4-折扣券|101-优先券]", allowableValues = "1,2,4,101") @ApiModelProperty(required = true, value = "券类型[1-代金券|2-满减券|4-折扣券101-优先券]", allowableValues = "1,2,4,101")
private Integer couType; private Integer couType;
@NotNull(message = "券发放量不能为空") @NotNull(message = "券发放量不能为空")
...@@ -34,4 +35,10 @@ public class CandyMemberCouponMatchParam { ...@@ -34,4 +35,10 @@ public class CandyMemberCouponMatchParam {
@Min(value = 1, message = "发放量不满足1~100范围") @Min(value = 1, message = "发放量不满足1~100范围")
@ApiModelProperty(required = true, value = "发放量", example = "1") @ApiModelProperty(required = true, value = "发放量", example = "1")
private Integer eventAmt; private Integer eventAmt;
@ApiModelProperty(required = true, value = "权益券操作类型[1-添加|2-删除|3-编辑]")
@NotNull(message = "操作类型不能为空")
private Integer oper;
@ApiModelProperty(required = false, value = "券ID(仅`state=3-编辑`时必填`)")
private String operCouponId;
} }
...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; ...@@ -5,7 +5,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.liquidnet.client.admin.common.annotation.Log; import com.liquidnet.client.admin.common.annotation.Log;
import com.liquidnet.client.admin.common.core.controller.BaseController; import com.liquidnet.client.admin.common.core.controller.BaseController;
import com.liquidnet.client.admin.common.core.domain.AjaxResult; import com.liquidnet.client.admin.common.core.domain.AjaxResult;
import com.liquidnet.client.admin.common.core.domain.entity.SysUser;
import com.liquidnet.client.admin.common.core.page.TableDataInfo; import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType; import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberAdminService; import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberAdminService;
...@@ -19,11 +18,10 @@ import com.liquidnet.service.adam.dto.admin.AdamMemberRightsBuildParam; ...@@ -19,11 +18,10 @@ import com.liquidnet.service.adam.dto.admin.AdamMemberRightsBuildParam;
import com.liquidnet.service.adam.entity.AdamMember; import com.liquidnet.service.adam.entity.AdamMember;
import com.liquidnet.service.adam.entity.AdamMemberPrice; import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.adam.entity.AdamMemberRights; import com.liquidnet.service.adam.entity.AdamMemberRights;
import com.liquidnet.service.candy.dto.admin.CandyCouponRuleBuildParam;
import com.liquidnet.service.candy.dto.admin.CandyMemberCouponBuildParam;
import com.liquidnet.service.candy.dto.admin.CandyMemberCouponMatchParam; import com.liquidnet.service.candy.dto.admin.CandyMemberCouponMatchParam;
import com.liquidnet.service.candy.dto.admin.CandyMgtCouponMemberDto; import com.liquidnet.service.candy.dto.admin.CandyMgtCouponMemberDto;
import com.liquidnet.service.candy.entity.CandyCoupon; import com.liquidnet.service.candy.entity.CandyCoupon;
import com.liquidnet.service.candy.entity.CandyMgtCoupon;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -36,9 +34,6 @@ import org.springframework.util.CollectionUtils; ...@@ -36,9 +34,6 @@ import org.springframework.util.CollectionUtils;
import org.springframework.validation.annotation.Validated; import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -253,32 +248,74 @@ public class AdamMemberAdminController extends BaseController { ...@@ -253,32 +248,74 @@ public class AdamMemberAdminController extends BaseController {
@PostMapping("edit_coupon") @PostMapping("edit_coupon")
@ResponseBody @ResponseBody
public AjaxResult editCoupon(@RequestBody @Validated CandyMemberCouponMatchParam parameter) { public AjaxResult editCoupon(@RequestBody @Validated CandyMemberCouponMatchParam parameter) {
LambdaQueryWrapper<AdamMemberRights> memberRightsLambdaQueryWrapper = Wrappers.lambdaQuery();
memberRightsLambdaQueryWrapper.eq(AdamMemberRights::getMrightsId, parameter.getMrightsId());
memberRightsLambdaQueryWrapper.eq(AdamMemberRights::getState, 1);
AdamMemberRights memberRights = adamMemberRightsAdminService.getOne(memberRightsLambdaQueryWrapper);
if (null == memberRights) {
logger.warn("会员权益[{}]不存在", parameter.getMrightsId());
return this.error(AjaxResult.Type.WARN, String.format("会员权益【%s】不存在", parameter.getMrightsId()));
}
if (!memberRights.getMemberId().equals(parameter.getMemberId())) {
logger.warn("会员权益[{}]所属卡[{}]与所选卡[{}]不一致", parameter.getMrightsId(), memberRights.getMemberId(), parameter.getMemberId());
return this.error(AjaxResult.Type.WARN, "权益配置不匹配");
}
LambdaQueryWrapper<CandyCoupon> couponLambdaQueryWrapper = Wrappers.lambdaQuery(); LambdaQueryWrapper<CandyCoupon> couponLambdaQueryWrapper = Wrappers.lambdaQuery();
couponLambdaQueryWrapper.eq(CandyCoupon::getCouponId, parameter.getCouponId()); couponLambdaQueryWrapper.eq(CandyCoupon::getCouponId, parameter.getCouponId());
couponLambdaQueryWrapper.eq(CandyCoupon::getState, 1); couponLambdaQueryWrapper.eq(CandyCoupon::getState, 1);
CandyCoupon coupon = candyCouponAdminService.getOne(couponLambdaQueryWrapper); CandyCoupon coupon = candyCouponAdminService.getOne(couponLambdaQueryWrapper);
if (null == coupon) { if (null == coupon) {
logger.warn("券[{}]不存在", parameter.getCouponId()); logger.warn("会员权益券[{}]不存在", parameter.getCouponId());
return this.error(AjaxResult.Type.WARN, String.format("券【%s】不存在", parameter.getCouponId())); return this.error(AjaxResult.Type.WARN, String.format("券【%s】不存在", parameter.getCouponId()));
} }
if (!coupon.getBusiType().equals(parameter.getBusiType())) { if (!coupon.getBusiType().equals(parameter.getBusiType())) {
logger.warn("券[{}]类别[{}]与所选类别不一致", parameter.getCouponId(), parameter.getBusiType()); logger.warn("会员权益券[{}]类别[{}]与所选类别[{}]不一致", parameter.getCouponId(), coupon.getBusiType(), parameter.getBusiType());
return this.error(AjaxResult.Type.WARN, "券信息不匹配"); return this.error(AjaxResult.Type.WARN, "券信息不匹配");
} }
if (!coupon.getCouType().equals(parameter.getCouType())) { if (!coupon.getCouType().equals(parameter.getCouType())) {
logger.warn("券[{}]类型[{}]与所选类型不一致", parameter.getCouponId(), parameter.getCouType()); logger.warn("会员权益券[{}]类型[{}]与所选类型[{}]不一致", parameter.getCouponId(), coupon.getCouType(), parameter.getCouType());
return this.error(AjaxResult.Type.WARN, "券信息不匹配"); return this.error(AjaxResult.Type.WARN, "券信息不匹配");
} }
// TODO: 2021/11/24 zhanggb
return this.toAjax(true);
// if (StringUtils.isEmpty(parameter.getCouponId())) { LambdaQueryWrapper<CandyMgtCoupon> mgtCouponLambdaQueryWrapper = Wrappers.lambdaQuery();
// // 新增券 mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getMcouponId, parameter.getMrightsId());
// return this.toAjax(candyMgtCouponAdminService.saveMgtCouponForMemberRights(parameter)); mgtCouponLambdaQueryWrapper.in(CandyMgtCoupon::getCouponId, parameter.getCouponId(), parameter.getOperCouponId());
// } else { mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getState, 10);
// // 编辑券 List<CandyMgtCoupon> mgtCouponList = candyMgtCouponAdminService.list(mgtCouponLambdaQueryWrapper);
// return this.toAjax(candyMgtCouponAdminService.editMgtCouponForMemberRights(parameter)); switch (parameter.getOper()) {
// } case 1:// 添加
if (!CollectionUtils.isEmpty(mgtCouponList)) {
logger.warn("会员权益[{}]已配置该券[{}]", parameter.getMrightsId(), parameter.getCouponId());
return this.error(AjaxResult.Type.WARN, "该权益已配置当前券,请选择其它券");
}
break;
case 2:// 删除
if (CollectionUtils.isEmpty(mgtCouponList)) {
logger.warn("会员权益[{}]中不存在该券[{}]", parameter.getMrightsId(), parameter.getCouponId());
return this.error(AjaxResult.Type.WARN, "该权益未配置当前券,请核实确认");
}
break;
case 3:// 编辑
if (StringUtils.isBlank(parameter.getOperCouponId())) {
logger.warn("会员权益券[{}]编辑未指定券ID[{},{}]", parameter.getMrightsId(), parameter.getOperCouponId(), parameter.getCouponId());
return this.error(AjaxResult.Type.WARN, "编辑未指定券ID【operCouponId】");
}
if (CollectionUtils.isEmpty(mgtCouponList)) {
logger.warn("会员权益[{}]编辑指定券[{}]无效", parameter.getMrightsId(), parameter.getCouponId());
return this.error(AjaxResult.Type.WARN, String.format("编辑指定券【%s】无效", parameter.getOperCouponId()));
}
break;
default:
logger.warn("Invalid operation[parameter.oper={}]", parameter.getOper());
return this.error(AjaxResult.Type.WARN, "无效操作");
}
try {
return this.toAjax(candyMgtCouponAdminService.saveUpdateMgtCouponForMemberRights(parameter, coupon));
} catch (Exception e) {
logger.error("会员管理:会员卡编辑:权益券配置异常", e);
return this.toAjax(false);
}
} }
} }
...@@ -10,9 +10,11 @@ import java.util.List; ...@@ -10,9 +10,11 @@ import java.util.List;
public interface ICandyMgtCouponAdminService extends IService<CandyMgtCoupon> { public interface ICandyMgtCouponAdminService extends IService<CandyMgtCoupon> {
boolean saveMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter); // boolean saveMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter);
boolean editMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter); // boolean editMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter);
boolean saveUpdateMgtCouponForMemberRights(CandyMemberCouponMatchParam parameter, CandyCoupon coupon);
boolean saveMgtCouponForCouponBuild(CandyMgtCouponBuildParam parameter); boolean saveMgtCouponForCouponBuild(CandyMgtCouponBuildParam parameter);
...@@ -20,7 +22,7 @@ public interface ICandyMgtCouponAdminService extends IService<CandyMgtCoupon> { ...@@ -20,7 +22,7 @@ public interface ICandyMgtCouponAdminService extends IService<CandyMgtCoupon> {
boolean saveMgtCouponInfo(CandyCoupon initCoupon, CandyMgtCoupon initMgtCoupon, List<CandyCouponRule> initCouponRuleList); boolean saveMgtCouponInfo(CandyCoupon initCoupon, CandyMgtCoupon initMgtCoupon, List<CandyCouponRule> initCouponRuleList);
boolean updateMgtCouponInfo(CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList); // boolean updateMgtCouponInfo(CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList);
List<CandyMgtCouponInfoDto> listForMgtCouponInfoDto(CandyMgtCouponListParam listParam); List<CandyMgtCouponInfoDto> listForMgtCouponInfoDto(CandyMgtCouponListParam listParam);
......
...@@ -10,13 +10,13 @@ import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberPriceAdminSer ...@@ -10,13 +10,13 @@ import com.liquidnet.client.admin.zhengzai.adam.service.IAdamMemberPriceAdminSer
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponAdminService; import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponAdminService;
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService; import com.liquidnet.client.admin.zhengzai.candy.service.ICandyCouponRuleAdminService;
import com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService; import com.liquidnet.client.admin.zhengzai.candy.service.ICandyMgtCouponAdminService;
import com.liquidnet.common.cache.redis.util.AbstractRedisUtil;
import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil; import com.liquidnet.common.cache.redis.util.RedisDataSourceUtil;
import com.liquidnet.common.exception.LiquidnetServiceException; import com.liquidnet.common.exception.LiquidnetServiceException;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.adam.constant.AdamRedisConst; import com.liquidnet.service.adam.constant.AdamRedisConst;
import com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo; import com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponRuleVo;
import com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponVo; import com.liquidnet.service.adam.dto.vo.AdamMemberRightsCouponVo;
import com.liquidnet.service.adam.entity.AdamMemberPrice;
import com.liquidnet.service.candy.dto.admin.*; import com.liquidnet.service.candy.dto.admin.*;
import com.liquidnet.service.candy.entity.CandyCoupon; import com.liquidnet.service.candy.entity.CandyCoupon;
import com.liquidnet.service.candy.entity.CandyCouponRule; import com.liquidnet.service.candy.entity.CandyCouponRule;
...@@ -55,147 +55,299 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa ...@@ -55,147 +55,299 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
@Autowired @Autowired
private IAdamMemberPriceAdminService adamMemberPriceAdminService; private IAdamMemberPriceAdminService adamMemberPriceAdminService;
@Override // @Override
public boolean saveMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter) { // public boolean saveMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter) {
String memberId = parameter.getMemberId(), operator = ShiroUtils.getLoginName(); // String memberId = parameter.getMemberId(), operator = ShiroUtils.getLoginName();
LocalDateTime nowTime = LocalDateTime.now(); // LocalDateTime nowTime = LocalDateTime.now();
//
LambdaQueryWrapper<AdamMemberPrice> memberPriceLambdaQueryWrapper = Wrappers.lambdaQuery(AdamMemberPrice.class) // LambdaQueryWrapper<AdamMemberPrice> memberPriceLambdaQueryWrapper = Wrappers.lambdaQuery(AdamMemberPrice.class)
.eq(AdamMemberPrice::getMemberId, memberId).eq(AdamMemberPrice::getState, 1); // .eq(AdamMemberPrice::getMemberId, memberId).eq(AdamMemberPrice::getState, 1);
AdamMemberPrice memberPrice = adamMemberPriceAdminService.getOne(memberPriceLambdaQueryWrapper); // AdamMemberPrice memberPrice = adamMemberPriceAdminService.getOne(memberPriceLambdaQueryWrapper);
//
CandyCoupon initCoupon = new CandyCoupon(); // CandyCoupon initCoupon = new CandyCoupon();
initCoupon.setCouponId(IDGenerator.nextMilliId()); // initCoupon.setCouponId(IDGenerator.nextMilliId());
initCoupon.setState(1); // initCoupon.setState(1);
initCoupon.setTitle(parameter.getTitle()); // initCoupon.setTitle(parameter.getTitle());
initCoupon.setLabel(parameter.getLabel()); // initCoupon.setLabel(parameter.getLabel());
initCoupon.setNotice("会员权益"); // initCoupon.setNotice("会员权益");
initCoupon.setExclusive(1); // initCoupon.setExclusive(1);
initCoupon.setBusiType(parameter.getBusiType()); // initCoupon.setBusiType(parameter.getBusiType());
initCoupon.setCouType(parameter.getCouType()); // initCoupon.setCouType(parameter.getCouType());
initCoupon.setBindType(1);// 领取方式[0-用户输入兑换|1-发放至用户|2-积分兑换|3-发放需领取] // initCoupon.setBindType(1);// 领取方式[0-用户输入兑换|1-发放至用户|2-积分兑换|3-发放需领取]
//initCoupon.setDiscount(); // //initCoupon.setDiscount();
initCoupon.setValFace(parameter.getValFace()); // initCoupon.setValFace(parameter.getValFace());
initCoupon.setValOver(parameter.getValOver()); // initCoupon.setValOver(parameter.getValOver());
initCoupon.setValMinus(parameter.getValMinus()); // initCoupon.setValMinus(parameter.getValMinus());
initCoupon.setOverlay(parameter.getOverlay()); // initCoupon.setOverlay(parameter.getOverlay());
initCoupon.setValidity(memberPrice.getDays()); // initCoupon.setValidity(memberPrice.getDays());
//initCoupon.setRedeemValidity(); // //initCoupon.setRedeemValidity();
//initCoupon.setRedeemStart(); // //initCoupon.setRedeemStart();
//initCoupon.setRedeemStop(); // //initCoupon.setRedeemStop();
initCoupon.setEffectAt(nowTime); // initCoupon.setEffectAt(nowTime);
// 会员权益券失效时间duedAt需要同步会员到期时间expiryAt // // 会员权益券失效时间duedAt需要同步会员到期时间expiryAt
//initCoupon.setExpireAt(); // //initCoupon.setExpireAt();
initCoupon.setOperator(operator); // initCoupon.setOperator(operator);
initCoupon.setCreatedAt(nowTime); // initCoupon.setCreatedAt(nowTime);
//
//
List<CandyCouponRuleBuildParam> couponRuleList = parameter.getCouponRuleList(); // List<CandyCouponRuleBuildParam> couponRuleList = parameter.getCouponRuleList();
List<CandyCouponRule> initCouponRuleList = new ArrayList<>(); // List<CandyCouponRule> initCouponRuleList = new ArrayList<>();
if (!CollectionUtils.isEmpty(couponRuleList)) { // if (!CollectionUtils.isEmpty(couponRuleList)) {
couponRuleList.forEach(r -> { // couponRuleList.forEach(r -> {
CandyCouponRule initCouponRule = new CandyCouponRule(); // CandyCouponRule initCouponRule = new CandyCouponRule();
initCouponRule.setCruleId(IDGenerator.nextTimeId2()); // initCouponRule.setCruleId(IDGenerator.nextTimeId2());
initCouponRule.setCouponId(initCoupon.getCouponId()); // initCouponRule.setCouponId(initCoupon.getCouponId());
initCouponRule.setUseScope(r.getUseScope()); // initCouponRule.setUseScope(r.getUseScope());
initCouponRule.setBusiName(r.getBusiName()); // initCouponRule.setBusiName(r.getBusiName());
initCouponRule.setBusiId(r.getBusiId()); // initCouponRule.setBusiId(r.getBusiId());
initCouponRule.setState(1); // initCouponRule.setState(1);
//
initCouponRuleList.add(initCouponRule); // initCouponRuleList.add(initCouponRule);
}); // });
} // }
//
//
CandyMgtCoupon initMgtCoupon = new CandyMgtCoupon(); // CandyMgtCoupon initMgtCoupon = new CandyMgtCoupon();
initMgtCoupon.setMcouponId(parameter.getMrightsId()); // initMgtCoupon.setMcouponId(parameter.getMrightsId());
initMgtCoupon.setCouponId(initCoupon.getCouponId()); // initMgtCoupon.setCouponId(initCoupon.getCouponId());
initMgtCoupon.setState(10);// 发放状态[0-未发放|1-已发放|2-无效|9-发放中|10-会员礼包初始模版] // initMgtCoupon.setState(10);// 发放状态[0-未发放|1-已发放|2-无效|9-发放中|10-会员礼包初始模版]
//
initMgtCoupon.setEventAmt(parameter.getEventAmt()); // initMgtCoupon.setEventAmt(parameter.getEventAmt());
initMgtCoupon.setEventType(2); // initMgtCoupon.setEventType(2);
//initMgtCoupon.setEventLimit(); // //initMgtCoupon.setEventLimit();
//initMgtCoupon.setEventAt(); // //initMgtCoupon.setEventAt();
initMgtCoupon.setOperator(operator); // initMgtCoupon.setOperator(operator);
initMgtCoupon.setCreatedAt(nowTime); // initMgtCoupon.setCreatedAt(nowTime);
//
return candyMgtCouponAdminService.saveMgtCouponInfo(initCoupon, initMgtCoupon, initCouponRuleList); // return candyMgtCouponAdminService.saveMgtCouponInfo(initCoupon, initMgtCoupon, initCouponRuleList);
} // }
//
// @Override
// public boolean editMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter) {
// String couponId = parameter.getCouponId(), operator = ShiroUtils.getLoginName();
// LocalDateTime nowTime = LocalDateTime.now();
//
// LambdaQueryWrapper<CandyCoupon> candyCouponLambdaQueryWrapper = Wrappers.lambdaQuery(CandyCoupon.class)
// .eq(CandyCoupon::getCouponId, couponId)
// .eq(CandyCoupon::getState, 1)
// .eq(CandyCoupon::getExclusive, 1);
// if (candyCouponAdminService.count(candyCouponLambdaQueryWrapper) > 0) {
// CandyCoupon updateCoupon = new CandyCoupon();
// List<CandyCouponRule> initCouponRuleList = new ArrayList<>();
// CandyMgtCoupon updateMgtCoupon = new CandyMgtCoupon();
//
// switch (parameter.getState()) {
// case 1:// 编辑
//// CandyCoupon updateCoupon = new CandyCoupon();
// updateCoupon.setCouponId(couponId);
// updateCoupon.setState(1);
//
// updateCoupon.setTitle(parameter.getTitle());
// updateCoupon.setExclusive(1);
// updateCoupon.setBusiType(parameter.getBusiType());
// updateCoupon.setCouType(parameter.getCouType());
// updateCoupon.setValFace(parameter.getValFace());
// updateCoupon.setValOver(parameter.getValOver());
// updateCoupon.setValMinus(parameter.getValMinus());
// updateCoupon.setOverlay(parameter.getOverlay());
// updateCoupon.setOperator(operator);
// updateCoupon.setEffectAt(nowTime);// 会员权益券失效时间duedAt需要同步会员到期时间expiryAt
// updateCoupon.setUpdatedAt(nowTime);
//
//
// List<CandyCouponRuleBuildParam> couponRuleList = parameter.getCouponRuleList();
//// List<CandyCouponRule> initCouponRuleList = new ArrayList<>();
// if (!CollectionUtils.isEmpty(couponRuleList)) {
// couponRuleList.forEach(r -> {
// CandyCouponRule initCouponRule = new CandyCouponRule();
// initCouponRule.setCruleId(IDGenerator.nextTimeId2());
// initCouponRule.setCouponId(couponId);
// initCouponRule.setUseScope(r.getUseScope());
// initCouponRule.setBusiName(r.getBusiName());
// initCouponRule.setBusiId(r.getBusiId());
// initCouponRule.setState(1);
//
// initCouponRuleList.add(initCouponRule);
// });
// }
//
//// CandyMgtCoupon updateMgtCoupon = new CandyMgtCoupon();
// updateMgtCoupon.setMcouponId(parameter.getMrightsId());
// updateMgtCoupon.setCouponId(couponId);
// updateMgtCoupon.setEventAmt(parameter.getEventAmt());
// updateMgtCoupon.setOperator(operator);
// updateMgtCoupon.setUpdatedAt(nowTime);
// break;
// case 2:// 删除
// updateCoupon.setCouponId(couponId);
// updateCoupon.setOperator(operator);
// updateCoupon.setUpdatedAt(nowTime);
// updateCoupon.setState(2);
// updateCoupon.setExclusive(1);
//
// updateMgtCoupon.setMcouponId(parameter.getMrightsId());
// updateMgtCoupon.setCouponId(couponId);
// updateMgtCoupon.setOperator(operator);
// updateMgtCoupon.setUpdatedAt(nowTime);
// updateMgtCoupon.setState(2);
// break;
// }
//
// return candyMgtCouponAdminService.updateMgtCouponInfo(updateCoupon, updateMgtCoupon, initCouponRuleList);
// }
// return false;
// }
@Override @Override
public boolean editMgtCouponForMemberRights(CandyMemberCouponBuildParam parameter) { @Transactional
String couponId = parameter.getCouponId(), operator = ShiroUtils.getLoginName(); public boolean saveUpdateMgtCouponForMemberRights(CandyMemberCouponMatchParam parameter, CandyCoupon coupon) {
String operator = ShiroUtils.getLoginName();
LocalDateTime nowTime = LocalDateTime.now(); LocalDateTime nowTime = LocalDateTime.now();
LambdaQueryWrapper<CandyCoupon> candyCouponLambdaQueryWrapper = Wrappers.lambdaQuery(CandyCoupon.class) LambdaQueryWrapper<CandyCouponRule> couponRuleLambdaQueryWrapper = Wrappers.lambdaQuery();
.eq(CandyCoupon::getCouponId, couponId) couponRuleLambdaQueryWrapper.eq(CandyCouponRule::getCouponId, parameter.getCouponId());
.eq(CandyCoupon::getState, 1) couponRuleLambdaQueryWrapper.eq(CandyCouponRule::getState, 1);
.eq(CandyCoupon::getExclusive, 1);
if (candyCouponAdminService.count(candyCouponLambdaQueryWrapper) > 0) { LambdaQueryWrapper<CandyMgtCoupon> mgtCouponLambdaQueryWrapper = Wrappers.lambdaQuery();
CandyCoupon updateCoupon = new CandyCoupon(); mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getMcouponId, parameter.getMrightsId());
List<CandyCouponRule> initCouponRuleList = new ArrayList<>(); mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getCouponId, parameter.getCouponId());
CandyMgtCoupon updateMgtCoupon = new CandyMgtCoupon(); mgtCouponLambdaQueryWrapper.eq(CandyMgtCoupon::getState, 10);
switch (parameter.getState()) { AbstractRedisUtil redisAdamUtil = redisDataSourceUtil.getRedisAdamUtil();
case 1:// 编辑 List<AdamMemberRightsCouponRuleVo> memberRightsCouponRuleVoList = null;
// CandyCoupon updateCoupon = new CandyCoupon(); List<AdamMemberRightsCouponVo> memberRightsCouponVoList = null;
updateCoupon.setCouponId(couponId); CandyMgtCoupon mgtCouponOper = new CandyMgtCoupon();
updateCoupon.setState(1);
switch (parameter.getOper()) {
updateCoupon.setTitle(parameter.getTitle()); case 1:// 添加 ===========================================================================================================================
updateCoupon.setExclusive(1); mgtCouponOper.setMcouponId(parameter.getMrightsId());
updateCoupon.setBusiType(parameter.getBusiType()); mgtCouponOper.setCouponId(parameter.getCouponId());
updateCoupon.setCouType(parameter.getCouType()); mgtCouponOper.setState(10);// 发放状态[0-未发放|1-已发放|2-无效|9-发放中|10-会员礼包初始模版]
updateCoupon.setValFace(parameter.getValFace());
updateCoupon.setValOver(parameter.getValOver()); mgtCouponOper.setEventAmt(parameter.getEventAmt());
updateCoupon.setValMinus(parameter.getValMinus()); mgtCouponOper.setEventType(2);
updateCoupon.setOverlay(parameter.getOverlay()); //mgtCouponOper.setEventLimit();
updateCoupon.setOperator(operator); //mgtCouponOper.setEventAt();
updateCoupon.setEffectAt(nowTime);// 会员权益券失效时间duedAt需要同步会员到期时间expiryAt mgtCouponOper.setOperator(operator);
updateCoupon.setUpdatedAt(nowTime); mgtCouponOper.setCreatedAt(nowTime);
if (candyMgtCouponMapper.insert(mgtCouponOper) <= 0) {
List<CandyCouponRuleBuildParam> couponRuleList = parameter.getCouponRuleList(); return false;
// List<CandyCouponRule> initCouponRuleList = new ArrayList<>(); }
if (!CollectionUtils.isEmpty(couponRuleList)) {
couponRuleList.forEach(r -> { // 同步REDIS:用户端:购买会员详情页:权益列表:权益详情:专享券信息
CandyCouponRule initCouponRule = new CandyCouponRule(); memberRightsCouponVoList = (List<AdamMemberRightsCouponVo>) redisAdamUtil.get(
initCouponRule.setCruleId(IDGenerator.nextTimeId2()); AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(parameter.getMrightsId())
initCouponRule.setCouponId(couponId); );
initCouponRule.setUseScope(r.getUseScope()); memberRightsCouponRuleVoList = this.copyFromCandyCouponRule(candyCouponRuleAdminService.list(couponRuleLambdaQueryWrapper));
initCouponRule.setBusiName(r.getBusiName());
initCouponRule.setBusiId(r.getBusiId()); if (!CollectionUtils.isEmpty(memberRightsCouponVoList)) {
initCouponRule.setState(1); memberRightsCouponVoList.removeIf(r -> r.getCouponId().equals(parameter.getCouponId()));
} else {
initCouponRuleList.add(initCouponRule); memberRightsCouponVoList = new ArrayList<>();
}); }
for (int i = 0; i < parameter.getEventAmt(); i++) {
AdamMemberRightsCouponVo memberRightsCouponVo = AdamMemberRightsCouponVo.getNew();
memberRightsCouponVo.setMrightsId(parameter.getMrightsId());
memberRightsCouponVo.setCouponId(parameter.getCouponId());
memberRightsCouponVo.setBusiType(coupon.getBusiType());
memberRightsCouponVo.setCouType(coupon.getCouType());
memberRightsCouponVo.setTitle(coupon.getTitle());
memberRightsCouponVo.setLabel(coupon.getLabel());
memberRightsCouponVo.setNotice(coupon.getNotice());
memberRightsCouponVo.setValFace(coupon.getValFace());
memberRightsCouponVo.setValOver(coupon.getValOver());
memberRightsCouponVo.setValMinus(coupon.getValMinus());
memberRightsCouponVo.setDiscount(coupon.getDiscount());
memberRightsCouponVo.setUseRules(memberRightsCouponRuleVoList);
memberRightsCouponVoList.add(memberRightsCouponVo);
}
break;
case 2:// 删除 ===========================================================================================================================
mgtCouponOper.setState(2);
mgtCouponOper.setOperator(operator);
mgtCouponOper.setUpdatedAt(nowTime);
if (!candyMgtCouponAdminService.update(mgtCouponOper, mgtCouponLambdaQueryWrapper)) {
return false;
}
// 同步REDIS:用户端:购买会员详情页:权益列表:权益详情:专享券信息
memberRightsCouponVoList = (List<AdamMemberRightsCouponVo>) redisAdamUtil.get(
AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(parameter.getMrightsId())
);
if (!CollectionUtils.isEmpty(memberRightsCouponVoList)) {
memberRightsCouponVoList.removeIf(r -> r.getCouponId().equals(parameter.getCouponId()));
}
break;
case 3:// 编辑 ===========================================================================================================================
CandyMgtCoupon existMgtCoupon = candyMgtCouponAdminService.getOne(mgtCouponLambdaQueryWrapper);
if (null == existMgtCoupon) {// 不存在,则为新选更换(删除旧配置,添加新配置)
LambdaUpdateWrapper<CandyMgtCoupon> mgtCouponLambdaUpdateWrapper = Wrappers.lambdaUpdate();
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getMcouponId, parameter.getMrightsId());
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getCouponId, parameter.getOperCouponId());
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getState, 10);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getState, 2);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getOperator, operator);
mgtCouponLambdaUpdateWrapper.set(CandyMgtCoupon::getUpdatedAt, nowTime);
mgtCouponOper.setMcouponId(parameter.getMrightsId());
mgtCouponOper.setCouponId(parameter.getCouponId());
mgtCouponOper.setState(10);// 发放状态[0-未发放|1-已发放|2-无效|9-发放中|10-会员礼包初始模版]
mgtCouponOper.setEventAmt(parameter.getEventAmt());
mgtCouponOper.setEventType(2);
mgtCouponOper.setOperator(operator);
mgtCouponOper.setCreatedAt(nowTime);
if (!candyMgtCouponAdminService.update(mgtCouponLambdaUpdateWrapper) || candyMgtCouponMapper.insert(mgtCouponOper) <= 0) {
throw new LiquidnetServiceException("500", "编辑券新选更换数据更新失败");
} }
} else {// 存在,则更新发放信息
mgtCouponOper.setEventAmt(parameter.getEventAmt());
mgtCouponOper.setOperator(operator);
mgtCouponOper.setUpdatedAt(nowTime);
// CandyMgtCoupon updateMgtCoupon = new CandyMgtCoupon(); if (!candyMgtCouponAdminService.update(mgtCouponOper, mgtCouponLambdaQueryWrapper)) {
updateMgtCoupon.setMcouponId(parameter.getMrightsId()); return false;
updateMgtCoupon.setCouponId(couponId); }
updateMgtCoupon.setEventAmt(parameter.getEventAmt()); }
updateMgtCoupon.setOperator(operator);
updateMgtCoupon.setUpdatedAt(nowTime); // 同步REDIS:用户端:购买会员详情页:权益列表:权益详情:专享券信息
break; memberRightsCouponVoList = (List<AdamMemberRightsCouponVo>) redisAdamUtil.get(
case 2:// 删除 AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(parameter.getMrightsId())
updateCoupon.setCouponId(couponId); );
updateCoupon.setOperator(operator); memberRightsCouponRuleVoList = this.copyFromCandyCouponRule(candyCouponRuleAdminService.list(couponRuleLambdaQueryWrapper));
updateCoupon.setUpdatedAt(nowTime);
updateCoupon.setState(2); if (!CollectionUtils.isEmpty(memberRightsCouponVoList)) {
updateCoupon.setExclusive(1); memberRightsCouponVoList.removeIf(r -> r.getCouponId().equals(parameter.getOperCouponId()));
} else {
updateMgtCoupon.setMcouponId(parameter.getMrightsId()); memberRightsCouponVoList = new ArrayList<>();
updateMgtCoupon.setCouponId(couponId); }
updateMgtCoupon.setOperator(operator); for (int i = 0; i < parameter.getEventAmt(); i++) {
updateMgtCoupon.setUpdatedAt(nowTime); AdamMemberRightsCouponVo memberRightsCouponVo = AdamMemberRightsCouponVo.getNew();
updateMgtCoupon.setState(2); memberRightsCouponVo.setMrightsId(parameter.getMrightsId());
break; memberRightsCouponVo.setCouponId(parameter.getCouponId());
} memberRightsCouponVo.setBusiType(coupon.getBusiType());
memberRightsCouponVo.setCouType(coupon.getCouType());
return candyMgtCouponAdminService.updateMgtCouponInfo(updateCoupon, updateMgtCoupon, initCouponRuleList); memberRightsCouponVo.setTitle(coupon.getTitle());
memberRightsCouponVo.setLabel(coupon.getLabel());
memberRightsCouponVo.setNotice(coupon.getNotice());
memberRightsCouponVo.setValFace(coupon.getValFace());
memberRightsCouponVo.setValOver(coupon.getValOver());
memberRightsCouponVo.setValMinus(coupon.getValMinus());
memberRightsCouponVo.setDiscount(coupon.getDiscount());
memberRightsCouponVo.setUseRules(memberRightsCouponRuleVoList);
memberRightsCouponVoList.add(memberRightsCouponVo);
}
break;
default:// 无效 ===========================================================================================================================
log.warn("Invalid operation[parameter.oper={}]", parameter.getOper());
return false;
} }
return false; return redisAdamUtil.set(AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(parameter.getMrightsId()), memberRightsCouponVoList);
} }
@Override @Override
...@@ -286,53 +438,53 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa ...@@ -286,53 +438,53 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
throw new LiquidnetServiceException(); throw new LiquidnetServiceException();
} }
switch (initCoupon.getExclusive()) { // switch (initCoupon.getExclusive()) {
case 0: // case 0:
break; // break;
case 1: // case 1:
this.syncRdsForMemberRightsCouponProcessing(false, initCoupon, initMgtCoupon, initCouponRuleList); // this.syncRdsForMemberRightsCouponProcessing(false, initCoupon, initMgtCoupon, initCouponRuleList);
break; // break;
} // }
return true; return true;
} }
@Override // @Override
@Transactional // @Transactional
public boolean updateMgtCouponInfo(CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList) { // public boolean updateMgtCouponInfo(CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList) {
LambdaUpdateWrapper<CandyCoupon> couponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCoupon.class) // LambdaUpdateWrapper<CandyCoupon> couponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCoupon.class)
.eq(CandyCoupon::getCouponId, updateCoupon.getCouponId()) // .eq(CandyCoupon::getCouponId, updateCoupon.getCouponId())
.eq(CandyCoupon::getState, 1) // .eq(CandyCoupon::getState, 1)
.eq(CandyCoupon::getExclusive, updateCoupon.getExclusive()); // .eq(CandyCoupon::getExclusive, updateCoupon.getExclusive());
int updateCt = candyCouponMapper.update(updateCoupon, couponLambdaUpdateWrapper); // int updateCt = candyCouponMapper.update(updateCoupon, couponLambdaUpdateWrapper);
//
LambdaUpdateWrapper<CandyMgtCoupon> mgtCouponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyMgtCoupon.class); // LambdaUpdateWrapper<CandyMgtCoupon> mgtCouponLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyMgtCoupon.class);
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getMcouponId, updateMgtCoupon.getMcouponId()); // mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getMcouponId, updateMgtCoupon.getMcouponId());
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getCouponId, updateMgtCoupon.getCouponId()); // mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getCouponId, updateMgtCoupon.getCouponId());
mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getState, updateCoupon.getExclusive() == 1 ? 10 : 0); // mgtCouponLambdaUpdateWrapper.eq(CandyMgtCoupon::getState, updateCoupon.getExclusive() == 1 ? 10 : 0);
updateCt += candyMgtCouponMapper.update(updateMgtCoupon, mgtCouponLambdaUpdateWrapper); // updateCt += candyMgtCouponMapper.update(updateMgtCoupon, mgtCouponLambdaUpdateWrapper);
//
//
LambdaUpdateWrapper<CandyCouponRule> couponRuleLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponRule.class) // LambdaUpdateWrapper<CandyCouponRule> couponRuleLambdaUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponRule.class)
.eq(CandyCouponRule::getCouponId, updateCoupon.getCouponId()) // .eq(CandyCouponRule::getCouponId, updateCoupon.getCouponId())
.eq(CandyCouponRule::getState, 1) // .eq(CandyCouponRule::getState, 1)
.set(CandyCouponRule::getState, 2); // .set(CandyCouponRule::getState, 2);
candyCouponRuleAdminService.update(couponRuleLambdaUpdateWrapper); // candyCouponRuleAdminService.update(couponRuleLambdaUpdateWrapper);
//
if (updateCt < 2 || (!CollectionUtils.isEmpty(initCouponRuleList) && !candyCouponRuleAdminService.saveBatch(initCouponRuleList))) { // if (updateCt < 2 || (!CollectionUtils.isEmpty(initCouponRuleList) && !candyCouponRuleAdminService.saveBatch(initCouponRuleList))) {
throw new LiquidnetServiceException(); // throw new LiquidnetServiceException();
} // }
//
switch (updateCoupon.getExclusive()) { // switch (updateCoupon.getExclusive()) {
case 0: // case 0:
break; // break;
case 1: // case 1:
this.syncRdsForMemberRightsCouponProcessing(true, updateCoupon, updateMgtCoupon, initCouponRuleList); // this.syncRdsForMemberRightsCouponProcessing(true, updateCoupon, updateMgtCoupon, initCouponRuleList);
break; // break;
} // }
//
return true; // return true;
} // }
@Override @Override
public List<CandyMgtCouponInfoDto> listForMgtCouponInfoDto(CandyMgtCouponListParam listParam) { public List<CandyMgtCouponInfoDto> listForMgtCouponInfoDto(CandyMgtCouponListParam listParam) {
...@@ -348,58 +500,60 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa ...@@ -348,58 +500,60 @@ public class CandyMgtCouponAdminServiceImpl extends ServiceImpl<CandyMgtCouponMa
private List<AdamMemberRightsCouponRuleVo> copyFromCandyCouponRule(List<CandyCouponRule> couponRuleList) { private List<AdamMemberRightsCouponRuleVo> copyFromCandyCouponRule(List<CandyCouponRule> couponRuleList) {
List<AdamMemberRightsCouponRuleVo> memberRightsCouponRuleVoList = new ArrayList<>(); List<AdamMemberRightsCouponRuleVo> memberRightsCouponRuleVoList = new ArrayList<>();
couponRuleList.forEach(r -> { if (!CollectionUtils.isEmpty(couponRuleList)) {
AdamMemberRightsCouponRuleVo memberRightsCouponRuleVo = AdamMemberRightsCouponRuleVo.getNew(); couponRuleList.forEach(r -> {
memberRightsCouponRuleVo.setBusiId(r.getBusiId()); AdamMemberRightsCouponRuleVo memberRightsCouponRuleVo = AdamMemberRightsCouponRuleVo.getNew();
memberRightsCouponRuleVo.setBusiName(r.getBusiName()); memberRightsCouponRuleVo.setBusiId(r.getBusiId());
memberRightsCouponRuleVo.setUseScope(r.getUseScope()); memberRightsCouponRuleVo.setBusiName(r.getBusiName());
memberRightsCouponRuleVo.setUseScope(r.getUseScope());
memberRightsCouponRuleVoList.add(memberRightsCouponRuleVo);
});
return memberRightsCouponRuleVoList;
}
/**
* 同步REDIS:用户端:购买会员详情页:权益列表:权益详情:专享券信息
*
* @param editing true-编辑|false-新增
* @param updateCoupon CandyCoupon
* @param updateMgtCoupon CandyCoupon
* @param initCouponRuleList List<CandyCouponRule>
*/
private void syncRdsForMemberRightsCouponProcessing(boolean editing, CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList) {
List<AdamMemberRightsCouponRuleVo> memberRightsCouponRuleVoList = this.copyFromCandyCouponRule(initCouponRuleList);
List<AdamMemberRightsCouponVo> memberRightsCouponVoList =
(List<AdamMemberRightsCouponVo>) redisDataSourceUtil.getRedisAdamUtil().get(AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(updateMgtCoupon.getMcouponId()));
if (editing) {// 编辑操作
memberRightsCouponVoList.removeIf(r -> r.getCouponId().equals(updateCoupon.getCouponId()));
} else {// 新增操作
if (CollectionUtils.isEmpty(memberRightsCouponVoList)) {
memberRightsCouponVoList = new ArrayList<>();
}
}
if (updateCoupon.getState() == 1) { memberRightsCouponRuleVoList.add(memberRightsCouponRuleVo);
Integer eventAmt = updateMgtCoupon.getEventAmt(); });
for (int i = 0; i < eventAmt; i++) {
AdamMemberRightsCouponVo memberRightsCouponVo = AdamMemberRightsCouponVo.getNew();
memberRightsCouponVo.setMrightsId(updateMgtCoupon.getMcouponId());
memberRightsCouponVo.setCouponId(updateCoupon.getCouponId());
memberRightsCouponVo.setBusiType(updateCoupon.getBusiType());
memberRightsCouponVo.setCouType(updateCoupon.getCouType());
memberRightsCouponVo.setTitle(updateCoupon.getTitle());
memberRightsCouponVo.setLabel(updateCoupon.getLabel());
memberRightsCouponVo.setNotice(updateCoupon.getNotice());
memberRightsCouponVo.setValFace(updateCoupon.getValFace());
memberRightsCouponVo.setValOver(updateCoupon.getValOver());
memberRightsCouponVo.setValMinus(updateCoupon.getValMinus());
memberRightsCouponVo.setUseRules(memberRightsCouponRuleVoList);
memberRightsCouponVoList.add(memberRightsCouponVo);
}
} }
return memberRightsCouponRuleVoList;
redisDataSourceUtil.getRedisAdamUtil().set(AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(updateMgtCoupon.getMcouponId()), memberRightsCouponVoList);
} }
// /**
// * 同步REDIS:用户端:购买会员详情页:权益列表:权益详情:专享券信息
// *
// * @param editing true-编辑|false-新增
// * @param updateCoupon CandyCoupon
// * @param updateMgtCoupon updateMgtCoupon
// * @param initCouponRuleList List<CandyCouponRule>
// */
// private void syncRdsForMemberRightsCouponProcessing(boolean editing, CandyCoupon updateCoupon, CandyMgtCoupon updateMgtCoupon, List<CandyCouponRule> initCouponRuleList) {
// List<AdamMemberRightsCouponRuleVo> memberRightsCouponRuleVoList = this.copyFromCandyCouponRule(initCouponRuleList);
//
// List<AdamMemberRightsCouponVo> memberRightsCouponVoList =
// (List<AdamMemberRightsCouponVo>) redisDataSourceUtil.getRedisAdamUtil().get(AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(updateMgtCoupon.getMcouponId()));
// if (editing) {// 编辑操作
// memberRightsCouponVoList.removeIf(r -> r.getCouponId().equals(updateCoupon.getCouponId()));
// } else {// 新增操作
// if (CollectionUtils.isEmpty(memberRightsCouponVoList)) {
// memberRightsCouponVoList = new ArrayList<>();
// }
// }
//
// if (updateCoupon.getState() == 1) {
// Integer eventAmt = updateMgtCoupon.getEventAmt();
// for (int i = 0; i < eventAmt; i++) {
// AdamMemberRightsCouponVo memberRightsCouponVo = AdamMemberRightsCouponVo.getNew();
// memberRightsCouponVo.setMrightsId(updateMgtCoupon.getMcouponId());
// memberRightsCouponVo.setCouponId(updateCoupon.getCouponId());
// memberRightsCouponVo.setBusiType(updateCoupon.getBusiType());
// memberRightsCouponVo.setCouType(updateCoupon.getCouType());
// memberRightsCouponVo.setTitle(updateCoupon.getTitle());
// memberRightsCouponVo.setLabel(updateCoupon.getLabel());
// memberRightsCouponVo.setNotice(updateCoupon.getNotice());
// memberRightsCouponVo.setValFace(updateCoupon.getValFace());
// memberRightsCouponVo.setValOver(updateCoupon.getValOver());
// memberRightsCouponVo.setValMinus(updateCoupon.getValMinus());
// memberRightsCouponVo.setUseRules(memberRightsCouponRuleVoList);
//
// memberRightsCouponVoList.add(memberRightsCouponVo);
// }
// }
//
// redisDataSourceUtil.getRedisAdamUtil().set(AdamRedisConst.INFO_MEMBER_RIGHTS_COUPON.concat(updateMgtCoupon.getMcouponId()), memberRightsCouponVoList);
// }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment