商品上下架+静态页面+同步缓存
程序员文章站
2022-03-30 20:17:29
...
1.商品上下架修改状态
2.上下架同步添加/删除到缓存中
3.同步维护商品的库存
4.上下架同步生成静态/删除页面
@GetMapping("/updateState/{id}")
public ResponseResult login(@PathVariable Integer id) {
logger.info("优惠券上下架开始");
ResponseResult result = ResponseResult.SUCCESS();
try {
QueryWrapper<TbCoupon> wrapper = new QueryWrapper();
wrapper.lambda().eq(TbCoupon::getId,id);
TbCoupon tbCoupon = tbCouponService.getOne(wrapper);
if (tbCoupon.getStatus() == 0) {
tbCoupon.setStatus(1);
tbCouponService.saveOrUpdate(tbCoupon);
//上架同步添加到缓存中
redisTemplate.opsForHash().put("couponList",String.valueOf(tbCoupon.getId()),tbCoupon);
//同步维护商品的库存
stringRedisTemplate.opsForValue().set("coupon:"+tbCoupon.getId(),String.valueOf(tbCoupon.getNum()));
MbConfig.getHtml(tbCoupon,htmlPath,"cseckill-item.html");
logger.info("优惠券上架同步添加到缓存中");
} else {
tbCoupon.setStatus(0);
tbCouponService.saveOrUpdate(tbCoupon);
//下架同步删除缓冲
redisTemplate.opsForHash().delete("couponList",String.valueOf(tbCoupon.getId()));
//
//同步维护商品的库存
stringRedisTemplate.delete("coupon:"+tbCoupon.getId());
MbConfig.delHtml(tbCoupon,htmlPath);
logger.info("优惠券下架同步从缓冲中删除");
}
} catch (Exception e) {
logger.error("优惠券上下架异常,{}"+e.toString());
result.setSuccess(false);
result.setMessage("优惠券上下架失败" + e.toString());
}
logger.info("优惠券上下架结束");
return result;
}
上一篇: 手把手教你玩转Markdown编译器