积分模块相关接口

This commit is contained in:
谭凯凯 2024-10-31 10:28:47 +08:00 committed by Tankaikai
parent 3a00b85a02
commit 8888c13083
7 changed files with 48 additions and 25 deletions

View File

@ -34,7 +34,7 @@ public class TbPointsGoodsSettingController {
@GetMapping("{id}")
@ApiOperation("信息")
public ResponseEntity get(@PathVariable("id") Integer id) {
public ResponseEntity get(@PathVariable("id") Long id) {
TbPointsGoodsSetting data = tbPointsGoodsSettingService.getById(id);
return ResponseEntity.ok().body(data);
}
@ -52,4 +52,11 @@ public class TbPointsGoodsSettingController {
boolean ret = tbPointsGoodsSettingService.update(dto);
return ResponseEntity.ok().body(ret);
}
@DeleteMapping("{id}")
@ApiOperation("删除")
public ResponseEntity delete(@PathVariable("id") Long id) {
tbPointsGoodsSettingService.delete(id);
return ResponseEntity.ok().build();
}
}

View File

@ -1,8 +1,6 @@
package cn.ysk.cashier.mybatis.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -16,7 +14,7 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("tb_member_points")
@TableName("tb_shop_user")
public class TbMemberPoints {
private static final long serialVersionUID = 1L;
@ -32,33 +30,36 @@ public class TbMemberPoints {
/**
* 会员id
*/
@TableField(value = "id", insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
private Long memberId;
/**
* 会员名称
*/
@TableField("name")
private String memberName;
/**
* 会员头像
*/
@TableField("head_img")
private String avatarUrl;
/**
* 手机号码
*/
@TableField("telephone")
private String mobile;
/**
* 账户积分
*/
@TableField("account_points")
private Integer accountPoints;
/**
* 创建时间
*/
private Date createTime;
/**
* 最近一次积分变动时间
*/
@TableField("last_points_change_time")
private Date lastPointsChangeTime;
/**
* 最近一次浮动积分
*/
@TableField("last_float_points")
private Integer lastFloatPoints;
}

View File

@ -63,6 +63,10 @@ public class TbPointsGoodsSetting {
*/
@TableField(value = "goods_description", updateStrategy = FieldStrategy.ALWAYS)
private String goodsDescription;
/**
* 累计兑换数量
*/
private Integer totalExchangeCount;
/**
* 是否上架 1- 0-
*/
@ -75,4 +79,8 @@ public class TbPointsGoodsSetting {
* 更新时间
*/
private Date updateTime;
/**
* 逻辑删除标志 1- 0-
*/
private Integer delFlag;
}

View File

@ -19,4 +19,6 @@ public interface TbPointsGoodsSettingService extends IService<TbPointsGoodsSetti
boolean update(TbPointsGoodsSetting dto);
void delete(Long id);
}

View File

@ -10,11 +10,13 @@ import cn.ysk.cashier.exception.BadRequestException;
import cn.ysk.cashier.mybatis.entity.TbMemberPoints;
import cn.ysk.cashier.mybatis.entity.TbMemberPointsLog;
import cn.ysk.cashier.mybatis.entity.TbPointsBasicSetting;
import cn.ysk.cashier.mybatis.mapper.*;
import cn.ysk.cashier.mybatis.mapper.TbMemberPointsLogMapper;
import cn.ysk.cashier.mybatis.mapper.TbMemberPointsMapper;
import cn.ysk.cashier.mybatis.mapper.TbOrderInfoMapper;
import cn.ysk.cashier.mybatis.mapper.TbPointsBasicSettingMapper;
import cn.ysk.cashier.mybatis.service.TbMemberPointsService;
import cn.ysk.cashier.mybatis.service.TbPointsBasicSettingService;
import cn.ysk.cashier.pojo.order.TbOrderInfo;
import cn.ysk.cashier.pojo.shop.TbShopUser;
import cn.ysk.cashier.utils.PageUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -43,8 +45,6 @@ public class TbMemberPointsServiceImpl extends ServiceImpl<TbMemberPointsMapper,
@Resource
private TbPointsBasicSettingMapper tbPointsBasicSettingMapper;
@Resource
private TbShopUserMapper tbShopUserMapper;
@Resource
private TbOrderInfoMapper tbOrderInfoMapper;
@Resource
private TbPointsBasicSettingService tbPointsBasicSettingService;
@ -78,22 +78,14 @@ public class TbMemberPointsServiceImpl extends ServiceImpl<TbMemberPointsMapper,
@Override
public TbMemberPoints initMemberPoints(Long memberId) {
TbShopUser shopUser = tbShopUserMapper.selectById(memberId);
if (shopUser == null) {
throw new BadRequestException("会员信息不存在");
}
TbMemberPoints entity = super.getOne(Wrappers.<TbMemberPoints>lambdaQuery().eq(TbMemberPoints::getMemberId, memberId));
if (entity == null) {
entity = new TbMemberPoints();
entity.setCreateTime(new Date());
throw new BadRequestException("会员信息不存在");
}
if(entity.getAccountPoints() == null){
entity.setAccountPoints(0);
}
entity.setShopId(Long.valueOf(shopUser.getShopId()));
entity.setMemberId(Long.valueOf(shopUser.getId()));
entity.setMemberName(shopUser.getName());
entity.setAvatarUrl(shopUser.getHeadImg());
entity.setMobile(shopUser.getTelephone());
super.saveOrUpdate(entity);
super.updateById(entity);
return entity;
}

View File

@ -126,6 +126,9 @@ public class TbPointsExchangeRecordServiceImpl extends ServiceImpl<TbPointsExcha
if (goods == null) {
throw new BadRequestException("兑换的商品信息不存在");
}
if (goods.getDelFlag() == 1) {
throw new BadRequestException("兑换的商品信息不存在");
}
record.setPointsGoodsName(goods.getGoodsName());
record.setGoodsImageUrl(goods.getGoodsImageUrl());
@ -178,6 +181,10 @@ public class TbPointsExchangeRecordServiceImpl extends ServiceImpl<TbPointsExcha
log.setFloatPoints(-requiredPoints);
log.setCreateTime(new Date());
tbMemberPointsLogMapper.insert(log);
// 更新累计兑换数量
goods.setTotalExchangeCount(goods.getTotalExchangeCount() + 1);
goods.setUpdateTime(new Date());
tbPointsGoodsSettingMapper.updateById(goods);
return record;
}

View File

@ -44,6 +44,7 @@ public class TbPointsGoodsSettingServiceImpl extends ServiceImpl<TbPointsGoodsSe
.like(StrUtil.isNotEmpty(param.getGoodsName()), TbPointsGoodsSetting::getGoodsName, param.getGoodsName())
.like(StrUtil.isNotEmpty(param.getGoodsCategory()), TbPointsGoodsSetting::getGoodsCategory, param.getGoodsCategory())
.eq(param.getStatus() != null, TbPointsGoodsSetting::getStatus, param.getStatus())
.eq(TbPointsGoodsSetting::getDelFlag, 0)
.orderByDesc(TbPointsGoodsSetting::getId)
);
return PageUtil.toPlusPage(page.getRecords(), Convert.toInt(page.getTotal()));
@ -91,4 +92,9 @@ public class TbPointsGoodsSettingServiceImpl extends ServiceImpl<TbPointsGoodsSe
entity.setUpdateTime(new Date());
return super.updateById(entity);
}
@Override
public void delete(Long id) {
super.update(Wrappers.<TbPointsGoodsSetting>lambdaUpdate().set(TbPointsGoodsSetting::getDelFlag, 1).eq(TbPointsGoodsSetting::getId, id));
}
}