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

Commit f7956b82 authored by jiangxiulong's avatar jiangxiulong

积分 admin relation

parent 92d9a534
......@@ -23,8 +23,13 @@ public class SweetIntegralActivityPrizeRelationFormParam implements Serializable
private static final long serialVersionUID = -4381851476183020667L;
@ApiModelProperty(value = "主键id 编辑时候传", example = "429803743878963206506461")
private String prizeRelationId;
@ApiModelProperty(value = "活动主键id", example = "429803743878963206506461")
@NotBlank(message = "integralActivityId不能为空")
private String integralActivityId;
@ApiModelProperty(value = "奖品主键id", example = "429803743878963206506461")
@NotBlank(message = "prizeId不能为空")
private String prizeId;
@ApiModelProperty(value = "券id", example = "429803743878963206506461")
@NotBlank(message = "couponId不能为空")
......@@ -48,7 +53,7 @@ public class SweetIntegralActivityPrizeRelationFormParam implements Serializable
public SweetIntegralActivityPrizeRelation copy(SweetIntegralActivityPrizeRelationFormParam source) {
SweetIntegralActivityPrizeRelation activityPrizeRelation = SweetIntegralActivityPrizeRelation.getNew();
if (null == source) return null;
activityPrizeRelation.setPrizeRelationId(source.getPrizeRelationId());
activityPrizeRelation.setPrizeId(source.getPrizeId());
activityPrizeRelation.setCouponId(source.getCouponId());
activityPrizeRelation.setCouponTitle(source.getCouponTitle());
return activityPrizeRelation;
......
......@@ -8,9 +8,11 @@ import com.liquidnet.client.admin.common.core.page.TableDataInfo;
import com.liquidnet.client.admin.common.enums.BusinessType;
import com.liquidnet.client.admin.zhengzai.sweet.service.ISweetIntegralActivityPrizeRelationService;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeRelationFormParam;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -33,17 +35,16 @@ import javax.validation.Valid;
@Controller
@RequestMapping("/sweet/integralActivityPrizeRelation")
public class SweetIntegralActivityPrizeRelationController extends BaseController {
private String prefix = "zhengzai/sweet/integralActivity";
@Autowired
private ISweetIntegralActivityPrizeRelationService activityPrizeRelationService;
@Log(title = "积分活动创建", businessType = BusinessType.INSERT)
@RequiresPermissions("sweet:integralActivity:create")
@Log(title = "积分活动奖品内部关联券等添加", businessType = BusinessType.INSERT)
@RequiresPermissions("sweet:integralActivityPrizeRelation:create")
@PostMapping("create")
@ApiOperation(value = "积分活动创建")
@ApiOperation(value = "积分活动奖品内部关联券等添加")
@ResponseBody
public AjaxResult create(@Valid @RequestBody SweetIntegralActivityFromParam param) {
public AjaxResult create(@Valid @RequestBody SweetIntegralActivityPrizeRelationFormParam param) {
Integer result = activityPrizeRelationService.createForm(param);
if (result > 0) {
return success("操作成功");
......@@ -52,13 +53,17 @@ public class SweetIntegralActivityPrizeRelationController extends BaseController
}
}
@Log(title = "积分活动编辑", businessType = BusinessType.UPDATE)
@RequiresPermissions("sweet:integralActivity:update")
@PutMapping("update")
@ApiOperation(value = "积分活动编辑")
@Log(title = "积分活动奖品内部关联券等编辑", businessType = BusinessType.UPDATE)
@RequiresPermissions("sweet:integralActivityPrizeRelation:update")
@PutMapping("delete")
@ApiOperation(value = "积分活动奖品内部关联券等编辑")
@ResponseBody
public AjaxResult update(@Valid @RequestBody SweetIntegralActivityFromParam param) {
Integer result = activityPrizeRelationService.updateForm(param);
@ApiImplicitParams({
@ApiImplicitParam(type = "form", dataType = "String", name = "prizeRelationId", value = "主键id", required = true),
@ApiImplicitParam(type = "form", dataType = "String", name = "integralActivityId", value = "活动主键id", required = true),
})
public AjaxResult delete(@RequestParam() String prizeRelationId, @RequestParam() String integralActivityId) {
Integer result = activityPrizeRelationService.delete(prizeRelationId, integralActivityId);
if (result > 0) {
return success("操作成功");
} else {
......@@ -66,10 +71,10 @@ public class SweetIntegralActivityPrizeRelationController extends BaseController
}
}
@Log(title = "积分活动列表数据", businessType = BusinessType.LIST)
@RequiresPermissions("sweet:integralActivity:list")
@ApiOperation(value = "积分活动列表数据")
@PostMapping("list")
@Log(title = "积分活动奖品内部关联券等列表", businessType = BusinessType.LIST)
@RequiresPermissions("sweet:integralActivityPrizeRelation:list")
@GetMapping("list")
@ApiOperation(value = "积分活动奖品内部关联券等列表")
@ResponseBody
public TableDataInfo list(SweetIntegralActivityListSearchParam listParam) {
PageInfo<SweetIntegralActivityDto> result = activityPrizeRelationService.list(listParam);
......
......@@ -2,8 +2,8 @@ package com.liquidnet.client.admin.zhengzai.sweet.service;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeRelationFormParam;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityPrizeRelation;
import com.baomidou.mybatisplus.extension.service.IService;
......@@ -16,9 +16,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2021-12-02
*/
public interface ISweetIntegralActivityPrizeRelationService extends IService<SweetIntegralActivityPrizeRelation> {
Integer createForm(SweetIntegralActivityFromParam param);
Integer updateForm(SweetIntegralActivityFromParam param);
Integer createForm(SweetIntegralActivityPrizeRelationFormParam param);
Integer delete(String prizeRelationId, String integralActivityId);
PageInfo<SweetIntegralActivityDto> list(SweetIntegralActivityListSearchParam listParam);
}
......@@ -9,9 +9,8 @@ import com.liquidnet.client.admin.zhengzai.sweet.utils.SweetObjectAdminUtil;
import com.liquidnet.client.admin.zhengzai.sweet.utils.SweetRedisAdminUtils;
import com.liquidnet.commons.lang.util.IDGenerator;
import com.liquidnet.service.sweet.dto.SweetIntegralActivityDto;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityFromParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityListSearchParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeFormParam;
import com.liquidnet.service.sweet.dto.param.admin.SweetIntegralActivityPrizeRelationFormParam;
import com.liquidnet.service.sweet.dto.vo.IntegralActivityVo;
import com.liquidnet.service.sweet.entity.SweetIntegralActivity;
import com.liquidnet.service.sweet.entity.SweetIntegralActivityPrize;
......@@ -23,7 +22,6 @@ import com.liquidnet.service.sweet.mapper.SweetIntegralActivityPrizeRelationMapp
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.time.LocalDateTime;
import java.util.List;
......@@ -44,105 +42,38 @@ public class SweetIntegralActivityPrizeRelationServiceImpl extends ServiceImpl<S
@Autowired
private SweetIntegralActivityPrizeMapper sweetIntegralActivityPrizeMapper;
@Autowired
private SweetIntegralActivityDrawMapper sweetIntegralActivityDrawMapper;
@Autowired
private SweetIntegralActivityPrizeRelationMapper relationMapper;
@Autowired
private SweetRedisAdminUtils sweetRedisAdminUtils;
@Override
public Integer createForm(SweetIntegralActivityFromParam param) {
public Integer createForm(SweetIntegralActivityPrizeRelationFormParam param) {
try {
SweetIntegralActivity sweetIntegralActivity = SweetIntegralActivityFromParam.getNew().copy(param);
String integralActivityId = IDGenerator.nextSnowId();
sweetIntegralActivity.setIntegralActivityId(integralActivityId);
int insert = sweetIntegralActivityMapper.insert(sweetIntegralActivity);
List<SweetIntegralActivityPrizeFormParam> prizeList = param.getPrizeList();
if (!CollectionUtils.isEmpty(prizeList)) {
for (SweetIntegralActivityPrizeFormParam prize : prizeList) {
SweetIntegralActivityPrize sweetIntegralActivityPrize = SweetIntegralActivityPrizeFormParam.getNew().copy(prize);
String prizeId = IDGenerator.nextSnowId();
sweetIntegralActivityPrize.setPrizeId(prizeId);
sweetIntegralActivityPrize.setIntegralActivityId(integralActivityId);
sweetIntegralActivityPrizeMapper.insert(sweetIntegralActivityPrize);
// 奖品库存
sweetRedisAdminUtils.incrIntegralActivityPrizeNum(integralActivityId, sweetIntegralActivityPrize.getPrizeId(), sweetIntegralActivityPrize.getPrizeNum());
/*List<SweetIntegralActivityPrizeRelationFormParam> relationList = prize.getPrizeRelationList();
if (!CollectionUtils.isEmpty(relationList)) {
for (SweetIntegralActivityPrizeRelationFormParam relation : relationList) {
SweetIntegralActivityPrizeRelation prizeRelation = SweetIntegralActivityPrizeRelationFormParam.getNew().copy(relation);
prizeRelation.setPrizeId(prizeId);
String relationId = IDGenerator.nextSnowId();
prizeRelation.setPrizeRelationId(relationId);
relationMapper.insert(prizeRelation);
}
}*/
}
}
SweetIntegralActivityPrizeRelation prizeRelation = SweetIntegralActivityPrizeRelationFormParam.getNew().copy(param);
String relationId = IDGenerator.nextSnowId();
prizeRelation.setPrizeRelationId(relationId);
int insert = relationMapper.insert(prizeRelation);
// 活动redis处理
this.integralActivityList(integralActivityId);
this.integralActivityList(param.getIntegralActivityId());
return insert;
} catch (Exception e) {
log.error("创建活动失败 [e:{}]", e);
log.error("添加失败 [e:{}]", e);
return 0;
}
}
@Override
public Integer updateForm(SweetIntegralActivityFromParam param) {
public Integer delete(String prizeRelationId, String integralActivityId) {
try {
LocalDateTime nowTime = LocalDateTime.now();
SweetIntegralActivity sweetIntegralActivity = SweetIntegralActivityFromParam.getNew().copy(param);
sweetIntegralActivity.setUpdatedAt(nowTime);
String integralActivityId = param.getIntegralActivityId();
int update = sweetIntegralActivityMapper.update(
sweetIntegralActivity,
Wrappers.lambdaUpdate(SweetIntegralActivity.class).eq(SweetIntegralActivity::getIntegralActivityId, integralActivityId)
int delete = relationMapper.delete(
Wrappers.lambdaUpdate(SweetIntegralActivityPrizeRelation.class).eq(SweetIntegralActivityPrizeRelation::getPrizeRelationId, prizeRelationId)
);
List<SweetIntegralActivityPrizeFormParam> prizeList = param.getPrizeList();
if (!CollectionUtils.isEmpty(prizeList)) {
for (SweetIntegralActivityPrizeFormParam prize : prizeList) {
SweetIntegralActivityPrize sweetIntegralActivityPrize = SweetIntegralActivityPrizeFormParam.getNew().copy(prize);
sweetIntegralActivityPrize.setUpdatedAt(nowTime);
String prizeId = prize.getPrizeId();
// 处理奖品库存
SweetIntegralActivityPrize sweetIntegralActivityPrizeOld = sweetIntegralActivityPrizeMapper.selectOne(
Wrappers.lambdaQuery(SweetIntegralActivityPrize.class).eq(SweetIntegralActivityPrize::getPrizeId, prizeId)
);
sweetIntegralActivityPrizeMapper.update(
sweetIntegralActivityPrize,
Wrappers.lambdaUpdate(SweetIntegralActivityPrize.class).eq(SweetIntegralActivityPrize::getPrizeId, prizeId)
);
Integer prizeNum = sweetIntegralActivityPrizeOld.getPrizeNum();
Integer prizeNumNew = sweetIntegralActivityPrize.getPrizeNum();
int prizeNumDiff = prizeNumNew - prizeNum;
if (prizeNumDiff > 0) {//增加库存
sweetRedisAdminUtils.incrIntegralActivityPrizeNum(integralActivityId, prizeId, prizeNumDiff);
} else if(prizeNumDiff < 0) {// 减少库存
sweetRedisAdminUtils.decrIntegralActivityPrizeNum(integralActivityId, prizeId, Math.abs(prizeNumDiff));
}
/*List<SweetIntegralActivityPrizeRelationFormParam> relationList = prize.getPrizeRelationList();
if (!CollectionUtils.isEmpty(relationList)) {
for (SweetIntegralActivityPrizeRelationFormParam relation : relationList) {
SweetIntegralActivityPrizeRelation prizeRelation = SweetIntegralActivityPrizeRelationFormParam.getNew().copy(relation);
prizeRelation.setUpdatedAt(nowTime);
String relationId = relation.getPrizeRelationId();
relationMapper.update(
prizeRelation,
Wrappers.lambdaUpdate(SweetIntegralActivityPrizeRelation.class).eq(SweetIntegralActivityPrizeRelation::getPrizeRelationId, relationId)
);
}
}*/
}
}
// 活动redis处理
this.integralActivityList(integralActivityId);
return update;
return delete;
} catch (Exception e) {
log.error("编辑活动失败 [e:{}]", e);
log.error("删除失败 [e:{}]", e);
return 0;
}
}
......
......@@ -52,7 +52,8 @@ public class SweetMathUtil {
// getIndex("basicServices:upushList:IOS");
// getIndex("jxl-lock-test");
// getIndex("kylin:performances:id:499112736168099840841262");
getIndex("kylin:performances:id:549875278160650249766815");
// getIndex("kylin:performances:id:549875278160650249766815");
getIndex("sweet:user:applet:mobile:18548596019");
// getIndex("basicServices:upushList:Android");
// getIndex("basicServices:zhengzaiAppVersionsAndroid");
// getIndex("basicServices:zhengzaiAppVersionsIos");
......
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