Commit a9e6fa96 authored by libin's avatar libin

Merge branch 'luck_draw_feature' into dev

parents e44d21da 3b5b9249
...@@ -16,6 +16,7 @@ import javax.validation.Validator; ...@@ -16,6 +16,7 @@ import javax.validation.Validator;
import javax.validation.executable.ExecutableValidator; import javax.validation.executable.ExecutableValidator;
import java.lang.reflect.Method; import java.lang.reflect.Method;
import java.lang.reflect.Parameter; import java.lang.reflect.Parameter;
import java.util.Collection;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
...@@ -62,8 +63,13 @@ public class ValidParamAop { ...@@ -62,8 +63,13 @@ public class ValidParamAop {
for (int i =0;i<argLength;i++){ for (int i =0;i<argLength;i++){
BeanValid beanValidAnnotation = parameters[i].getDeclaredAnnotation(BeanValid.class); BeanValid beanValidAnnotation = parameters[i].getDeclaredAnnotation(BeanValid.class);
if (Objects.nonNull(beanValidAnnotation)){ if (Objects.nonNull(beanValidAnnotation)){
if (args[i].getClass().isArray()){ if ((args[i] instanceof Collection) || (args[i].getClass().isArray())){
Object[] arrayArg =(Object[])args[i]; Object[] arrayArg = null;
if(args[i] instanceof Collection){
arrayArg = ((Collection)args[i]).toArray();
}else {
arrayArg = (Object[])args[i];
}
for (Object item:arrayArg){ for (Object item:arrayArg){
Set<ConstraintViolation<Object>> validateResult = this.validator.validate(item, beanValidAnnotation.value()); Set<ConstraintViolation<Object>> validateResult = this.validator.validate(item, beanValidAnnotation.value());
if (!validateResult.isEmpty()){ if (!validateResult.isEmpty()){
......
...@@ -8,6 +8,8 @@ import javax.persistence.Column; ...@@ -8,6 +8,8 @@ import javax.persistence.Column;
import javax.persistence.GeneratedValue; import javax.persistence.GeneratedValue;
import javax.persistence.Id; import javax.persistence.Id;
import javax.persistence.Table; import javax.persistence.Table;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
...@@ -25,30 +27,47 @@ public class ActivityPrize implements Serializable { ...@@ -25,30 +27,47 @@ public class ActivityPrize implements Serializable {
@Id @Id
@GeneratedValue(generator = "JDBC") @GeneratedValue(generator = "JDBC")
private Integer id; private Integer id;
@NotNull(message = "编号不能为null")
@ApiModelProperty("编号") @ApiModelProperty("编号")
@Column(name = "serial_number") @Column(name = "serial_number")
private Integer serialNumber; private Integer serialNumber;
@NotEmpty(message = "奖品名称不能为空")
@Column(name = "name") @Column(name = "name")
private String name; private String name;
@NotEmpty(message = "奖品地址不能为空")
@ApiModelProperty("奖品图片地址") @ApiModelProperty("奖品图片地址")
@Column(name = "icon_path") @Column(name = "icon_path")
private String iconPath; private String iconPath;
@ApiModelProperty("每天最多中奖份数") @ApiModelProperty("每天最多中奖份数")
@Column(name = "day_max_use") @Column(name = "day_max_use")
private Integer dayMaxUse; private Integer dayMaxUse;
@NotNull(message = "奖品库存不能为null")
@Column(name = "total_stock") @Column(name = "total_stock")
private Integer totalStock; private Integer totalStock;
@NotNull(message = "权重|概率不能为null")
@Column(name = "probability") @Column(name = "probability")
private Double probability; private Double probability;
@NotNull(message = "奖品设置类型不能null")
@ApiModelProperty("1:线上 2:现场") @ApiModelProperty("1:线上 2:现场")
@Column(name = "type") @Column(name = "type")
private Integer type; private Integer type;
@Column(name = "crt_time") @Column(name = "crt_time")
private Date crtTime; private Date crtTime;
@Column(name = "upd_time") @Column(name = "upd_time")
private Date updTime; private Date updTime;
@Column(name = "goods_id") @Column(name = "goods_id")
private Integer goodsId; private Integer goodsId;
@NotNull(message = "奖品类型不能为null")
@Column(name = "prize_goods_type") @Column(name = "prize_goods_type")
private Integer prizeGoodsType; private Integer prizeGoodsType;
} }
...@@ -24,7 +24,8 @@ import tk.mybatis.spring.annotation.MapperScan; ...@@ -24,7 +24,8 @@ import tk.mybatis.spring.annotation.MapperScan;
"com.xxfc.platform", "com.xxfc.platform",
"com.github.wxiaoqi.security.common.handler", "com.github.wxiaoqi.security.common.handler",
"com.github.wxiaoqi.security.common.log", "com.github.wxiaoqi.security.common.log",
"com.github.wxiaoqi.security.admin.support.aop" "com.github.wxiaoqi.security.admin.support.aop",
"com.github.wxiaoqi.security.common.support"
}) })
@EnableAspectJAutoProxy(exposeProxy = true) @EnableAspectJAutoProxy(exposeProxy = true)
@EnableAsync @EnableAsync
......
package com.xxfc.platform.activity.rest.admin; package com.xxfc.platform.activity.rest.admin;
import com.github.wxiaoqi.security.common.annotation.BeanValid;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import com.xxfc.platform.activity.biz.ActivityPrizeBiz; import com.xxfc.platform.activity.biz.ActivityPrizeBiz;
import com.xxfc.platform.activity.entity.ActivityPrize; import com.xxfc.platform.activity.entity.ActivityPrize;
...@@ -24,7 +25,7 @@ public class ActivityPrizeAdminController { ...@@ -24,7 +25,7 @@ public class ActivityPrizeAdminController {
private final ActivityPrizeBiz activityPrizeBiz; private final ActivityPrizeBiz activityPrizeBiz;
@PostMapping("/save") @PostMapping("/save")
public ObjectRestResponse<Void> savePrize(@RequestBody List<ActivityPrize> activityPrizes) { public ObjectRestResponse<Void> savePrize(@BeanValid @RequestBody List<ActivityPrize> activityPrizes) {
activityPrizeBiz.saveActivityPrizes(activityPrizes); activityPrizeBiz.saveActivityPrizes(activityPrizes);
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment