Procházet zdrojové kódy

feat:优惠卷实体,crud

wrj před 1 rokem
rodič
revize
d9cfa751d3

+ 92 - 0
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/CouponController.java

@@ -0,0 +1,92 @@
+package com.ylx.web.controller.massage;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ylx.common.core.controller.BaseController;
+import com.ylx.common.core.domain.R;
+import com.ylx.massage.domain.Coupon;
+import com.ylx.massage.service.CouponService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * 优惠券的规则信息(Coupon)表控制层
+ *
+ * @author makejava
+ * @since 2024-05-13 16:32:58
+ */
+@Slf4j
+@Api(tags = {"优惠劵管理"})
+@RestController
+@RequestMapping("coupon")
+public class CouponController extends BaseController {
+    /**
+     * 服务对象
+     */
+    @Resource
+    private CouponService couponService;
+
+    /**
+     * 分页查询所有数据
+     *
+     * @param page   分页对象
+     * @param coupon 查询实体
+     * @return 所有数据
+     */
+    @GetMapping("list")
+    @ApiOperation("PC查询优惠劵管理列表")
+    public R selectAll(Page<Coupon> page, Coupon coupon) {
+        return R.ok(this.couponService.page(page, new QueryWrapper<>(coupon)));
+    }
+
+    /**
+     * 通过主键查询单条数据
+     *
+     * @param id 主键
+     * @return 单条数据
+     */
+    @GetMapping("getById")
+    public R selectOne(String id) {
+        return R.ok(this.couponService.getById(id));
+    }
+
+    /**
+     * 新增数据
+     *
+     * @param coupon 实体对象
+     * @return 新增结果
+     */
+    @PostMapping("submit")
+    public R insert(@RequestBody Coupon coupon) {
+        return R.ok(this.couponService.save(coupon));
+    }
+
+    /**
+     * 修改数据
+     *
+     * @param coupon 实体对象
+     * @return 修改结果
+     */
+    @PostMapping("update")
+    public R update(@RequestBody Coupon coupon) {
+        return R.ok(this.couponService.updateById(coupon));
+    }
+
+    /**
+     * 删除数据
+     *
+     * @param idList 主键结合
+     * @return 删除结果
+     */
+    @GetMapping("delete")
+    public R delete(@RequestParam("idList") List<Long> idList) {
+        return R.ok(this.couponService.removeByIds(idList));
+    }
+}
+

+ 3 - 6
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/PayController.java

@@ -77,10 +77,10 @@ public class PayController {
     @ApiOperation("AIPV3微信支付充值")
     public R createUnifiedOrder(@RequestBody TRecharge recharge) throws Exception {
         TRecharge rechargeResp = rechargeService.recharge(recharge);
-        return rechargeService.getPay(rechargeResp.getRechargeNo(),recharge.getdMoney(), recharge.getcOpenId(),BillTypeEnum.RECHARGE.getInfo(), BillTypeEnum.RECHARGE.getCode().toString());
+        return rechargeService.getPay(rechargeResp.getRechargeNo(), recharge.getdMoney(), recharge.getcOpenId(), BillTypeEnum.RECHARGE.getInfo(), BillTypeEnum.RECHARGE.getCode().toString());
     }
 
-    public R<String> getPay(String setOutTradeNo, BigDecimal amount, String openId,String description) throws Exception {
+    public R<String> getPay(String setOutTradeNo, BigDecimal amount, String openId, String description) throws Exception {
         String timeExpire = DateTimeZoneUtil.dateToTimeZone(System.currentTimeMillis() + 1000 * 60 * 3);
         UnifiedOrderModel unifiedOrderModel = new UnifiedOrderModel()
                 .setAppid(wxPayProperties.getAppId())
@@ -184,7 +184,7 @@ public class PayController {
                 if (jsonObject.get("attach").equals(BillTypeEnum.WX_PAY.getCode().toString())) {
                     // 订单支付成功
                     orderService.payNotifyOrder(jsonObject.get("out_trade_no").toString());
-                }else{
+                } else {
                     TRecharge outTradeNo = rechargeService.increaseAmount(jsonObject.get("out_trade_no").toString());
                 }
             } else {
@@ -431,7 +431,4 @@ public class PayController {
     }
 
 
-
-
-
 }

+ 212 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/domain/Coupon.java

@@ -0,0 +1,212 @@
+package com.ylx.massage.domain;
+
+
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 优惠券的规则信息(Coupon)表实体类
+ *
+ * @author makejava
+ * @since 2024-05-13 16:32:59
+ */
+@SuppressWarnings("serial")
+public class Coupon extends Model<Coupon> {
+    //优惠券id
+    @ApiModelProperty("优惠券id")
+    private String id;
+
+    //优惠券名称,可以和活动名称保持一致
+    @ApiModelProperty("优惠券名称,可以和活动名称保持一致")
+    private String name;
+
+    //优惠券类型,1:普通券
+    @ApiModelProperty("优惠券类型,1:普通券")
+    private Integer type;
+
+    //优惠类型,1:无门槛, 2:折扣, 3:满减
+    @ApiModelProperty("优惠类型,1:无门槛, 2:折扣, 3:满减")
+    private Integer discountType;
+
+    //优惠值
+    @ApiModelProperty("优惠值")
+    private BigDecimal discountValue;
+
+    //门槛金额
+    @ApiModelProperty("门槛金额")
+    private BigDecimal thresholdAmount;
+
+    //获取方式:1:手动领取 2,自动发放
+    @ApiModelProperty("获取方式:1:手动领取 2,自动发放")
+    private Integer obtainWay;
+
+    //优惠券有效期天数,0
+    @ApiModelProperty("优惠券有效期天数")
+    private Integer termDays;
+
+    //优惠券配置状态,0:未使用,1:进行中
+    @ApiModelProperty("优惠券配置状态,0:未使用,1:进行中")
+    private Integer status;
+
+    //已使用数量
+    @ApiModelProperty("已使用数量")
+    private Integer usedNum;
+
+    //每个人限领的数量
+    @ApiModelProperty("每个人限领的数量")
+    private Integer userLimit;
+
+    //拓展参数字段,保留字段
+    @ApiModelProperty("保留字段")
+    private String extParam;
+
+    //系统创建时间
+    @ApiModelProperty("创建时间")
+    private Date createTime;
+
+    //系统修改时间
+    @ApiModelProperty("修改时间")
+    private Date updateTime;
+
+    //是否删除0否1是
+    @ApiModelProperty("是否删除0否1是")
+    @TableLogic
+    private Integer isDelete;
+
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public Integer getDiscountType() {
+        return discountType;
+    }
+
+    public void setDiscountType(Integer discountType) {
+        this.discountType = discountType;
+    }
+
+    public BigDecimal getDiscountValue() {
+        return discountValue;
+    }
+
+    public void setDiscountValue(BigDecimal discountValue) {
+        this.discountValue = discountValue;
+    }
+
+    public BigDecimal getThresholdAmount() {
+        return thresholdAmount;
+    }
+
+    public void setThresholdAmount(BigDecimal thresholdAmount) {
+        this.thresholdAmount = thresholdAmount;
+    }
+
+    public Integer getObtainWay() {
+        return obtainWay;
+    }
+
+    public void setObtainWay(Integer obtainWay) {
+        this.obtainWay = obtainWay;
+    }
+
+    public Integer getTermDays() {
+        return termDays;
+    }
+
+    public void setTermDays(Integer termDays) {
+        this.termDays = termDays;
+    }
+
+    public Integer getStatus() {
+        return status;
+    }
+
+    public void setStatus(Integer status) {
+        this.status = status;
+    }
+
+    public Integer getUsedNum() {
+        return usedNum;
+    }
+
+    public void setUsedNum(Integer usedNum) {
+        this.usedNum = usedNum;
+    }
+
+    public Integer getUserLimit() {
+        return userLimit;
+    }
+
+    public void setUserLimit(Integer userLimit) {
+        this.userLimit = userLimit;
+    }
+
+    public String getExtParam() {
+        return extParam;
+    }
+
+    public void setExtParam(String extParam) {
+        this.extParam = extParam;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Integer getIsDelete() {
+        return isDelete;
+    }
+
+    public void setIsDelete(Integer isDelete) {
+        this.isDelete = isDelete;
+    }
+
+    /**
+     * 获取主键值
+     *
+     * @return 主键值
+     */
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}
+

+ 37 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/mapper/CouponMapper.java

@@ -0,0 +1,37 @@
+package com.ylx.massage.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ylx.massage.domain.Coupon;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+
+/**
+ * 优惠券的规则信息(Coupon)表数据库访问层
+ *
+ * @author makejava
+ * @since 2024-05-13 16:32:59
+ */
+public interface CouponMapper extends BaseMapper<Coupon> {
+
+    /**
+     * 批量新增数据(MyBatis原生foreach方法)
+     *
+     * @param entities List<Coupon> 实例对象列表
+     * @return 影响行数
+     */
+    int insertBatch(@Param("entities") List<Coupon> entities);
+
+    /**
+     * 批量新增或按主键更新数据(MyBatis原生foreach方法)
+     *
+     * @param entities List<Coupon> 实例对象列表
+     * @return 影响行数
+     * @throws org.springframework.jdbc.BadSqlGrammarException 入参是空List的时候会抛SQL语句错误的异常,请自行校验入参
+     */
+    int insertOrUpdateBatch(@Param("entities") List<Coupon> entities);
+
+}
+

+ 16 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/CouponService.java

@@ -0,0 +1,16 @@
+package com.ylx.massage.service;
+
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ylx.massage.domain.Coupon;
+
+/**
+ * 优惠券的规则信息(Coupon)表服务接口
+ *
+ * @author makejava
+ * @since 2024-05-13 16:32:59
+ */
+public interface CouponService extends IService<Coupon> {
+
+}
+

+ 20 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/CouponServiceImpl.java

@@ -0,0 +1,20 @@
+package com.ylx.massage.service.impl;
+
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ylx.massage.domain.Coupon;
+import com.ylx.massage.mapper.CouponMapper;
+import com.ylx.massage.service.CouponService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 优惠券的规则信息(Coupon)表服务实现类
+ *
+ * @author makejava
+ * @since 2024-05-13 16:32:59
+ */
+@Service("couponService")
+public class CouponServiceImpl extends ServiceImpl<CouponMapper, Coupon> implements CouponService {
+
+}
+

+ 0 - 2
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TOrderServiceImpl.java

@@ -22,12 +22,10 @@ import com.ylx.massage.utils.DateTimeUtils;
 import com.ylx.massage.utils.MassageUtil;
 import com.ylx.massage.utils.OrderNumberGenerator;
 import org.apache.commons.compress.utils.Lists;
-import org.apache.poi.ss.formula.functions.T;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
-import javax.xml.crypto.Data;
 import java.math.BigDecimal;
 import java.math.RoundingMode;
 import java.time.LocalDateTime;

+ 49 - 0
nightFragrance-massage/src/main/resources/mapper/massage/CouponMapper.xml

@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ylx.massage.mapper.CouponMapper">
+
+    <resultMap type="com.ylx.massage.domain.Coupon" id="CouponMap">
+        <result property="id" column="id" jdbcType="VARCHAR"/>
+        <result property="name" column="name" jdbcType="VARCHAR"/>
+        <result property="type" column="type" jdbcType="INTEGER"/>
+        <result property="discountType" column="discount_type" jdbcType="INTEGER"/>
+        <result property="discountValue" column="discount_value" jdbcType="NUMERIC"/>
+        <result property="thresholdAmount" column="threshold_amount" jdbcType="NUMERIC"/>
+        <result property="obtainWay" column="obtain_way" jdbcType="INTEGER"/>
+        <result property="termDays" column="term_days" jdbcType="INTEGER"/>
+        <result property="status" column="status" jdbcType="INTEGER"/>
+        <result property="usedNum" column="used_num" jdbcType="INTEGER"/>
+        <result property="userLimit" column="user_limit" jdbcType="INTEGER"/>
+        <result property="extParam" column="ext_param" jdbcType="VARCHAR"/>
+        <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+        <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+        <result property="isDelete" column="is_delete" jdbcType="INTEGER"/>
+    </resultMap>
+
+    <!-- 批量插入 -->
+    <insert id="insertBatch" keyProperty="id" useGeneratedKeys="true">
+        insert into
+        ry-vue.coupon(nametypediscount_typediscount_valuethreshold_amountobtain_wayterm_daysstatusused_numuser_limitext_paramcreate_timeupdate_timeis_delete)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.name}#{entity.type}#{entity.discountType}#{entity.discountValue}#{entity.thresholdAmount}#{entity.obtainWay}#{entity.termDays}#{entity.status}#{entity.usedNum}#{entity.userLimit}#{entity.extParam}#{entity.createTime}#{entity.updateTime}#{entity.isDelete})
+        </foreach>
+    </insert>
+    <!-- 批量插入或按主键更新 -->
+    <insert id="insertOrUpdateBatch" keyProperty="id" useGeneratedKeys="true">
+        insert into
+        ry-vue.coupon(nametypediscount_typediscount_valuethreshold_amountobtain_wayterm_daysstatusused_numuser_limitext_paramcreate_timeupdate_timeis_delete)
+        values
+        <foreach collection="entities" item="entity" separator=",">
+            (#{entity.name}#{entity.type}#{entity.discountType}#{entity.discountValue}#{entity.thresholdAmount}#{entity.obtainWay}#{entity.termDays}#{entity.status}#{entity.usedNum}#{entity.userLimit}#{entity.extParam}#{entity.createTime}#{entity.updateTime}#{entity.isDelete})
+        </foreach>
+        on duplicate key update
+        name = values(name) type = values(type) discount_type = values(discount_type) discount_value =
+        values(discount_value) threshold_amount = values(threshold_amount) obtain_way = values(obtain_way) term_days =
+        values(term_days) status = values(status) used_num = values(used_num) user_limit = values(user_limit) ext_param
+        = values(ext_param) create_time = values(create_time) update_time = values(update_time) is_delete =
+        values(is_delete)
+    </insert>
+
+</mapper>
+