Compare commits
2 Commits
78da5c90c4
...
fe4dfb77e6
Author | SHA1 | Date | |
---|---|---|---|
fe4dfb77e6 | |||
06bb45ba5d |
239
.github/workflows/checkstyle.xml
vendored
239
.github/workflows/checkstyle.xml
vendored
|
@ -1,63 +1,208 @@
|
|||
<?xml version="1.0"?>
|
||||
<!DOCTYPE module PUBLIC
|
||||
"-//Puppy Crawl//DTD Check Configuration 1.3//EN"
|
||||
"https://checkstyle.org/dtds/configuration_1_3.dtd">
|
||||
"http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
|
||||
|
||||
<module name="Checker">
|
||||
<!-- 设置换行符 -->
|
||||
<property name="lineSeparator" value="lf"/>
|
||||
|
||||
<!-- 检查文件头部 -->
|
||||
<module name="FileTabCharacter">
|
||||
<property name="eachLine" value="true"/>
|
||||
</module>
|
||||
|
||||
<!-- 检查文件的末尾是否有换行符 -->
|
||||
<!-- 检查文件是否以一个空行结束 -->
|
||||
<module name="NewlineAtEndOfFile"/>
|
||||
|
||||
<!-- 检查缩进是否使用空格而不是 Tab -->
|
||||
<module name="Checker">
|
||||
<property name="fileExtensions" value="java"/>
|
||||
<module name="Indentation">
|
||||
<property name="basicOffset" value="4"/>
|
||||
<property name="braceAdjustment" value="0"/>
|
||||
<property name="caseIndent" value="4"/>
|
||||
<property name="throwsIndent" value="4"/>
|
||||
<property name="lineWrappingIndentation" value="4"/>
|
||||
</module>
|
||||
<!-- 文件长度不超过1500行 -->
|
||||
<module name="FileLength">
|
||||
<property name="max" value="1500"/>
|
||||
</module>
|
||||
|
||||
<!-- 检查代码中的注释 -->
|
||||
<module name="Checker">
|
||||
<property name="fileExtensions" value="java"/>
|
||||
<module name="TreeWalker">
|
||||
<module name="JavadocMethod"/>
|
||||
<module name="JavadocVariable"/>
|
||||
<module name="JavadocStyle"/>
|
||||
<!-- 每个java文件一个语法树 -->
|
||||
<module name="TreeWalker">
|
||||
<!-- import检查-->
|
||||
<!-- 避免使用* -->
|
||||
<module name="AvoidStarImport">
|
||||
<property name="excludes" value="java.io,java.net,java.lang.Math"/>
|
||||
<!-- 实例;import java.util.*;.-->
|
||||
<property name="allowClassImports" value="false"/>
|
||||
<!-- 实例 ;import static org.junit.Assert.*;-->
|
||||
<property name="allowStaticMemberImports" value="true"/>
|
||||
</module>
|
||||
</module>
|
||||
<!-- 检查是否从非法的包中导入了类 -->
|
||||
<module name="IllegalImport"/>
|
||||
<!-- 检查是否导入了多余的包 -->
|
||||
<module name="RedundantImport"/>
|
||||
<!-- 没用的import检查,比如:1.没有被用到2.重复的3.import java.lang的4.import 与该类在同一个package的 -->
|
||||
<module name="UnusedImports" />
|
||||
|
||||
<!-- 检查空白行 -->
|
||||
<module name="Checker">
|
||||
<property name="fileExtensions" value="java"/>
|
||||
<module name="TreeWalker">
|
||||
<module name="EmptyLineSeparator">
|
||||
<property name="tokens" value="CLASS_DEF,INTERFACE_DEF,ENUM_DEF,METHOD_DEF,CTOR_DEF"/>
|
||||
</module>
|
||||
|
||||
<!-- 注释检查 -->
|
||||
<!-- 检查方法和构造函数的javadoc -->
|
||||
<module name="JavadocType">
|
||||
<property name="allowUnknownTags" value="true"/>
|
||||
<message key="javadoc.missing" value="类注释:缺少Javadoc注释。"/>
|
||||
</module>
|
||||
</module>
|
||||
|
||||
<!-- 检查行长度 -->
|
||||
<module name="Checker">
|
||||
<property name="fileExtensions" value="java"/>
|
||||
<module name="TreeWalker">
|
||||
<module name="LineLength">
|
||||
<property name="max" value="120"/>
|
||||
<property name="ignorePattern" value="^import .*"/>
|
||||
</module>
|
||||
<module name="JavadocMethod">
|
||||
<property name="tokens" value="METHOD_DEF" />
|
||||
<!--允许get set 方法没有注释-->
|
||||
<property name="allowMissingPropertyJavadoc" value="true"/>
|
||||
<message key="javadoc.missing" value="方法注释:缺少Javadoc注释。"/>
|
||||
</module>
|
||||
|
||||
<!-- 命名检查 -->
|
||||
<!-- 局部的final变量,包括catch中的参数的检查 -->
|
||||
<module name="LocalFinalVariableName" />
|
||||
<!-- 局部的非final型的变量,包括catch中的参数的检查 -->
|
||||
<module name="LocalVariableName" />
|
||||
<!-- 包名的检查(只允许小写字母),默认^[a-z]+(\.[a-zA-Z_][a-zA-Z_0-9_]*)*$ -->
|
||||
<module name="PackageName">
|
||||
<property name="format" value="^[a-z]+(\.[a-z][a-z0-9]*)*$" />
|
||||
<message key="name.invalidPattern" value="包名 ''{0}'' 要符合 ''{1}''格式."/>
|
||||
</module>
|
||||
<!-- 仅仅是static型的变量(不包括static final型)的检查 -->
|
||||
<module name="StaticVariableName" />
|
||||
<!-- Class或Interface名检查,默认^[A-Z][a-zA-Z0-9]*$-->
|
||||
<module name="TypeName">
|
||||
<property name="severity" value="warning"/>
|
||||
<message key="name.invalidPattern" value="名称 ''{0}'' 要符合 ''{1}''格式."/>
|
||||
</module>
|
||||
<!-- 非static型变量的检查 -->
|
||||
<module name="MemberName" />
|
||||
<!-- 方法名的检查 -->
|
||||
<module name="MethodName" />
|
||||
<!-- 方法的参数名 -->
|
||||
<module name="ParameterName " />
|
||||
<!-- 常量名的检查(只允许大写),默认^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$ -->
|
||||
<module name="ConstantName" />
|
||||
|
||||
<!-- 定义检查 -->
|
||||
<!-- 检查数组类型定义的样式 -->
|
||||
<module name="ArrayTypeStyle"/>
|
||||
<!-- 检查long型定义是否有大写的“L” -->
|
||||
<module name="UpperEll"/>
|
||||
|
||||
<!-- 长度检查 -->
|
||||
<!-- 每行不超过120个字符 -->
|
||||
<module name="LineLength">
|
||||
<property name="max" value="120" />
|
||||
</module>
|
||||
<!-- 方法不超过50行 -->
|
||||
<module name="MethodLength">
|
||||
<property name="tokens" value="METHOD_DEF" />
|
||||
<property name="max" value="50" />
|
||||
</module>
|
||||
<!-- 方法的参数个数不超过5个。 并且不对构造方法进行检查-->
|
||||
<module name="ParameterNumber">
|
||||
<property name="max" value="5" />
|
||||
<property name="ignoreOverriddenMethods" value="true"/>
|
||||
<property name="tokens" value="METHOD_DEF" />
|
||||
</module>
|
||||
|
||||
<!-- 空格检查-->
|
||||
<!-- 方法名后跟左圆括号"(" -->
|
||||
<module name="MethodParamPad" />
|
||||
<!-- 在类型转换时,不允许左圆括号右边有空格,也不允许与右圆括号左边有空格 -->
|
||||
<module name="TypecastParenPad" />
|
||||
<!-- 检查在某个特定关键字之后应保留空格 -->
|
||||
<module name="NoWhitespaceAfter"/>
|
||||
<!-- 检查在某个特定关键字之前应保留空格 -->
|
||||
<module name="NoWhitespaceBefore"/>
|
||||
<!-- 操作符换行策略检查 -->
|
||||
<module name="OperatorWrap"/>
|
||||
<!-- 圆括号空白 -->
|
||||
<module name="ParenPad"/>
|
||||
<!-- 检查分隔符是否在空白之后 -->
|
||||
<module name="WhitespaceAfter"/>
|
||||
<!-- 检查分隔符周围是否有空白 -->
|
||||
<module name="WhitespaceAround"/>
|
||||
|
||||
<!-- 修饰符检查 -->
|
||||
<!-- 检查修饰符的顺序是否遵照java语言规范,默认public、protected、private、abstract、static、final、transient、volatile、synchronized、native、strictfp -->
|
||||
<module name="ModifierOrder"/>
|
||||
<!-- 检查接口和annotation中是否有多余修饰符,如接口方法不必使用public -->
|
||||
<module name="RedundantModifier"/>
|
||||
|
||||
<!-- 代码块检查 -->
|
||||
<!-- 检查是否有嵌套代码块 -->
|
||||
<module name="AvoidNestedBlocks"/>
|
||||
<!-- 检查是否有空代码块 -->
|
||||
<module name="EmptyBlock"/>
|
||||
<!-- 检查左大括号位置 -->
|
||||
<module name="LeftCurly"/>
|
||||
<!-- 检查代码块是否缺失{} -->
|
||||
<module name="NeedBraces"/>
|
||||
<!-- 检查右大括号位置 -->
|
||||
<module name="RightCurly"/>
|
||||
|
||||
<!-- 代码检查 -->
|
||||
<!-- 检查空的代码段 -->
|
||||
<module name="EmptyStatement"/>
|
||||
<!-- 检查在重写了equals方法后是否重写了hashCode方法 -->
|
||||
<module name="EqualsHashCode"/>
|
||||
<!-- 检查局部变量或参数是否隐藏了类中的变量 -->
|
||||
<module name="HiddenField">
|
||||
<property name="tokens" value="VARIABLE_DEF"/>
|
||||
</module>
|
||||
<!-- 检查是否使用工厂方法实例化 -->
|
||||
<module name="IllegalInstantiation"/>
|
||||
<!-- 检查子表达式中是否有赋值操作 -->
|
||||
<module name="InnerAssignment"/>
|
||||
<!-- 检查是否有"魔术"数字 -->
|
||||
<module name="MagicNumber">
|
||||
<property name="ignoreNumbers" value="0, 1"/>
|
||||
<property name="ignoreAnnotation" value="true"/>
|
||||
</module>
|
||||
<!-- 检查switch语句是否有default -->
|
||||
<module name="MissingSwitchDefault"/>
|
||||
<!-- 检查是否有过度复杂的布尔表达式 -->
|
||||
<module name="SimplifyBooleanExpression"/>
|
||||
<!-- 检查是否有过于复杂的布尔返回代码段 -->
|
||||
<module name="SimplifyBooleanReturn"/>
|
||||
|
||||
<!-- 类设计检查 -->
|
||||
<!-- 检查类是否为扩展设计l -->
|
||||
<!-- 检查只有private构造函数的类是否声明为final -->
|
||||
<module name="FinalClass"/>
|
||||
<!-- 检查工具类是否有putblic的构造器 -->
|
||||
<module name="HideUtilityClassConstructor"/>
|
||||
<!-- 检查接口是否仅定义类型 -->
|
||||
<module name="InterfaceIsType"/>
|
||||
<!-- 检查类成员的可见度 检查类成员的可见性。只有static final 成员是public的
|
||||
除非在本检查的protectedAllowed和packagedAllowed属性中进行了设置-->
|
||||
<module name="VisibilityModifier">
|
||||
<property name="packageAllowed" value="true"/>
|
||||
<property name="protectedAllowed" value="true"/>
|
||||
</module>
|
||||
|
||||
<!-- 语法 -->
|
||||
<!-- String的比较不能用!= 和 == -->
|
||||
<module name="StringLiteralEquality"/>
|
||||
<!-- 限制for循环最多嵌套2层 -->
|
||||
<module name="NestedForDepth">
|
||||
<property name="max" value="2"/>
|
||||
</module>
|
||||
<!-- if最多嵌套3层 -->
|
||||
<module name="NestedIfDepth">
|
||||
<property name="max" value="3"/>
|
||||
</module>
|
||||
<!-- 检查未被注释的main方法,排除以Appllication结尾命名的类 -->
|
||||
<module name="UncommentedMain">
|
||||
<property name="excludedClasses" value=".*Application$"/>
|
||||
</module>
|
||||
<!-- 禁止使用System.out.println -->
|
||||
<module name="Regexp">
|
||||
<property name="format" value="System\.out\.println"/>
|
||||
<property name="illegalPattern" value="true"/>
|
||||
</module>
|
||||
<!-- return个数 3个-->
|
||||
<module name="ReturnCount">
|
||||
<property name="max" value="3"/>
|
||||
</module>
|
||||
<!--try catch 异常处理数量 3-->
|
||||
<module name="NestedTryDepth ">
|
||||
<property name="max" value="3"/>
|
||||
</module>
|
||||
<!-- clone方法必须调用了super.clone() -->
|
||||
<module name="SuperClone" />
|
||||
<!-- finalize 必须调用了super.finalize() -->
|
||||
<module name="SuperFinalize" />
|
||||
|
||||
|
||||
</module>
|
||||
|
||||
<!-- 其他规则可以根据需要添加 -->
|
||||
|
||||
</module>
|
||||
|
|
|
@ -24,6 +24,7 @@ import java.util.regex.Pattern;
|
|||
* <hr/>
|
||||
* 用户认证控制器,包含用户注册、用户登录、用户登出接口
|
||||
*
|
||||
* @author 筱锋xiao_lfeng|176yunxuan
|
||||
* @version v1.1.0
|
||||
* @see AuthService
|
||||
* @see UserRegisterVO
|
||||
|
@ -33,7 +34,6 @@ import java.util.regex.Pattern;
|
|||
* @see Processing
|
||||
* @see ResultUtil
|
||||
* @since v1.0.0
|
||||
* @author 筱锋xiao_lfeng|176yunxuan
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
|
@ -106,6 +106,17 @@ public class AuthController {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* <h1>通过电子邮件和验证码处理用户登录。</h1>
|
||||
* <hr/>
|
||||
* 此方法首先验证电子邮件格式,并检查提供的验证码是否为有效整数。
|
||||
* 如果验证通过,它尝试使用提供的电子邮件和验证码登录用户。
|
||||
*
|
||||
* @param email 用户尝试登录的电子邮件地址。
|
||||
* @param code 发送到用户电子邮件的验证码,用于身份验证。
|
||||
* @return {@link BaseResponse} 包含登录尝试的结果。这可以是带有登录详细信息的成功消息,
|
||||
* 或者指示出了什么问题(例如,参数无效、验证码错误)的错误消息。
|
||||
*/
|
||||
@GetMapping("/auth/login/email")
|
||||
public BaseResponse authLoginByEmail(@RequestParam String email, @RequestParam String code) {
|
||||
log.info("请求接口[GET]: /auth/login/email");
|
||||
|
@ -140,6 +151,17 @@ public class AuthController {
|
|||
return authService.authLogout(request);
|
||||
}
|
||||
|
||||
/**
|
||||
* <h2>修改密码</h2>
|
||||
* <hr/>
|
||||
* 修改密码
|
||||
*
|
||||
* @param userChangePasswordVO 用户修改密码信息
|
||||
* @param request HTTP请求
|
||||
* @param bindingResult 参数校验结果
|
||||
* @return {@link BaseResponse}
|
||||
* @since v1.1.0
|
||||
*/
|
||||
@PutMapping("/auth/password")
|
||||
public BaseResponse authChangePassword(@RequestBody @Validated UserChangePasswordVO userChangePasswordVO, HttpServletRequest request, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[PUT]: /auth/password");
|
||||
|
@ -150,6 +172,11 @@ public class AuthController {
|
|||
return authService.authChangePassword(request, userChangePasswordVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* <h2>忘记密码</h2>
|
||||
* <hr/>
|
||||
* 忘记密码
|
||||
*/
|
||||
@PutMapping("auth/password/forget")
|
||||
public BaseResponse authForgetPassword(@RequestBody @Validated UserForgetPasswordVO userForgetPasswordVO, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[PUT]: /auth/password/forget");
|
||||
|
|
|
@ -8,15 +8,30 @@ import org.springframework.web.bind.annotation.RequestMapping;
|
|||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* @author xiaofeng
|
||||
* CustomController类实现ErrorController接口,处理错误和未授权请求。
|
||||
*
|
||||
* @author xiao_lfeng
|
||||
* @since v1.0.0-SNAPSHOT
|
||||
* @version 1.0.0-SNAPSHOT
|
||||
*/
|
||||
@RestController
|
||||
public class CustomController implements ErrorController {
|
||||
|
||||
/**
|
||||
* 处理错误请求,返回一个包含错误信息的ResponseEntity。
|
||||
*
|
||||
* @return 一个包含错误信息的ResponseEntity
|
||||
*/
|
||||
@RequestMapping("/error")
|
||||
public ResponseEntity<BaseResponse> handleError() {
|
||||
return ResultUtil.error("PageNotFound", 404, "请求资源不存在");
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理未授权请求,返回一个包含错误信息的ResponseEntity。
|
||||
*
|
||||
* @return 一个包含错误信息的ResponseEntity
|
||||
*/
|
||||
@RequestMapping("/unauthorized")
|
||||
public ResponseEntity<BaseResponse> handleUnauthorized() {
|
||||
return ResultUtil.error("Unauthorized", 401, "未授权");
|
||||
|
|
|
@ -9,15 +9,30 @@ import org.springframework.web.bind.annotation.RestController;
|
|||
|
||||
import java.util.HashMap;
|
||||
|
||||
|
||||
/**
|
||||
* @author xiaofeng
|
||||
* IndexController类提供了JSL-OA系统的主入口,处理根路径"/"的GET请求。
|
||||
*
|
||||
* @author xiao_lfeng
|
||||
* @version v1.0.0-SNAPSHOT
|
||||
* @since v1.0.0-SNAPSHOT
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
public class IndexController {
|
||||
|
||||
/**
|
||||
* 使用@Value注解,Spring会自动注入Maven构建时间。
|
||||
*/
|
||||
@Value("${maven.timestamp}")
|
||||
private String timestamp;
|
||||
|
||||
/**
|
||||
* 处理根路径"/"的GET请求,返回一个包含欢迎信息和服务器状态的成功响应。
|
||||
* 在处理请求时,会记录一个info级别的日志信息。
|
||||
*
|
||||
* @return 一个包含欢迎信息和服务器状态的成功响应
|
||||
*/
|
||||
@RequestMapping("/")
|
||||
public BaseResponse index() {
|
||||
log.info("请求接口[GET]: /");
|
||||
|
@ -25,6 +40,4 @@ public class IndexController {
|
|||
newMap.put("timestamp", "构建时间:" + timestamp);
|
||||
return ResultUtil.success("欢迎使用JSL-OA系统,服务器处于正常状态", newMap);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ import javax.servlet.http.HttpServletRequest;
|
|||
* <hr/>
|
||||
* 信息控制器,包含信息获取接口
|
||||
*
|
||||
* @author 筱锋xiao_lfeng
|
||||
* @author xiao_lfeng
|
||||
* @version v1.1.0
|
||||
* @since v1.1.0
|
||||
*/
|
||||
|
@ -28,14 +28,31 @@ import javax.servlet.http.HttpServletRequest;
|
|||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class InfoController {
|
||||
private final InfoService infoService;
|
||||
|
||||
/**
|
||||
* 信息服务
|
||||
*/
|
||||
private final InfoService infoService;
|
||||
/**
|
||||
* 获取头部图片信息
|
||||
*
|
||||
* @param id 图片id
|
||||
* @return 图片信息
|
||||
*/
|
||||
@GetMapping("/info/header-image/get")
|
||||
public BaseResponse infoGetHeaderImage(@RequestParam(required = false) Integer id) {
|
||||
log.info("请求接口[GET]: /info/header-image/get");
|
||||
return infoService.getHeaderImage(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑头部图片信息
|
||||
*
|
||||
* @param carouselVO 图片信息
|
||||
* @param request 请求对象
|
||||
* @param bindingResult 数据校验结果
|
||||
* @return 编辑结果
|
||||
*/
|
||||
@PutMapping("/info/header-image/edit")
|
||||
public BaseResponse infoEditHeaderImage(@RequestBody @Validated CarouselVO carouselVO, HttpServletRequest request, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[PUT]: /info/header-image/edit");
|
||||
|
@ -51,12 +68,27 @@ public class InfoController {
|
|||
return infoService.editHeaderImage(request, carouselVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除头部图片信息
|
||||
*
|
||||
* @param id 图片id
|
||||
* @param request 请求对象
|
||||
* @return 删除结果
|
||||
*/
|
||||
@DeleteMapping("/info/header-image/del")
|
||||
public BaseResponse infoDelHeaderImage(@RequestParam Integer id, HttpServletRequest request) {
|
||||
log.info("请求接口[DELETE]: /info/header-image/del");
|
||||
return infoService.delHeaderImage(request, id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加头部图片信息
|
||||
*
|
||||
* @param carouselVO 图片信息
|
||||
* @param request 请求对象
|
||||
* @param bindingResult 数据校验结果
|
||||
* @return 添加结果
|
||||
*/
|
||||
@PostMapping("/info/header-image/add")
|
||||
public BaseResponse infoAddHeaderImage(@RequestBody @Validated CarouselVO carouselVO, HttpServletRequest request, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[POST]: /info/header-image/add");
|
||||
|
@ -68,12 +100,27 @@ public class InfoController {
|
|||
return infoService.addHeaderImage(request, carouselVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑头部图片设置
|
||||
*
|
||||
* @param showType 是否显示
|
||||
* @param request 请求对象
|
||||
* @return 编辑结果
|
||||
*/
|
||||
@PutMapping("/info/header-image/edit-setting")
|
||||
public BaseResponse infoEditSettingHeaderImage(@RequestParam Boolean showType, HttpServletRequest request) {
|
||||
log.info("请求接口[PUT]: /info/header-image/edit-setting");
|
||||
return infoService.editSettingHeaderImage(request, showType);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取头部用户信息
|
||||
*
|
||||
* @param order 排序方式
|
||||
* @param orderBy 排序字段
|
||||
* @param request 请求对象
|
||||
* @return 用户信息
|
||||
*/
|
||||
@GetMapping("info/header-user/get")
|
||||
public BaseResponse infoGetHeaderUser(@RequestParam String order,@RequestParam String orderBy,HttpServletRequest request){
|
||||
log.info("请求接口[GET]: /info/header-user/get");
|
||||
|
|
|
@ -21,7 +21,7 @@ import java.time.LocalDate;
|
|||
* <hr/>
|
||||
* 消息控制器,包含信息获取接口
|
||||
*
|
||||
* @author 张睿相
|
||||
* @author xiangZr-hhh
|
||||
* @version v1.1.0
|
||||
* @since v1.1.0
|
||||
*/
|
||||
|
@ -32,6 +32,13 @@ public class MessageController {
|
|||
|
||||
private final MessageService messageService;
|
||||
|
||||
/**
|
||||
* 删除消息
|
||||
*
|
||||
* @param id 消息id
|
||||
* @param request 请求对象
|
||||
* @return 删除结果
|
||||
*/
|
||||
@DeleteMapping("/message/delete")
|
||||
public BaseResponse messageDelete(@RequestParam Long id, HttpServletRequest request) {
|
||||
if (id == null) {
|
||||
|
@ -39,6 +46,16 @@ public class MessageController {
|
|||
} else return messageService.messageDelete(id, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取消息列表
|
||||
*
|
||||
* @param page 页码
|
||||
* @param pageSize 每页条数
|
||||
* @param request 请求对象
|
||||
* @param begin 开始日期
|
||||
* @param end 结束日期
|
||||
* @return 消息列表
|
||||
*/
|
||||
@GetMapping("/message/get")
|
||||
public BaseResponse messageGet(@RequestParam(defaultValue = "1") Long page,
|
||||
@RequestParam(defaultValue = "10") Long pageSize,
|
||||
|
@ -53,6 +70,17 @@ public class MessageController {
|
|||
} else return messageService.messageGet(begin, end, page, pageSize, uid);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有消息列表
|
||||
*
|
||||
* @param page 页码
|
||||
* @param pageSize 每页条数
|
||||
* @param request 请求对象
|
||||
* @param begin 开始日期
|
||||
* @param end 结束日期
|
||||
* @param uid 用户id
|
||||
* @return 消息列表
|
||||
*/
|
||||
@GetMapping("/message/get/all")
|
||||
public BaseResponse messageGetAll(@RequestParam(defaultValue = "1") Long page,
|
||||
@RequestParam(defaultValue = "10") Long pageSize,
|
||||
|
@ -62,12 +90,11 @@ public class MessageController {
|
|||
@DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate end) {
|
||||
log.info("请求接口[GET]:/message/get/all");
|
||||
String token = request.getHeader("Authorization").replace("Bearer ", "");
|
||||
Long LoginId = JwtUtil.getUserId(token);
|
||||
if (LoginId == null) {
|
||||
Long loginId = JwtUtil.getUserId(token);
|
||||
if (loginId == null) {
|
||||
return ResultUtil.error(ErrorCode.USER_NOT_EXIST);
|
||||
} else return messageService.messageGetAll(request, begin, end, page, pageSize, LoginId, uid);
|
||||
} else return messageService.messageGetAll(request, begin, end, page, pageSize, loginId, uid);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
package com.jsl.oa.controllers;
|
||||
|
||||
import com.jsl.oa.services.ModuleService;
|
||||
import com.jsl.oa.utils.BaseResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class ModuleContorller {
|
||||
private final ModuleService moduleService;
|
||||
|
||||
/**
|
||||
* 获取子系统
|
||||
* @param projectId
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/module/get")
|
||||
public BaseResponse moudleGetByProjectId(@RequestParam Integer projectId, HttpServletRequest request){
|
||||
|
||||
log.info("ProjectIdcontroller");
|
||||
return moduleService.getByProjectId(projectId,request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取子模块
|
||||
* @param sysId
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/module/get/min")
|
||||
public BaseResponse moudleGetBySysId(@RequestParam Integer sysId, HttpServletRequest request){
|
||||
|
||||
log.info("SysIdcontorller");
|
||||
return moduleService.getBySysId(sysId,request);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@DeleteMapping("/module/delete/{id}")
|
||||
public BaseResponse moudleDeleteById( @PathVariable("id") Long id, HttpServletRequest request){
|
||||
log.info("请求接口[DELETE]: /module/delete/{id}");
|
||||
return moduleService.deleteById(request,id);
|
||||
}
|
||||
|
||||
}
|
68
src/main/java/com/jsl/oa/controllers/ModuleController.java
Normal file
68
src/main/java/com/jsl/oa/controllers/ModuleController.java
Normal file
|
@ -0,0 +1,68 @@
|
|||
package com.jsl.oa.controllers;
|
||||
|
||||
import com.jsl.oa.services.ModuleService;
|
||||
import com.jsl.oa.utils.BaseResponse;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
|
||||
/**
|
||||
* <h1>模块控制器</h1>
|
||||
* <hr/>
|
||||
* 模块控制器,包含模块获取接口
|
||||
*
|
||||
* @since v1.1.0
|
||||
* @version v1.1.0
|
||||
* @author xiangZr-hhh | xiao_lfeng | 176yunxuan
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class ModuleController {
|
||||
private final ModuleService moduleService;
|
||||
|
||||
/**
|
||||
* 获取子系统
|
||||
*
|
||||
* @param projectId 项目ID
|
||||
* @param request 请求对象
|
||||
* @return 子系统列表
|
||||
*/
|
||||
@GetMapping("/module/get")
|
||||
public BaseResponse moduleGetByProjectId(@RequestParam Integer projectId, HttpServletRequest request) {
|
||||
|
||||
log.info("[Controller] 执行 moduleGetByProjectId 接口");
|
||||
return moduleService.getByProjectId(projectId, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取子模块
|
||||
*
|
||||
* @param sysId 系统ID
|
||||
* @param request 请求对象
|
||||
* @return 子模块列表
|
||||
*/
|
||||
@GetMapping("/module/get/min")
|
||||
public BaseResponse moduleGetBySysId(@RequestParam Integer sysId, HttpServletRequest request) {
|
||||
|
||||
log.info("[Controller] 执行 moduleGetBySysId 接口");
|
||||
return moduleService.getBySysId(sysId, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除模块
|
||||
*
|
||||
* @param id 模块ID
|
||||
* @param request 请求对象
|
||||
* @return 删除结果
|
||||
*/
|
||||
@DeleteMapping("/module/delete/{id}")
|
||||
public BaseResponse moduleDeleteById(@PathVariable("id") Long id, HttpServletRequest request) {
|
||||
log.info("[Controller] 执行 moduleDeleteById 接口");
|
||||
return moduleService.deleteById(request, id);
|
||||
}
|
||||
|
||||
}
|
|
@ -20,13 +20,13 @@ import javax.servlet.http.HttpServletRequest;
|
|||
/**
|
||||
* <h1>新闻控制器</h1>
|
||||
* <hr/>
|
||||
* 角色控制器,包含角色获取接口
|
||||
* 新闻控制器,包含新闻添加接口
|
||||
*
|
||||
* @version v1.1.0
|
||||
* @see NewsService
|
||||
* @since v1.1.0
|
||||
* @author xiangZr-hhh | xiao_lfeng | 176yunxuan
|
||||
*/
|
||||
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
|
@ -34,6 +34,18 @@ public class NewsController {
|
|||
|
||||
private final NewsService newsService;
|
||||
|
||||
/**
|
||||
* <h2>新闻添加接口</h2>
|
||||
* <hr/>
|
||||
* 新闻添加接口,接收新闻添加VO对象,并调用NewsService的newsAdd方法进行新闻添加操作。
|
||||
*
|
||||
* @param newsAddVO 新闻添加VO对象,包含新闻信息
|
||||
* @param bindingResult 数据校验结果,用于检查请求参数是否有错误
|
||||
* @param request 请求对象,包含请求信息
|
||||
* @return BaseResponse 返回结果,包含操作结果和错误信息
|
||||
* @see NewsService#newsAdd(NewsAddVO, HttpServletRequest)
|
||||
* @since v1.1.0
|
||||
*/
|
||||
@PostMapping("/news/add")
|
||||
public BaseResponse newsAdd(@RequestBody @Validated NewsAddVO newsAddVO, BindingResult bindingResult, HttpServletRequest request) {
|
||||
log.info("请求接口[POST]: /news/add");
|
||||
|
@ -41,13 +53,8 @@ public class NewsController {
|
|||
if (bindingResult.hasErrors()) {
|
||||
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
|
||||
return newsService.newsAdd(newsAddVO, request);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -14,58 +14,104 @@ import org.springframework.web.bind.annotation.*;
|
|||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
* 权限控制器类,处理权限相关的API请求。
|
||||
* 它使用 {@link PermissionService} 来执行权限相关的操作。
|
||||
*
|
||||
* @author xiao_lfeng | xiangZr-hhh | 176yunxuan
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class PermissionController {
|
||||
|
||||
/**
|
||||
* 权限服务实例,用于执行权限相关的操作。
|
||||
*/
|
||||
private final PermissionService permissionService;
|
||||
|
||||
/**
|
||||
* 添加新的权限。
|
||||
*
|
||||
* @param request HTTP请求对象。
|
||||
* @param rid 角色ID。
|
||||
* @param pid 权限ID。
|
||||
* @return {@link BaseResponse} 对象,包含操作结果。
|
||||
*/
|
||||
@PostMapping("/permission/add")
|
||||
public BaseResponse permissionAdd(HttpServletRequest request, @RequestParam Long rid,@RequestParam Long pid) {
|
||||
public BaseResponse permissionAdd(HttpServletRequest request, @RequestParam Long rid, @RequestParam Long pid) {
|
||||
log.info("请求接口[POST]: /permission/add");
|
||||
// 判断是否有参数错误
|
||||
if (rid == null || pid == null) {
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||
} else {
|
||||
return permissionService.permissionAdd(request,rid,pid);
|
||||
return permissionService.permissionAdd(request, rid, pid);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取当前用户的权限信息。
|
||||
*
|
||||
* @param request HTTP请求对象。
|
||||
* @param uid 用户ID。
|
||||
* @return {@link BaseResponse} 对象,包含操作结果。
|
||||
*/
|
||||
@GetMapping("/permission/current")
|
||||
public BaseResponse permissionUser(HttpServletRequest request, @RequestParam Long uid) {
|
||||
log.info("请求接口[GET]: /permission/current");
|
||||
// 判断是否有参数错误
|
||||
if (uid == null ) {
|
||||
if (uid == null) {
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||
} else {
|
||||
return permissionService.permissionUser(request,uid);
|
||||
return permissionService.permissionUser(request, uid);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有权限信息。
|
||||
*
|
||||
* @param request HTTP请求对象。
|
||||
* @return {@link BaseResponse} 对象,包含操作结果。
|
||||
*/
|
||||
@GetMapping("/permission/get")
|
||||
public BaseResponse permissionGet(HttpServletRequest request){
|
||||
public BaseResponse permissionGet(HttpServletRequest request) {
|
||||
log.info("请求接口[GET]: /permission/get");
|
||||
return permissionService.permissionGet(request);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 编辑权限信息。
|
||||
*
|
||||
* @param permissionEditVo {@link PermissionEditVO} 对象,包含更新后的权限信息。
|
||||
* @param bindingResult Binding结果对象,包含任何验证错误。
|
||||
* @param request HTTP请求对象。
|
||||
* @return {@link BaseResponse} 对象,包含操作结果。
|
||||
*/
|
||||
@PutMapping("/permission/edit")
|
||||
public BaseResponse permissionEdit(@RequestBody @Validated PermissionEditVO permissionEditVo, BindingResult bindingResult, HttpServletRequest request){
|
||||
public BaseResponse permissionEdit(@RequestBody @Validated PermissionEditVO permissionEditVo, BindingResult bindingResult, HttpServletRequest request) {
|
||||
log.info("请求接口[PUT]: /permission/edit");
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
return permissionService.permissionEdit(permissionEditVo,request);
|
||||
return permissionService.permissionEdit(permissionEditVo, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除权限。
|
||||
*
|
||||
* @param pid 权限ID。
|
||||
* @param request HTTP请求对象。
|
||||
* @return {@link BaseResponse} 对象,包含操作结果。
|
||||
*/
|
||||
@DeleteMapping("/permission/delete")
|
||||
public BaseResponse permissionDelete(@RequestParam Long pid,HttpServletRequest request){
|
||||
public BaseResponse permissionDelete(@RequestParam Long pid, HttpServletRequest request) {
|
||||
log.info("请求接口[Delete]: /permission/delete");
|
||||
// 判断是否有参数错误
|
||||
if (pid == null) {
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||
} else return permissionService.permissionDelete(request,pid);
|
||||
} else {
|
||||
return permissionService.permissionDelete(request, pid);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
package com.jsl.oa.controllers;
|
||||
|
||||
import com.jsl.oa.model.voData.*;
|
||||
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
||||
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
||||
import com.jsl.oa.model.voData.ProjectEditVO;
|
||||
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
||||
import com.jsl.oa.services.ProjectService;
|
||||
import com.jsl.oa.utils.BaseResponse;
|
||||
|
@ -17,101 +20,109 @@ import org.springframework.web.bind.annotation.*;
|
|||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* 项目控制器
|
||||
*
|
||||
* @author xiao_lfeng | xiangZr-hhh | 176yunxuan
|
||||
* @version 1.1.0
|
||||
* @since 1.1.0
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class ProjectController {
|
||||
|
||||
/**
|
||||
* 项目服务
|
||||
*/
|
||||
private final ProjectService projectService;
|
||||
|
||||
/**
|
||||
* 项目展示获取
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
* @param id 获取项目 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/header/get")
|
||||
public BaseResponse projectGetHeader(@RequestParam(required = false) Integer id) {
|
||||
public BaseResponse projectGetHeader(@RequestParam(required = false) final Integer id) {
|
||||
log.info("请求接口[GET]: /project/header/get");
|
||||
return projectService.getHeader(id);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
* @param id 获取项目 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/get/id")
|
||||
public BaseResponse projectGetById(@RequestParam Integer id){
|
||||
public BaseResponse projectGetById(@RequestParam Integer id) {
|
||||
return projectService.getById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
* @param id 获取项目 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/getwork/id")
|
||||
public BaseResponse projectWorkGetById(@RequestParam Integer id){
|
||||
public BaseResponse projectWorkGetById(@RequestParam Integer id) {
|
||||
return projectService.getWorkById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 游客获取项目
|
||||
*
|
||||
* @return
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/get/custom")
|
||||
public BaseResponse projectGetCustom(@RequestParam(required = false) Integer id,
|
||||
@RequestParam(required = false) List<String> tags,
|
||||
@RequestParam(required = false) List<Integer> isFinish,
|
||||
@RequestParam(required = false,defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false,defaultValue = "10") Integer pageSize) {
|
||||
@RequestParam(required = false, defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false, defaultValue = "10") Integer pageSize) {
|
||||
log.info("请求接口[GET]: /project/all/get");
|
||||
return projectService.tget(id, tags, isFinish,page,pageSize);
|
||||
return projectService.tget(id, tags, isFinish, page, pageSize);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 我负责的界面的获取项目
|
||||
*
|
||||
* @return
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/get")
|
||||
public BaseResponse projectGet(@RequestParam(required = false) Integer listAll,
|
||||
@RequestParam(required = false) List<String> tags,
|
||||
@RequestParam(required = false) List<Integer> isFinish,
|
||||
@RequestParam(required = false,defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false,defaultValue = "10") Integer pageSize,
|
||||
@RequestParam(required = false, defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false, defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest request) {
|
||||
log.info("请求接口[GET]: /project/get");
|
||||
return projectService.get(listAll, request, tags, isFinish,page,pageSize);
|
||||
return projectService.get(listAll, request, tags, isFinish, page, pageSize);
|
||||
}
|
||||
|
||||
/**
|
||||
* 我管理的查询
|
||||
*
|
||||
* @return
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/work/get")
|
||||
public BaseResponse projectWorkGet(@RequestParam(required = false) Integer listAll,
|
||||
@RequestParam(required = false) List<String> tags,
|
||||
@RequestParam(required = false) List<Integer> isFinish,
|
||||
@RequestParam(required = false) Integer is,
|
||||
@RequestParam(required = false,defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false,defaultValue = "10") Integer pageSize,
|
||||
@RequestParam(required = false, defaultValue = "1") Integer page,
|
||||
@RequestParam(required = false, defaultValue = "10") Integer pageSize,
|
||||
HttpServletRequest request) {
|
||||
log.info("请求接口[GET]: /project/work/get");
|
||||
return projectService.workget(listAll, request, tags, isFinish, is,page,pageSize);
|
||||
return projectService.workget(listAll, request, tags, isFinish, is, page, pageSize);
|
||||
}
|
||||
|
||||
/**
|
||||
* 单个项目的详细
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param name
|
||||
* @return
|
||||
* @param name 获取项目名称
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/header")
|
||||
public BaseResponse projectGetByName(@RequestParam String name) {
|
||||
|
@ -123,17 +134,16 @@ public class ProjectController {
|
|||
* 增加项目展示
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param projectShowVO
|
||||
* @param request
|
||||
* @param bindingResult
|
||||
* @return
|
||||
* @param projectShowVO 项目展示信息
|
||||
* @param request 请求
|
||||
* @param bindingResult 参数校验
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@PostMapping("/project/header/add")
|
||||
public BaseResponse projectAddHeader(@RequestBody @Validated ProjectShowVO projectShowVO, HttpServletRequest request, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[POST]: /project/header/add");
|
||||
// 参数校验
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
log.warn("参数校验失败: {}", Processing.getValidatedErrorList(bindingResult));
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
return projectService.addHeader(request, projectShowVO);
|
||||
|
@ -143,109 +153,54 @@ public class ProjectController {
|
|||
* 编辑展示的项目
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param projectShowVO
|
||||
* @param id
|
||||
* @param request
|
||||
* @param bindingResult
|
||||
* @return
|
||||
* @param projectId 项目 id
|
||||
* @param request 请求
|
||||
* @param projectEdit 项目信息
|
||||
* @param bindingResult 参数校验
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@PutMapping("/project/header/edit")
|
||||
public BaseResponse projectEditHeader(@RequestBody @Validated ProjectShowVO projectShowVO, @RequestParam Integer id, HttpServletRequest request, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[PUT]: /project/header/edit");
|
||||
// 参数校验
|
||||
@PutMapping("/project/header/edit/{projectId}")
|
||||
public BaseResponse projectEditById(@RequestParam Long projectId, HttpServletRequest request, @RequestBody @Validated ProjectEditVO projectEdit, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[PUT]: /project/header/edit/{projectId}");
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
log.warn("参数校验失败: {}", Processing.getValidatedErrorList(bindingResult));
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
if (id == null) {
|
||||
log.warn("参数校验失败: {}", "id不能为空");
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR, "id不能为空");
|
||||
}
|
||||
return projectService.editHeader(request, projectShowVO, id);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 删除项目展示
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param id
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
@DeleteMapping("/project/header/del")
|
||||
public BaseResponse projectDelHeader(@RequestParam Integer id, HttpServletRequest request) {
|
||||
log.info("请求接口[Delete]: /project/header/del");
|
||||
return projectService.delHeader(id, request);
|
||||
}
|
||||
|
||||
/**
|
||||
* 项目表进行,项目增加
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/project/add")
|
||||
public BaseResponse projectAdd(HttpServletRequest request, @RequestBody @Validated ProjectInfoVO projectAdd, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[POST]: /project/add");
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
return projectService.projectAdd(request, projectAdd);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 项目的修改
|
||||
* @Date: 2024/3/10
|
||||
* @Param request:
|
||||
* @Param projectEdit:
|
||||
* @Param bindingResult:
|
||||
* @Param projectId:
|
||||
**/
|
||||
@PutMapping("/project/edit/{projectId}")
|
||||
public BaseResponse projectEditById(HttpServletRequest request, @RequestBody @Validated ProjectEditVO projectEdit,
|
||||
@NotNull BindingResult bindingResult, @PathVariable("projectId") Long projectId) {
|
||||
log.info("请求接口[PUT]: /project/edit/{projectId}");
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
return projectService.projectEdit(request, projectEdit, projectId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 子系统子模块的增加
|
||||
*
|
||||
* @param request
|
||||
* @param bindingResult
|
||||
* @return
|
||||
* @param request 请求
|
||||
* @param bindingResult 参数校验
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@PostMapping("/project/work/add")
|
||||
public BaseResponse projectWorkAdd(HttpServletRequest request, @RequestBody @Validated ProjectWorkVO projectWorkVO, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[POST]: /project/work/add");
|
||||
// 判断是否有参数错误
|
||||
if (bindingResult.hasErrors()) {
|
||||
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR, Processing.getValidatedErrorList(bindingResult));
|
||||
}
|
||||
return projectService.projecWorktAdd(request, projectWorkVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取负责人id
|
||||
* @return
|
||||
*
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/pri")
|
||||
public BaseResponse projectPrincipalGet(){
|
||||
public BaseResponse projectPrincipalGet() {
|
||||
return projectService.projectPrincipalGet();
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户获取所分到的项目模块
|
||||
*
|
||||
* @param uid
|
||||
* @return
|
||||
* @param uid 用户 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@GetMapping("/project/cut/user")
|
||||
public BaseResponse projectGetUserInCutting(@RequestParam Long uid) {
|
||||
|
@ -260,13 +215,13 @@ public class ProjectController {
|
|||
/**
|
||||
* 给某用户分配项目模块
|
||||
*
|
||||
* @param uid
|
||||
* @param pid
|
||||
* @return
|
||||
* @param uid 用户 id
|
||||
* @param pid 项目 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@PostMapping("/project/cut/user/add")
|
||||
public BaseResponse projectAddUserForCutting(HttpServletRequest request, @RequestParam Long uid, @RequestParam Long pid) {
|
||||
log.info("请求接口[POST]: /project/cut/user/add");
|
||||
log.info("请求接口[Post]: /project/cut/user/add");
|
||||
// 判断是否有参数错误
|
||||
if (uid == null || pid == null) {
|
||||
return ResultUtil.error(ErrorCode.PARAMETER_ERROR);
|
||||
|
@ -277,8 +232,8 @@ public class ProjectController {
|
|||
/**
|
||||
* 删除某项目记录
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
* @param id 用户 id
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@DeleteMapping("/project/delete")
|
||||
public BaseResponse projectDelete(HttpServletRequest request, @RequestParam List<Long> id) {
|
||||
|
@ -290,12 +245,13 @@ public class ProjectController {
|
|||
}
|
||||
|
||||
/**
|
||||
* @Description: 添加项目模块
|
||||
* @Date: 2024/1/21
|
||||
* @Param request
|
||||
* @Param projectCuttingAddVO
|
||||
* @Param bindingResult
|
||||
**/
|
||||
* 项目轮播图
|
||||
*
|
||||
* @param request 请求
|
||||
* @param projectCuttingAddVO 项目轮播图信息
|
||||
* @param bindingResult 参数校验
|
||||
* @return {@link BaseResponse}
|
||||
*/
|
||||
@PostMapping("/project/cut/add")
|
||||
public BaseResponse projectCuttingAdd(HttpServletRequest request, @RequestBody @Validated ProjectCuttingAddVO projectCuttingAddVO, @NotNull BindingResult bindingResult) {
|
||||
log.info("请求接口[Post]: /project/cut/add");
|
||||
|
|
|
@ -7,7 +7,10 @@ import com.jsl.oa.model.doData.ProjectWorkDO;
|
|||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||
import com.jsl.oa.model.voData.ProjectWorkSimpleVO;
|
||||
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||
import org.apache.ibatis.annotations.*;
|
||||
import org.apache.ibatis.annotations.Insert;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
@ -36,7 +39,7 @@ public interface ProjectMapper {
|
|||
ProjectDO tgetProjectById(Integer id);
|
||||
|
||||
@Select("select * from organize_oa.oa_project_work where principal_id=#{uid}")
|
||||
//"(select id from organize_oa.oa_project_work where id in)")
|
||||
//"(select id from organize_oa.oa_project_work where id in)")
|
||||
List<ProjectCuttingDO> projectGetUserInCutting(Long uid);
|
||||
|
||||
@Insert("update organize_oa.oa_project_work set principal_id =#{uid} where id=#{pid}")
|
||||
|
@ -52,12 +55,12 @@ public interface ProjectMapper {
|
|||
boolean setProjectShow(String setProjectShow);
|
||||
|
||||
//@Select("select * from organize_oa.oa_project where json_extract(tags,'$.tags')" +
|
||||
//"like concat('%',#{tags},'%')")
|
||||
//"like concat('%',#{tags},'%')")
|
||||
|
||||
//@Select("select * from organize_oa.oa_project where is_finish=#{isFinish} and is_delete=false and principal_id=#{userId}")
|
||||
List<ProjectDO>getByIsfinish(Long userId,List<Integer> isFinish);
|
||||
List<ProjectDO> getByIsfinish(Long userId, List<Integer> isFinish);
|
||||
|
||||
List<ProjectDO>getByTags(Long userId,List<String> tags,List<Integer> isFinish);
|
||||
List<ProjectDO> getByTags(Long userId, List<String> tags, List<Integer> isFinish);
|
||||
|
||||
@Select("select * from organize_oa.oa_project where is_delete=false and status=1 and principal_id=#{userId}")
|
||||
List<ProjectDO> get(Long userId);
|
||||
|
@ -93,10 +96,10 @@ public interface ProjectMapper {
|
|||
//@Select("select * from organize_oa.oa_project_work where is_finish=#{isFinish} and is_delete=false and principal_id =#{userId}")
|
||||
List<ProjectDO> workgetByIsfinish(Long userId, List<Integer> isFinish, Integer is);
|
||||
|
||||
List<ProjectDO> workgetByTags(Long userId, List<String> tags, Integer is,List<Integer> isFinish);
|
||||
List<ProjectDO> workgetByTags(Long userId, List<String> tags, Integer is, List<Integer> isFinish);
|
||||
|
||||
//@Select("select * from organize_oa.oa_project where id in(select project_id from " +
|
||||
//"organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId} and type=0)")
|
||||
//"organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId} and type=0)")
|
||||
List<ProjectDO> workget(Long userId, Integer is);
|
||||
|
||||
//@Select("select * from organize_oa.oa_project_work where status=1 and principal_id=#{userId}")
|
||||
|
@ -107,12 +110,12 @@ public interface ProjectMapper {
|
|||
|
||||
List<ProjectDO> tgetByIsfinish(List<Integer> isFinish);
|
||||
|
||||
List<ProjectDO> tgetBytags(List<String> tags,List<Integer> isFinish);
|
||||
List<ProjectDO> tgetBytags(List<String> tags, List<Integer> isFinish);
|
||||
|
||||
@Select("select * from organize_oa.oa_project_work where id=#{id}")
|
||||
ProjectWorkSimpleVO getWorkById(Integer id);
|
||||
@Select("select * from organize_oa.oa_project_work where id=#{id}")
|
||||
ProjectWorkSimpleVO getWorkById(Integer id);
|
||||
|
||||
@Select("select principal_id from organize_oa.oa_project_work where id=#{pid}")
|
||||
@Select("select principal_id from organize_oa.oa_project_work where id=#{pid}")
|
||||
Long getPirIdbyWorkid(Long pid);
|
||||
|
||||
@Select("select principal_id from organize_oa.oa_project_work where id=#{id}")
|
||||
|
|
|
@ -56,20 +56,21 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
@Override
|
||||
public BaseResponse projectAdd(HttpServletRequest request, ProjectInfoVO projectAdd) {
|
||||
log.info("\t> 执行 Service 层 ProjectService.projectAdd 方法");
|
||||
if(projectAdd.getDescription().isEmpty()){
|
||||
if (projectAdd.getDescription().isEmpty()) {
|
||||
projectAdd.setDescription("{}");
|
||||
}else {
|
||||
projectAdd.setDescription("{\"description\":\" "+ projectAdd.getDescription() + "\"}");
|
||||
} else {
|
||||
projectAdd.setDescription("{\"description\":\" " + projectAdd.getDescription() + "\"}");
|
||||
}
|
||||
String tags = projectAdd.getTags();
|
||||
String[] split = tags.split(",");
|
||||
String open = "{\"tags\":[\"";
|
||||
String close = "]}";
|
||||
String tag = "";
|
||||
for (String tag1:split){
|
||||
tag += tag1 + "\",\"";
|
||||
}if (!tag.isEmpty()) {
|
||||
tag = tag.substring(0, tag.length() - 2);
|
||||
StringBuilder tag = new StringBuilder();
|
||||
for (String tag1 : split) {
|
||||
tag.append(tag1).append("\",\"");
|
||||
}
|
||||
if (tag.length() > 0) {
|
||||
tag = new StringBuilder(tag.substring(0, tag.length() - 2));
|
||||
}
|
||||
projectAdd.setTags(open + tag + close);
|
||||
projectAdd.setFile("{\"URI\":\"" + projectAdd.getFile() + "\"}");
|
||||
|
@ -85,84 +86,84 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
//获取用户id
|
||||
Long userId = Processing.getAuthHeaderToUserId(request);
|
||||
//是否是增加子系统
|
||||
if(projectWorkVO.getType() == 0 ){
|
||||
if (projectWorkVO.getType() == 0) {
|
||||
//是否是老师
|
||||
if (Processing.checkUserIsTeacher(request, roleMapper)){
|
||||
if (Processing.checkUserIsTeacher(request, roleMapper)) {
|
||||
projectDAO.projectWorkAdd(projectWorkVO);
|
||||
}else {
|
||||
} else {
|
||||
return ResultUtil.error(ErrorCode.NOT_PERMISSION);
|
||||
}
|
||||
}//增加子模块
|
||||
else {
|
||||
//是否是子系统的负责人
|
||||
if(Objects.equals(userId, projectMapper.getPirIdbyWorkid(projectWorkVO.getPid()))){
|
||||
if (Objects.equals(userId, projectMapper.getPirIdbyWorkid(projectWorkVO.getPid()))) {
|
||||
projectDAO.projectWorkAdd(projectWorkVO);
|
||||
}else return ResultUtil.error(ErrorCode.NOT_PERMISSION);
|
||||
} else return ResultUtil.error(ErrorCode.NOT_PERMISSION);
|
||||
}
|
||||
|
||||
return ResultUtil.success("添加成功");
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseResponse tget(Integer id, List<String> tags, List<Integer> isFinish,Integer page,Integer pageSize){
|
||||
public BaseResponse tget(Integer id, List<String> tags, List<Integer> isFinish, Integer page, Integer pageSize) {
|
||||
log.info("\t> 执行 Service 层 ProjectService.tget 方法");
|
||||
//根据id查询
|
||||
if (id != null){
|
||||
if (id != null) {
|
||||
ProjectDO projectDO = projectMapper.tgetProjectById(id);
|
||||
ProjectSimpleVO projectSimpleVO = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO, projectDO, userDAO, objectMapper);
|
||||
return ResultUtil.success(projectSimpleVO);
|
||||
}
|
||||
|
||||
//根据标签查询
|
||||
if (tags != null && !tags.isEmpty()) {
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id, isFinish, tags);
|
||||
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
//根据状态查询
|
||||
if (isFinish != null && !isFinish.isEmpty()) {
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id, isFinish, tags);
|
||||
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
|
||||
List<ProjectDO> projectDOList = projectDAO.tget(id, isFinish, tags);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
|
@ -171,13 +172,13 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
|
||||
|
||||
// 判断项目是否存在
|
||||
if(!projectDAO.isExistProjectById(projectId)){
|
||||
if (!projectDAO.isExistProjectById(projectId)) {
|
||||
return ResultUtil.error(ErrorCode.PROJECT_NOT_EXIST);
|
||||
}
|
||||
|
||||
ProjectDO projectDO = projectDAO.getProjectById(projectId);
|
||||
|
||||
if(projectDO.getFile() == null || projectDO.getFile().equals("{}")){
|
||||
if (projectDO.getFile() == null || projectDO.getFile().equals("{}")) {
|
||||
return ResultUtil.success(null);
|
||||
}
|
||||
|
||||
|
@ -203,14 +204,14 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
|
||||
projectWorkSimpleVO.setPrincipalUser(userDAO.getUserById(projectMapper.getPid(id)).getUsername());
|
||||
// 解析JSON字符串
|
||||
JsonNode rootNode = null;
|
||||
JsonNode rootNode;
|
||||
try {
|
||||
rootNode = objectMapper.readTree(projectWorkSimpleVO.getDescription());
|
||||
// 访问特定的key
|
||||
JsonNode targetNode = rootNode.get("description");
|
||||
if(targetNode != null && !rootNode.isNull()){
|
||||
if (targetNode != null && !rootNode.isNull()) {
|
||||
projectWorkSimpleVO.setDescription(targetNode.asText());
|
||||
}else{
|
||||
} else {
|
||||
projectWorkSimpleVO.setDescription("null");
|
||||
}
|
||||
} catch (JsonProcessingException ignored) {
|
||||
|
@ -370,16 +371,16 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish);
|
||||
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
|
@ -387,16 +388,16 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
if (isFinish != null && !isFinish.isEmpty()) {
|
||||
List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
|
@ -405,31 +406,31 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) {
|
||||
List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
} else {
|
||||
listAll = 0;
|
||||
List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
|
@ -444,68 +445,68 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
|
||||
//根据标签查询
|
||||
if (tags != null && !tags.isEmpty()) {
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
//根据状态查询
|
||||
if (isFinish != null && !isFinish.isEmpty()) {
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
|
||||
|
||||
//判断是否是老师(项目负责人)
|
||||
if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) {
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
} else {
|
||||
listAll = 0;
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish, is);
|
||||
List<ProjectSimpleVO> projectSimpleVOList = new ArrayList<>();
|
||||
for (ProjectDO projectDO:projectDOList){
|
||||
for (ProjectDO projectDO : projectDOList) {
|
||||
ProjectSimpleVO projectSimpleVO1 = new ProjectSimpleVO();
|
||||
Processing.projectTosimply(projectSimpleVO1,projectDO,userDAO,objectMapper);
|
||||
Processing.projectTosimply(projectSimpleVO1, projectDO, userDAO, objectMapper);
|
||||
projectSimpleVOList.add(projectSimpleVO1);
|
||||
}
|
||||
//分页返回
|
||||
int start = (page-1) * pageSize;
|
||||
int start = (page - 1) * pageSize;
|
||||
int end = start + pageSize;
|
||||
List<ProjectSimpleVO> pageData = projectSimpleVOList.subList(start,
|
||||
Math.min(end,projectSimpleVOList.size()));
|
||||
Math.min(end, projectSimpleVOList.size()));
|
||||
return ResultUtil.success(pageData);
|
||||
}
|
||||
}
|
||||
|
@ -526,19 +527,19 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
log.info("\t> 执行 Service 层 ProjectService.projectDelete 方法");
|
||||
|
||||
//判断用户是否为老师 或者 项目负责人
|
||||
if (!Processing.checkUserIsTeacher(request, roleMapper)){
|
||||
if (!Processing.checkUserIsTeacher(request, roleMapper)) {
|
||||
return ResultUtil.error(ErrorCode.NOT_PERMISSION);
|
||||
}
|
||||
|
||||
for(Long id1:id){
|
||||
if(!projectDAO.isPrincipalUser(Processing.getAuthHeaderToUserId(request), id1)) {
|
||||
for (Long id1 : id) {
|
||||
if (!projectDAO.isPrincipalUser(Processing.getAuthHeaderToUserId(request), id1)) {
|
||||
return ResultUtil.error(ErrorCode.NOT_PERMISSION);
|
||||
}
|
||||
|
||||
}
|
||||
if (!projectDAO.projectDelete(id1)) {
|
||||
return ResultUtil.error(ErrorCode.DATABASE_DELETE_ERROR);
|
||||
}
|
||||
} return ResultUtil.success();
|
||||
}
|
||||
return ResultUtil.success();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue
Block a user