✨ Introducing new features. close #3855 【校验组】支持 JSR 303分组校验ValidGroup

This commit is contained in:
lbw committed 2022-04-26 13:16:30 +08:00
1 parent c54a9d92b9
commit edc36599e9
3 files changed
+36 -2

No files matched your search

@@ -0,0 +1,31 @@
package com.pig4cloud.pigx.common.core.util;
/**
* 校验类型
*
* @author lengleng
* @date 2022/4/26
*/
public class ValidGroup {
/**
* 插入组
*
* @author lengleng
* @date 2022/4/26
*/
public static interface Insert {
}
/**
* 编辑组
*
* @author lengleng
* @date 2022/4/26
*/
public static interface Update {
}
}
@@ -20,6 +20,7 @@ package com.pig4cloud.pigx.admin.api.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.pig4cloud.pigx.common.core.sensitive.Sensitive;
import com.pig4cloud.pigx.common.core.util.ValidGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -73,7 +74,7 @@ public class SysSocialDetails extends Model<SysSocialDetails> {
* app_secret
*/
@Sensitive(prefixNoMaskLen = 9, suffixNoMaskLen = 9)
@NotBlank(message = "密钥不能为空")
@NotBlank(message = "密钥不能为空", groups = { ValidGroup.Insert.class })
@ApiModelProperty(value = "app secret")
private String appSecret;
@@ -22,11 +22,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pig4cloud.pigx.admin.api.entity.SysSocialDetails;
import com.pig4cloud.pigx.admin.service.SysSocialDetailsService;
import com.pig4cloud.pigx.common.core.util.R;
import com.pig4cloud.pigx.common.core.util.ValidGroup;
import com.pig4cloud.pigx.common.log.annotation.SysLog;
import com.pig4cloud.pigx.common.security.annotation.Inner;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
@@ -87,7 +89,7 @@ public class SysSocialDetailsController {
@SysLog("修改三方信息")
@PutMapping
@PreAuthorize("@pms.hasPermission('sys_social_details_edit')")
public R updateById(@Valid @RequestBody SysSocialDetails sysSocialDetails) {
public R updateById(@Validated({ ValidGroup.Update.class }) @RequestBody SysSocialDetails sysSocialDetails) {
sysSocialDetailsService.updateById(sysSocialDetails);
return R.ok(Boolean.TRUE);
}