cup 2 년 전
부모
커밋
47f9784453

+ 13 - 3
mp-admin/src/main/java/com/qs/mp/web/controller/api/admin/CouponMgrController.java

@@ -33,6 +33,8 @@ import com.qs.mp.system.service.ISysUserService;
 import com.qs.mp.web.controller.common.BaseApiController;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
 import ma.glasnost.orika.MapperFacade;
 
 import java.math.BigDecimal;
@@ -48,6 +50,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -59,10 +62,9 @@ import org.springframework.web.bind.annotation.RestController;
  * @create 2022-03-09 23:45:48
  * @describe 代金券管理前端控制器
  */
-@Api("代金券管理API")
+@Api(tags = "代金券管理API")
 @RestController
 @RequestMapping("/api/v1/mp/admin/coupon/*")
-@Component
 public class CouponMgrController extends BaseApiController {
 
 	@Autowired
@@ -93,6 +95,10 @@ public class CouponMgrController extends BaseApiController {
 	 */
 	@PostMapping("/list")
 	@PreAuthorize("@ss.hasPermi('business:coupon:list')")
+	@ApiOperation("获取代金券列表信息,支持翻页")
+	@ApiResponses(
+			@ApiResponse(code = 200, message = "成功", response = Coupon.class)
+	)
 	public TableDataInfo listCoupon(@RequestBody CouponParam coupon) {
 		List<Coupon> list = new ArrayList<Coupon>();
 		startPage();
@@ -100,7 +106,7 @@ public class CouponMgrController extends BaseApiController {
 		queryWrapper.lambda().like(null != coupon && StringUtils.isNotBlank(coupon.getTitle()), Coupon::getTitle, coupon.getTitle());
 		queryWrapper.lambda().eq(null != coupon && null != coupon.getStatus(), Coupon::getStatus, coupon.getStatus());
 		queryWrapper.lambda().eq(null != coupon && null != coupon.getType(), Coupon::getType, coupon.getType());
-		queryWrapper.lambda().notIn(null != coupon && null != coupon.getExcludeCouponIds(), Coupon::getCouponId, coupon.getExcludeCouponIds());
+		queryWrapper.lambda().notIn(null != coupon && !CollectionUtils.isEmpty(coupon.getExcludeCouponIds()), Coupon::getCouponId, coupon.getExcludeCouponIds());
 		queryWrapper.lambda().eq(Coupon::getIsDeleted, 0);
 		queryWrapper.orderByAsc("FIELD(`status`, 'init', 'on', 'off')");
 		queryWrapper.lambda().orderByDesc(Coupon::getCouponId);
@@ -117,6 +123,10 @@ public class CouponMgrController extends BaseApiController {
 	 */
 	@PostMapping(value = "/detail")
 	@PreAuthorize("@ss.hasPermi('business:coupon:query')")
+	@ApiOperation("获取代金券详情信息")
+	@ApiResponses(
+			@ApiResponse(code = 200, message = "操作成功", response = CouponVO.class)
+	)
 	public AjaxResult getCouponDetail(@RequestBody JSONObject jsonObject) {
 		String couponId = jsonObject.getString("couponId");
 		if (StringUtils.isBlank(couponId)){

+ 18 - 0
mp-service/src/main/java/com/qs/mp/admin/domain/Coupon.java

@@ -14,6 +14,9 @@ import com.qs.mp.common.enums.CouponTypeEnum;
 import com.qs.mp.common.enums.CouponUseAreaEnum;
 import java.io.Serializable;
 import java.util.Date;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -23,6 +26,7 @@ import lombok.Data;
  */
 @TableName("mp_coupon")
 @Data
+@ApiModel("优惠券实体类")
 public class Coupon implements Serializable {
 
   private static final long serialVersionUID = 1L;
@@ -30,18 +34,21 @@ public class Coupon implements Serializable {
   /**
    * 主键
    */
+  @ApiModelProperty("优惠券id")
   @TableId(value = "coupon_id", type = IdType.AUTO)
   private Long couponId;
 
   /**
    * 标题
    */
+  @ApiModelProperty("标题")
   @TableField("title")
   private String title;
 
   /**
    * 类型;1用户盲票购买优惠券、2用户门店消费优惠券、3经销商盲票采购优惠券
    */
+  @ApiModelProperty("类型;1用户盲票购买优惠券、2用户门店消费优惠券、3经销商盲票采购优惠券")
   @TableField("type")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
   private CouponTypeEnum type;
@@ -49,18 +56,21 @@ public class Coupon implements Serializable {
   /**
    * 图片
    */
+  @ApiModelProperty("图片")
   @TableField("pic_url")
   private String picUrl;
 
   /**
    * 使用说明
    */
+  @ApiModelProperty("使用说明")
   @TableField("description")
   private String description;
 
   /**
    * 优惠类型;1代金券、2折扣券、3兑换券
    */
+  @ApiModelProperty("优惠类型;1代金券、2折扣券、3兑换券")
   @TableField("discount_type")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
   private CouponDiscountTypeEnum discountType;
@@ -68,18 +78,21 @@ public class Coupon implements Serializable {
   /**
    * 优惠金额(比例)
    */
+  @ApiModelProperty("优惠金额(比例)")
   @TableField("discount")
   private Integer discount;
 
   /**
    * 最低消费金额
    */
+  @ApiModelProperty("最低消费金额")
   @TableField("min_order_amt")
   private Integer minOrderAmt;
 
   /**
    * 渠道代金券,渠道承担比例
    */
+  @ApiModelProperty("渠道代金券,渠道承担比例")
   @TableField("channel_shared_rate")
   private Integer channelSharedRate;
 
@@ -87,6 +100,7 @@ public class Coupon implements Serializable {
   /**
    * 状态;off下架 on正常
    */
+  @ApiModelProperty("状态;off下架 on正常")
   @TableField("status")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
   private CouponStatusEnum status;
@@ -96,6 +110,7 @@ public class Coupon implements Serializable {
    *         0:进票门店  1、指定盲票  2:所有门票
    *
    */
+  @ApiModelProperty("使用范围;0通用 1生成券时指定范围 2发放时动态指定范围")
   @TableField("use_area")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
   private CouponUseAreaEnum useArea;
@@ -103,6 +118,7 @@ public class Coupon implements Serializable {
   /**
    * 发放方式;1系统发放 2用户主动领取
    */
+  @ApiModelProperty("发放方式;1系统发放 2用户主动领取")
   @TableField("distribute_type")
   @JSONField(serialzeFeatures = SerializerFeature.WriteEnumUsingToString)
   private CouponDistributeTypeEnum distributeType;
@@ -110,12 +126,14 @@ public class Coupon implements Serializable {
   /**
    * 叠加使用;0不允许 1允许
    */
+  @ApiModelProperty("叠加使用;0不允许 1允许")
   @TableField("composite_use")
   private Integer compositeUse;
 
   /**
    * 有效期天数;从领券后开始多少天有效,0则使用绝对有效期
    */
+  @ApiModelProperty("有效期天数;从领券后开始多少天有效,0则使用绝对有效期")
   @TableField("due_days")
   private Integer dueDays;