This commit is contained in:
parent
5a57ea4b1c
commit
3b9a7cfe5e
|
@ -0,0 +1,23 @@
|
|||
package com.jsl.oa.common.constant;
|
||||
|
||||
|
||||
/**
|
||||
* <h1>Review常量类</h1>
|
||||
* <hr/>
|
||||
* 用于存放审核信息的审批状态常量
|
||||
*
|
||||
* @version v1.1.0
|
||||
* @since v1.1.0
|
||||
* @author zrx_hhh
|
||||
*/
|
||||
public class ReviewConstants {
|
||||
|
||||
public static final int NOT_APPROVED = 0;
|
||||
|
||||
public static final int APPROVED = 1;
|
||||
|
||||
public static final int PENDING = 2;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -5,7 +5,6 @@ import com.jsl.oa.utils.BaseResponse;
|
|||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
@ -26,16 +25,29 @@ public class ReviewController {
|
|||
private final ReviewService reviewService;
|
||||
|
||||
/**
|
||||
* @Description: 获取我的审核列表
|
||||
* @Description: 获取审核记录列表
|
||||
* @Date: 2024/4/11
|
||||
* @Param request:
|
||||
**/
|
||||
@GetMapping("/review/getMyReview")
|
||||
public BaseResponse getUserReview(@RequestParam Long projectId, HttpServletRequest request) {
|
||||
@GetMapping("/review/getReviewRecords")
|
||||
public BaseResponse getUserReviewRecords(HttpServletRequest request) {
|
||||
log.info("请求接口[GET]: /review/getMyReview");
|
||||
return reviewService.getUserReview(projectId, request);
|
||||
return reviewService.getUserReview(request);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @Description: 获取我的审核数据
|
||||
* @Date: 2024/4/12
|
||||
* @Param request:
|
||||
**/
|
||||
@GetMapping("/review/getMyReview")
|
||||
public BaseResponse getMyReview(HttpServletRequest request) {
|
||||
log.info("请求接口[GET]: /review/getMyReview");
|
||||
return reviewService.getUserPendingApprovalReview(request);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -12,10 +12,19 @@ public interface ReviewMapper {
|
|||
+ "AND is_delete = 0")
|
||||
List<ReviewDO> selectAllReviewFromProject(Long projectId);
|
||||
|
||||
@Select("SELECT * FROM organize_oa.oa_review WHERE project_id = #{projectId}"
|
||||
+ "AND is_delete = 0 AND review_result = #{result}")
|
||||
List<ReviewDO> selectApprovedResultReviewFromProject(Long projectId, Integer result);
|
||||
|
||||
@Select("SELECT * FROM organize_oa.oa_review WHERE "
|
||||
+ "project_subsystem_id = #{subsystemId} AND is_delete = 0")
|
||||
List<ReviewDO> selectReviewFromSubsystem(Long subsystemId);
|
||||
|
||||
@Select("SELECT * FROM organize_oa.oa_review WHERE "
|
||||
+ "project_subsystem_id = #{subsystemId} "
|
||||
+ "AND is_delete = 0 AND review_result = #{result}")
|
||||
List<ReviewDO> selectApprovedResultReviewsFromSubsystem(Long subsystemId, Integer result);
|
||||
|
||||
@Select("SELECT * FROM organize_oa.oa_review WHERE "
|
||||
+ "project_submodule_id = #{subsystemId} AND is_delete = 0")
|
||||
List<ReviewDO> selectReviewFromSubmodule(Long submoduleId);
|
||||
|
|
|
@ -7,6 +7,8 @@ import javax.servlet.http.HttpServletRequest;
|
|||
|
||||
public interface ReviewService {
|
||||
|
||||
BaseResponse getUserReview(Long projectId, HttpServletRequest request);
|
||||
BaseResponse getUserPendingApprovalReview(HttpServletRequest request);
|
||||
|
||||
BaseResponse getUserReview(HttpServletRequest request);
|
||||
|
||||
}
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package com.jsl.oa.services.impl;
|
||||
|
||||
|
||||
import com.jsl.oa.common.constant.ReviewConstants;
|
||||
import com.jsl.oa.dao.ProjectDAO;
|
||||
import com.jsl.oa.dao.ReviewDAO;
|
||||
import com.jsl.oa.dao.UserDAO;
|
||||
|
@ -20,6 +21,8 @@ import org.springframework.stereotype.Service;
|
|||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.Comparator;
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
|
@ -36,7 +39,65 @@ public class ReviewServiceImpl implements ReviewService {
|
|||
|
||||
|
||||
@Override
|
||||
public BaseResponse getUserReview(Long projectId, HttpServletRequest request) {
|
||||
public BaseResponse getUserPendingApprovalReview(HttpServletRequest request) {
|
||||
log.info("\t> 执行 Service 层 ReviewService.getUserPendingApprovalReview 方法");
|
||||
|
||||
//获取用户
|
||||
Long userId = Processing.getAuthHeaderToUserId(request);
|
||||
|
||||
//存储审核数据的数组
|
||||
List<ReviewVO> reviewData = new ArrayList<>();
|
||||
|
||||
//先获取用户为项目负责人的项目列表
|
||||
projectDAO.getProjectByPrincipalUser(userId);
|
||||
|
||||
//先从用户为 项目负责人 的项目中获取对应 审核信息
|
||||
for (ProjectDO projectDO : projectDAO.getProjectByPrincipalUser(userId)) {
|
||||
//查询每个项目下所有的审核信息
|
||||
List<ReviewDO> reviewDOS = reviewMapper.
|
||||
selectApprovedResultReviewFromProject(projectDO.getId(),
|
||||
ReviewConstants.PENDING);
|
||||
//封装VO类
|
||||
reviewData.addAll(encapsulateArrayClass(reviewDOS));
|
||||
}
|
||||
|
||||
//在从用户为 子系统负责人 的项目中获取对应 审核信息
|
||||
for (ProjectWorkDO projectWorkDO : projectDAO.getAllSubsystemByUserId(userId)) {
|
||||
//查询每个项目下状态为2的审核信息
|
||||
List<ReviewDO> reviewDOS = reviewMapper.
|
||||
selectApprovedResultReviewsFromSubsystem(projectWorkDO.getId(),
|
||||
ReviewConstants.PENDING);
|
||||
//封装VO类
|
||||
reviewData.addAll(encapsulateArrayClass(reviewDOS));
|
||||
}
|
||||
|
||||
|
||||
//在从用户为 子模块负责人 的项目中获取对应 审核信息
|
||||
for (ProjectWorkDO projectWorkDO : projectDAO.getAllSubmoduleByUserId(userId)) {
|
||||
//查询每个项目下所有的审核信息
|
||||
List<ReviewDO> reviewDOS = reviewMapper.
|
||||
selectApprovedResultReviewsFromSubsystem(projectWorkDO.getId(),
|
||||
ReviewConstants.PENDING);
|
||||
//封装VO类
|
||||
reviewData.addAll(encapsulateArrayClass(reviewDOS));
|
||||
}
|
||||
|
||||
|
||||
//按照申请时间降序排序
|
||||
Collections.sort(reviewData, new Comparator<ReviewVO>() {
|
||||
@Override
|
||||
public int compare(ReviewVO review1, ReviewVO review2) {
|
||||
return review2.getApplicationTime().compareTo(review1.getApplicationTime());
|
||||
}
|
||||
});
|
||||
|
||||
return ResultUtil.success(reviewData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public BaseResponse getUserReview(HttpServletRequest request) {
|
||||
log.info("\t> 执行 Service 层 ReviewService.getUserReview 方法");
|
||||
|
||||
//获取用户
|
||||
|
@ -76,6 +137,14 @@ public class ReviewServiceImpl implements ReviewService {
|
|||
reviewData.addAll(encapsulateArrayClass(reviewDOS));
|
||||
}
|
||||
|
||||
//按照申请时间降序排序
|
||||
Collections.sort(reviewData, new Comparator<ReviewVO>() {
|
||||
@Override
|
||||
public int compare(ReviewVO review1, ReviewVO review2) {
|
||||
return review2.getApplicationTime().compareTo(review1.getApplicationTime());
|
||||
}
|
||||
});
|
||||
|
||||
return ResultUtil.success(reviewData);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user