优惠券软删除

This commit is contained in:
2025-08-01 16:56:54 +08:00
parent 9e92be78ff
commit 72d3530942
7 changed files with 85 additions and 18 deletions

View File

@@ -1,6 +1,5 @@
package com.ycwl.basic.mapper;
import com.ycwl.basic.model.pc.coupon.entity.CouponEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ycwl.basic.model.pc.coupon.req.CouponQueryReq;
import com.ycwl.basic.model.pc.coupon.resp.CouponRespVO;
import org.apache.ibatis.annotations.Mapper;
@@ -8,10 +7,22 @@ import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface CouponMapper extends BaseMapper<CouponEntity> {
public interface CouponMapper {
List<CouponRespVO> selectByQuery(CouponQueryReq query);
int updateStatus(Integer id);
CouponEntity getById(Integer couponId);
int insert(CouponEntity coupon);
int updateById(CouponEntity coupon);
int deleteById(Integer id);
List<CouponEntity> selectList();
CouponEntity selectById(Integer id);
CouponEntity selectByScenicIdAndTypeAndStatus(Long scenicId, Integer type, Integer status);
}

View File

@@ -46,6 +46,9 @@ public class CouponEntity {
*/
private Integer status;
private Date createAt;
private Integer deleted;
private Date deletedAt;
public BigDecimal calculateDiscountPrice(BigDecimal originalPrice) {
if (originalPrice == null) {

View File

@@ -19,4 +19,7 @@ public class CouponRecordEntity {
private Date createTime;
private Date usedTime;
private Long usedOrderId;
private Integer deleted;
private Date deletedAt;
}

View File

@@ -1,6 +1,5 @@
package com.ycwl.basic.service.mobile.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ycwl.basic.mapper.CouponMapper;
import com.ycwl.basic.mapper.CouponRecordMapper;
import com.ycwl.basic.model.pc.coupon.entity.CouponEntity;
@@ -50,11 +49,7 @@ public class AppCouponRecordServiceImpl implements AppCouponRecordService {
}
// 查找可用的优惠券
Long scenicId = face.getScenicId();
QueryWrapper<CouponEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("scenic_id", scenicId)
.eq("type", type)
.eq("status", 1); // 开启状态
CouponEntity coupon = couponMapper.selectOne(queryWrapper);
CouponEntity coupon = couponMapper.selectByScenicIdAndTypeAndStatus(scenicId, type, 1);
if (coupon == null) {
throw new RuntimeException("未找到可领取的优惠券");

View File

@@ -1,5 +1,4 @@
package com.ycwl.basic.service.pc.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ycwl.basic.mapper.CouponMapper;
import com.ycwl.basic.model.pc.coupon.entity.CouponEntity;
import com.ycwl.basic.model.pc.coupon.req.CouponQueryReq;
@@ -11,7 +10,7 @@ import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class CouponServiceImpl extends ServiceImpl<CouponMapper, CouponEntity> implements CouponService {
public class CouponServiceImpl implements CouponService {
@Autowired
private CouponMapper couponMapper;
@@ -28,7 +27,7 @@ public class CouponServiceImpl extends ServiceImpl<CouponMapper, CouponEntity> i
@Override
public Boolean delete(Integer id) {
return removeById(id);
return couponMapper.deleteById(id) > 0;
}
@Override