>>>> 引入依赖 <<<<
# 方式1:引入本地jar依赖
<dependency>
<groupId>com.geline</groupId>
<artifactId>cloud-coder-web</artifactId>
<scope>system</scope>
<version>1.3.5</version>
<systemPath>${project.basedir}/libs/cloud-coder-web-1.3.5.jar</systemPath>
</dependency>
# 方式2:引入阿里云私服依赖
<dependency>
<groupId>com.geline</groupId>
<artifactId>cloud-coder-web</artifactId>
<version>1.3.5</version>
</dependency>
@RepeatSubmit 防重复提交:用于POST添加接口
registry.addInterceptor(new SameUrlCacheInterceptor()).addPathPatterns("/**");
@ValidUser 删除接口检验登录用户是否为创建人
registry.addInterceptor(new ValidUserInterceptor()).addPathPatterns("/**");
@SqlAction 前置执行sql,后置执行sql
registry.addInterceptor(new SqlActionInterceptor()).addPathPatterns("/**");
@SqlValid 前置校验sql(唯一性,权限等)
registry.addInterceptor(new SqlValidInterceptor()).addPathPatterns("/**");
@FileValidation 检验上传文件类型是否匹配
registry.addInterceptor(new FileValidationInterceptor()).addPathPatterns("/**");
@PostMapping("upload")
@FileValidation
public R<SysFile> upload(MultipartFile file) {
....
}
@ValidBefore 方法前置检验注解
registry.addInterceptor(new ValidBeforeInterceptor()).addPathPatterns("/**");
@PostMapping("upload")
@ValidBefore(handler = ValidSecretTypeHandler.class, errorMsg = "您的密级权限过低,不允许查看!")
public R<VO> get(String id) {
....
}
@Component
@Slf4j
public class ValidSecretTypeHandler implements ValidBeforeHandler {
@Resource
private BaseSessionService<String> sessionService;
@Override
public boolean doHandle(String id) {
Gongwe gongwe = gongweService.getById(id);
Objects.requireNonNull(gongwe, "can not find id :"+id);
SysUser sysUser = sysUserService.getById(sessionService.getUserId());
String secretType = sysUser.getSecretType();
SysDictData userDictData = sysDictDataMapper.selectOneByValue("secret_type", secretType);
Objects.requireNonNull(userDictData, String.format("can not find User[%s] secretType=%s", sysUser.getNickName(), secretType));
String secretLevel = gongwe.getSecretLevel();
SysDictData gwDictData = sysDictDataMapper.selectOneByValue("secret_type", secretLevel);
Objects.requireNonNull(gwDictData, String.format("can not find Gongwen[%s] secretLevel=%s", id, secretLevel));
Integer userSecretNum = userDictData.getDictSort();
Integer gwSecretNum = gwDictData.getDictSort();
boolean flag = userSecretNum <= gwSecretNum;
if(!flag){
log.warn(">>>>> userSecretNum = {}, gwSecretNum = {}", userSecretNum, gwSecretNum);
}
//用户密级<=公文密级,表示用户可以查看公文
return flag;
}
@Override
public boolean doHandle(Map<String, Object> pathVars) {
return false;
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。