子系统子模块
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit

This commit is contained in:
176yunxuan 2024-03-14 21:43:27 +08:00
parent 3101ed371b
commit 06c3be33e2
6 changed files with 47 additions and 27 deletions

View File

@ -73,9 +73,10 @@ public class ProjectController {
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,
HttpServletRequest request) {
log.info("请求接口[GET]: /project/work/get");
return projectService.workget(listAll, request, tags, isFinish);
return projectService.workget(listAll, request, tags, isFinish,is);
}
/**

View File

@ -5,7 +5,6 @@ import com.jsl.oa.mapper.ProjectMapper;
import com.jsl.oa.model.doData.ProjectCuttingDO;
import com.jsl.oa.model.doData.ProjectDO;
import com.jsl.oa.model.doData.ProjectUserDO;
import com.jsl.oa.model.doData.ProjectWorkDO;
import com.jsl.oa.model.doData.info.ProjectShowDO;
import com.jsl.oa.model.voData.ProjectEditVO;
import com.jsl.oa.model.voData.ProjectInfoVO;
@ -142,19 +141,19 @@ public class ProjectDAO {
}
}
public List<ProjectDO> workget(Long userId, Integer listAll, List<String> tags, List<Integer> isFinish) {
public List<ProjectDO> workget(Long userId, Integer listAll, List<String> tags, List<Integer> isFinish, Integer is) {
log.info("\t> 执行 DAO 层 ProjectDAO.workget 方法");
log.info("\t\t> 从 MySQL 获取数据");
if(isFinish != null && !isFinish.isEmpty()){
return projectMapper.workgetByIsfinish(userId,isFinish);
return projectMapper.workgetByIsfinish(userId,isFinish,is);
}
if(tags != null && !tags.isEmpty()){
return projectMapper.workgetByTags(userId,tags);
return projectMapper.workgetByTags(userId,tags,is);
}
if(listAll == 0) {
return projectMapper.workget(userId);
return projectMapper.workget(userId,is);
}else {
return projectMapper.workget1(userId);
return projectMapper.workget1(userId,is);
}
}

View File

@ -3,7 +3,6 @@ package com.jsl.oa.mapper;
import com.jsl.oa.model.doData.ProjectCuttingDO;
import com.jsl.oa.model.doData.ProjectDO;
import com.jsl.oa.model.doData.ProjectUserDO;
import com.jsl.oa.model.doData.ProjectWorkDO;
import com.jsl.oa.model.voData.ProjectInfoVO;
import com.jsl.oa.model.voData.ProjectWorkVO;
import org.apache.ibatis.annotations.*;
@ -87,16 +86,16 @@ 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);
List<ProjectDO> workgetByIsfinish(Long userId, List<Integer> isFinish, Integer is);
List<ProjectDO> workgetByTags(Long userId, List<String> tags);
List<ProjectDO> workgetByTags(Long userId, List<String> tags, Integer is);
@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)")
List<ProjectDO> workget(Long userId);
//@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)")
List<ProjectDO> workget(Long userId, Integer is);
@Select("select * from organize_oa.oa_project_work where status=1 and principal_id=#{userId}")
List<ProjectDO> workget1(Long userId);
//@Select("select * from organize_oa.oa_project_work where status=1 and principal_id=#{userId}")
List<ProjectDO> workget1(Long userId, Integer is);
List<ProjectDO> tget(Integer id);

View File

@ -36,7 +36,7 @@ public interface ProjectService {
BaseResponse projectToOtherUserForCutting(HttpServletRequest request, Long oldUid, Long pid, Long newUid);
BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish);
BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish, Integer is);
BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO);

View File

@ -2,15 +2,12 @@ package com.jsl.oa.services.impl;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.jsl.oa.annotations.CheckUserHasPermission;
import com.jsl.oa.dao.ProjectDAO;
import com.jsl.oa.dao.UserDAO;
import com.jsl.oa.mapper.RoleMapper;
import com.jsl.oa.model.doData.ProjectCuttingDO;
import com.jsl.oa.model.doData.ProjectDO;
import com.jsl.oa.model.doData.ProjectWorkDO;
import com.jsl.oa.model.doData.UserDO;
import com.jsl.oa.model.doData.info.ProjectShowDO;
import com.jsl.oa.model.voData.*;
@ -272,29 +269,29 @@ public class ProjectServiceImpl implements ProjectService {
}
@Override
public BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish) {
public BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish, Integer is) {
log.info("\t> 执行 Service 层 ProjectService.workget 方法");
//获取用户
Long userId = Processing.getAuthHeaderToUserId(request);
//根据状态查询
if (isFinish != null && !isFinish.isEmpty()) {
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
return ResultUtil.success(projectDOList);
}
//根据标签查询
if (tags != null && !tags.isEmpty()) {
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
return ResultUtil.success(projectDOList);
}
//判断是否是老师(项目负责人)
if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) {
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
return ResultUtil.success(projectDOList);
} else {
listAll = 0;
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish,is);
return ResultUtil.success(projectDOList);
}
}

View File

@ -63,9 +63,15 @@
</foreach>
</select>
<select id="workgetByTags" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where id in(select project_id from organize_oa.oa_project_work
where is_delete=false and (principal_id=#{userId} or principal_id is null) and project_id in(
select * from organize_oa.oa_project where
<if test="is != null">
(principal_id = #{userId} and is_delete=false) or
</if>
id in(select project_id from organize_oa.oa_project_work
where is_delete=false and (principal_id=#{userId} ) and project_id in(
select id from organize_oa.oa_project where
<foreach collection="tags" item="tag" separator=",'%') or json_extract(tags,'$.tags')like concat('%',"
open="json_extract(tags,'$.tags')like concat('%',"
@ -76,12 +82,30 @@
</select>
<select id="workgetByIsfinish" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where id in(select project_id from organize_oa.oa_project_work where is_delete=false and (principal_id=#{userId} or principal_id is null) and is_finish in
select * from organize_oa.oa_project where
<if test="is != null">
(principal_id = #{userId} and is_delete=false) or
</if>
id in(select project_id from organize_oa.oa_project_work where is_delete=false and (principal_id=#{userId}) and is_finish in
<foreach collection="isFinish" item="Finish" separator="," open="(" close="))">
#{Finish}
</foreach>
</select>
<select id="workget" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where
<if test="is != null">
(principal_id = #{userId} and is_delete=false) or
</if>
id in(select project_id from organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId})
</select>
<select id="workget1" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project_work where status=1 and principal_id=#{userId}
</select>
<select id="tget" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where is_delete=false and status=1
<if test="id != null">