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

Commit 566300e0 authored by 胡佳晨's avatar 胡佳晨

Merge remote-tracking branch 'origin/dev_member_voucher_social' into dev_member_voucher_social

parents 51c08033 ce55657f
package com.liquidnet.client.admin.web.controller.zhengzai.candy;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
......@@ -16,6 +17,7 @@ import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.JsonUtils;
import com.liquidnet.service.candy.constant.CandyRedisConst;
import com.liquidnet.service.candy.dto.CandyCouponCodeDto;
import com.liquidnet.service.candy.dto.CandyUserCouponBasicDto;
import com.liquidnet.service.candy.dto.admin.CandyCouponCodeListParam;
import com.liquidnet.service.candy.dto.admin.CandyCouponCodeOptParam;
import com.liquidnet.service.candy.entity.CandyCouponCode;
......@@ -102,9 +104,14 @@ public class CandyCouponCodeAdminController extends BaseController {
return AjaxResult.warn("参数无效");
}
LambdaQueryWrapper<CandyCouponCode> couponCodeLambdaQueryWrapper = Wrappers.lambdaQuery(CandyCouponCode.class);
couponCodeLambdaQueryWrapper.in(CandyCouponCode::getCcode, ccodes);
couponCodeLambdaQueryWrapper.eq(CandyCouponCode::getCouponId, couponId);
List<CandyCouponCode> list = candyCouponCodeAdminService.list(couponCodeLambdaQueryWrapper);
List<String> ccodeUpdateList = CollectionUtil.arrayListString();
optParam.getCcodes().forEach(r -> {
String key = CandyRedisConst.BASIC_COUPON_CODE.concat(r);
list.forEach(r -> {
String key = CandyRedisConst.BASIC_COUPON_CODE.concat(r.getCcode());
CandyCouponCodeDto dto = (CandyCouponCodeDto) redisUtil.get(key);
if (null != dto && dto.getState() == 0) {
dto.setState(4);
......@@ -113,13 +120,16 @@ public class CandyCouponCodeAdminController extends BaseController {
}
});
LambdaUpdateWrapper<CandyCouponCode> couponCodeUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponCode.class);
couponCodeUpdateWrapper.in(CandyCouponCode::getCcode, ccodeUpdateList).eq(CandyCouponCode::getCouponId, couponId);
if (!CollectionUtils.isEmpty(ccodeUpdateList)) {
LambdaUpdateWrapper<CandyCouponCode> couponCodeUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponCode.class);
couponCodeUpdateWrapper.in(CandyCouponCode::getCcode, ccodeUpdateList).eq(CandyCouponCode::getCouponId, couponId);
CandyCouponCode updateCouponCode = new CandyCouponCode();
updateCouponCode.setState(4);
updateCouponCode.setUpdatedAt(LocalDateTime.now());
return toAjax(candyCouponCodeAdminService.update(updateCouponCode, couponCodeUpdateWrapper));
CandyCouponCode updateCouponCode = new CandyCouponCode();
updateCouponCode.setState(4);
updateCouponCode.setUpdatedAt(LocalDateTime.now());
return toAjax(candyCouponCodeAdminService.update(updateCouponCode, couponCodeUpdateWrapper));
}
return toAjax(false);
}
@RequiresPermissions("candy:coupon:code:recover")
......@@ -137,23 +147,46 @@ public class CandyCouponCodeAdminController extends BaseController {
return AjaxResult.warn("参数无效");
}
LambdaQueryWrapper<CandyCouponCode> couponCodeLambdaQueryWrapper = Wrappers.lambdaQuery(CandyCouponCode.class);
couponCodeLambdaQueryWrapper.in(CandyCouponCode::getCcode, ccodes);
couponCodeLambdaQueryWrapper.eq(CandyCouponCode::getCouponId, couponId);
List<CandyCouponCode> list = candyCouponCodeAdminService.list(couponCodeLambdaQueryWrapper);
List<String> ccodeUpdateList = CollectionUtil.arrayListString();
ccodes.forEach(r -> {
String key = CandyRedisConst.BASIC_COUPON_CODE.concat(r);
CandyCouponCodeDto dto = (CandyCouponCodeDto) redisUtil.get(key);
if (null != dto && dto.getState() == 1) {
dto.setState(5);
redisUtil.set(key, dto);
ccodeUpdateList.add(dto.getCcode());
list.forEach(r -> {
String uckey = CandyRedisConst.BASIC_USER_COUPON.concat(r.getRedeemUid());
List<CandyUserCouponBasicDto> vos = (List<CandyUserCouponBasicDto>) redisUtil.get(uckey);
if (!CollectionUtils.isEmpty(vos)) {
CandyUserCouponBasicDto userCouponBasicDto = vos.parallelStream().filter(v -> v.getCouponId().equals(couponId)).findAny().orElse(null);
if (null != userCouponBasicDto && userCouponBasicDto.getState() == 1) {
String cckey = CandyRedisConst.BASIC_COUPON_CODE.concat(r.getCcode());
CandyCouponCodeDto dto = (CandyCouponCodeDto) redisUtil.get(cckey);
if (null != dto && dto.getState() == 1) {
dto.setState(5);
redisUtil.set(cckey, dto);
vos.removeIf(vr -> vr.getCouponId().equals(couponId));
redisUtil.set(uckey, vos);
ccodeUpdateList.add(dto.getCcode());
}
}
}
});
LambdaUpdateWrapper<CandyCouponCode> couponCodeUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponCode.class);
couponCodeUpdateWrapper.in(CandyCouponCode::getCcode, ccodeUpdateList).eq(CandyCouponCode::getCouponId, couponId);
if (!CollectionUtils.isEmpty(ccodeUpdateList)) {
LambdaUpdateWrapper<CandyCouponCode> couponCodeUpdateWrapper = Wrappers.lambdaUpdate(CandyCouponCode.class);
couponCodeUpdateWrapper.in(CandyCouponCode::getCcode, ccodeUpdateList).eq(CandyCouponCode::getCouponId, couponId);
CandyCouponCode updateCouponCode = new CandyCouponCode();
updateCouponCode.setState(5);
updateCouponCode.setUpdatedAt(LocalDateTime.now());
CandyCouponCode updateCouponCode = new CandyCouponCode();
updateCouponCode.setState(5);
updateCouponCode.setUpdatedAt(LocalDateTime.now());
return toAjax(candyCouponCodeAdminService.update(updateCouponCode, couponCodeUpdateWrapper));
return toAjax(candyCouponCodeAdminService.update(updateCouponCode, couponCodeUpdateWrapper));
}
return toAjax(false);
}
}
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