子模块/子系统的查询和增加
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit
This commit is contained in:
parent
f29c016405
commit
789eea8d49
|
@ -3,6 +3,7 @@ package com.jsl.oa.controllers;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
||||||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||||
|
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||||
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
||||||
import com.jsl.oa.services.ProjectService;
|
import com.jsl.oa.services.ProjectService;
|
||||||
import com.jsl.oa.utils.BaseResponse;
|
import com.jsl.oa.utils.BaseResponse;
|
||||||
|
@ -54,6 +55,20 @@ public class ProjectController {
|
||||||
return projectService.get(listAll,request,tags,isFinish);
|
return projectService.get(listAll,request,tags,isFinish);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 子模块子系统的查询
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@GetMapping("/project/work/get")
|
||||||
|
public BaseResponse projectWorkGet(@RequestParam(required = false) Integer listAll,
|
||||||
|
@RequestParam(required = false) List<String> tags,
|
||||||
|
@RequestParam(required = false) Integer isFinish,
|
||||||
|
HttpServletRequest request) {
|
||||||
|
log.info("请求接口[GET]: /project/work/get");
|
||||||
|
return projectService.workget(listAll, request, tags, isFinish);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 单个项目的详细
|
* 单个项目的详细
|
||||||
* 项目轮播图
|
* 项目轮播图
|
||||||
|
@ -130,8 +145,6 @@ public class ProjectController {
|
||||||
/**
|
/**
|
||||||
* 项目表进行,项目增加
|
* 项目表进行,项目增加
|
||||||
*
|
*
|
||||||
* @param projectAdd
|
|
||||||
* @param bindingResult
|
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@PostMapping("/project/add")
|
@PostMapping("/project/add")
|
||||||
|
@ -144,6 +157,22 @@ public class ProjectController {
|
||||||
return projectService.projectAdd(request, projectAdd);
|
return projectService.projectAdd(request, projectAdd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 子系统子模块的增加
|
||||||
|
* @param request
|
||||||
|
* @param bindingResult
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@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 projectService.projecWorktAdd(request, projectWorkVO);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目表进行,项目的修改
|
* 项目表进行,项目的修改
|
||||||
*
|
*
|
||||||
|
|
|
@ -5,8 +5,10 @@ import com.jsl.oa.mapper.ProjectMapper;
|
||||||
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
||||||
import com.jsl.oa.model.doData.ProjectDO;
|
import com.jsl.oa.model.doData.ProjectDO;
|
||||||
import com.jsl.oa.model.doData.ProjectUserDO;
|
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.doData.info.ProjectShowDO;
|
||||||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||||
|
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
@ -29,7 +31,12 @@ public class ProjectDAO {
|
||||||
log.info("\t> 执行 DAO 层 ProjectDAO.projectAdd 方法");
|
log.info("\t> 执行 DAO 层 ProjectDAO.projectAdd 方法");
|
||||||
log.info("\t\t> 从 MySQL 获取数据");
|
log.info("\t\t> 从 MySQL 获取数据");
|
||||||
projectMapper.projectAdd(projectAdd);
|
projectMapper.projectAdd(projectAdd);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void projectWorkAdd(ProjectWorkVO projectWorkVO) {
|
||||||
|
log.info("\t> 执行 DAO 层 ProjectDAO.projecWorktAdd 方法");
|
||||||
|
log.info("\t\t> 从 MySQL 获取数据");
|
||||||
|
projectMapper.projectWorkAdd(projectWorkVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void projectEdit(ProjectInfoVO projectEdit) {
|
public void projectEdit(ProjectInfoVO projectEdit) {
|
||||||
|
@ -121,6 +128,22 @@ public class ProjectDAO {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<ProjectWorkDO> workget(Long userId, Integer listAll, List<String> tags, Integer isFinish) {
|
||||||
|
log.info("\t> 执行 DAO 层 ProjectDAO.workget 方法");
|
||||||
|
log.info("\t\t> 从 MySQL 获取数据");
|
||||||
|
if(isFinish != null){
|
||||||
|
return projectMapper.workgetByIsfinish(userId,isFinish);
|
||||||
|
}
|
||||||
|
if(tags != null && !tags.isEmpty()){
|
||||||
|
return projectMapper.workgetByTags(userId,tags);
|
||||||
|
}
|
||||||
|
if(listAll == 0) {
|
||||||
|
return projectMapper.workget(userId);
|
||||||
|
}else {
|
||||||
|
return projectMapper.workget1(userId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public ProjectDO getByName(String name) {
|
public ProjectDO getByName(String name) {
|
||||||
log.info("\t> 执行 DAO 层 ProjectDAO.getByName 方法");
|
log.info("\t> 执行 DAO 层 ProjectDAO.getByName 方法");
|
||||||
log.info("\t\t> 从 MySQL 获取数据");
|
log.info("\t\t> 从 MySQL 获取数据");
|
||||||
|
@ -174,4 +197,6 @@ public class ProjectDAO {
|
||||||
return projectMapper.updateUserForProjectUser(newUid,projectUserDO.getId());
|
return projectMapper.updateUserForProjectUser(newUid,projectUserDO.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,9 @@ package com.jsl.oa.mapper;
|
||||||
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
||||||
import com.jsl.oa.model.doData.ProjectDO;
|
import com.jsl.oa.model.doData.ProjectDO;
|
||||||
import com.jsl.oa.model.doData.ProjectUserDO;
|
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.ProjectInfoVO;
|
||||||
|
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||||
import org.apache.ibatis.annotations.*;
|
import org.apache.ibatis.annotations.*;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
@ -19,6 +21,11 @@ public interface ProjectMapper {
|
||||||
",#{completeTime},#{deadline},#{status},#{isFinish})")
|
",#{completeTime},#{deadline},#{status},#{isFinish})")
|
||||||
void projectAdd(ProjectInfoVO projectAdd);
|
void projectAdd(ProjectInfoVO projectAdd);
|
||||||
|
|
||||||
|
@Insert("insert into organize_oa.oa_project_work (project_id, pid, name, principal_id," +
|
||||||
|
" work_load, description, cycle, complete_time, type, is_finish,status) " +
|
||||||
|
"value (#{projectId},#{pid},#{name},#{principalId},#{workLoad}," +
|
||||||
|
"#{description},#{cycle},#{completeTime},#{type},#{isFinish},#{status})")
|
||||||
|
void projectWorkAdd(ProjectWorkVO projectWorkVO);
|
||||||
|
|
||||||
void projectEdit(ProjectInfoVO projectEdit);
|
void projectEdit(ProjectInfoVO projectEdit);
|
||||||
|
|
||||||
|
@ -51,7 +58,7 @@ public interface ProjectMapper {
|
||||||
@Select("select * from organize_oa.oa_project where is_delete=false and status =1 and principal_id=#{userId}")
|
@Select("select * from organize_oa.oa_project where is_delete=false and status =1 and principal_id=#{userId}")
|
||||||
List<ProjectDO> get(Long userId);
|
List<ProjectDO> get(Long userId);
|
||||||
|
|
||||||
@Select("select * from organize_oa.oa_project where status =1 and status=1 and principal_id=#{userId}")
|
@Select("select * from organize_oa.oa_project where status =1 and is_delete =true and principal_id=#{userId}")
|
||||||
List<ProjectDO> get1(Long userId);
|
List<ProjectDO> get1(Long userId);
|
||||||
|
|
||||||
@Select("select * from organize_oa.oa_project where name=#{name}")
|
@Select("select * from organize_oa.oa_project where name=#{name}")
|
||||||
|
@ -77,4 +84,17 @@ public interface ProjectMapper {
|
||||||
|
|
||||||
@Update("UPDATE organize_oa.oa_project_user SET uid = #{uid} , updated_at = CURRENT_TIMESTAMP WHERE id = #{id}")
|
@Update("UPDATE organize_oa.oa_project_user SET uid = #{uid} , updated_at = CURRENT_TIMESTAMP WHERE id = #{id}")
|
||||||
boolean updateUserForProjectUser(Long uid, Long id);
|
boolean updateUserForProjectUser(Long uid, Long id);
|
||||||
|
|
||||||
|
@Select("select * from organize_oa.oa_project_work where is_finish=#{isFinish} and is_delete=false and principal_id =#{userId}")
|
||||||
|
List<ProjectWorkDO> workgetByIsfinish(Long userId, Integer isFinish);
|
||||||
|
|
||||||
|
List<ProjectWorkDO> workgetByTags(Long userId, List<String> tags);
|
||||||
|
|
||||||
|
@Select("select * from organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId}")
|
||||||
|
List<ProjectWorkDO> workget(Long userId);
|
||||||
|
|
||||||
|
@Select("select * from organize_oa.oa_project_work where is_delete =true and status=1 and principal_id=#{userId}")
|
||||||
|
List<ProjectWorkDO> workget1(Long userId);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,8 +26,8 @@ public class ProjectDO {
|
||||||
private String name;
|
private String name;
|
||||||
private String file;
|
private String file;
|
||||||
private String description;
|
private String description;
|
||||||
private Integer is_delete;
|
private Integer isDelete;
|
||||||
private Integer is_finish;
|
private Integer isFinish;
|
||||||
private boolean status;
|
private boolean status;
|
||||||
private Timestamp beginTime;
|
private Timestamp beginTime;
|
||||||
private Timestamp completeTime;
|
private Timestamp completeTime;
|
||||||
|
|
|
@ -3,6 +3,7 @@ package com.jsl.oa.services;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
||||||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||||
|
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||||
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
||||||
import com.jsl.oa.utils.BaseResponse;
|
import com.jsl.oa.utils.BaseResponse;
|
||||||
|
|
||||||
|
@ -37,4 +38,8 @@ public interface ProjectService {
|
||||||
BaseResponse editProjectCutting(HttpServletRequest request, ProjectCuttingEditVO projectCuttingEditVO);
|
BaseResponse editProjectCutting(HttpServletRequest request, ProjectCuttingEditVO projectCuttingEditVO);
|
||||||
|
|
||||||
BaseResponse projectToOtherUserForCutting(HttpServletRequest request, Long oldUid, Long pid, Long newUid);
|
BaseResponse projectToOtherUserForCutting(HttpServletRequest request, Long oldUid, Long pid, Long newUid);
|
||||||
|
|
||||||
|
BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish);
|
||||||
|
|
||||||
|
BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO);
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,11 +6,13 @@ import com.jsl.oa.dao.UserDAO;
|
||||||
import com.jsl.oa.mapper.RoleMapper;
|
import com.jsl.oa.mapper.RoleMapper;
|
||||||
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
import com.jsl.oa.model.doData.ProjectCuttingDO;
|
||||||
import com.jsl.oa.model.doData.ProjectDO;
|
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.UserDO;
|
||||||
import com.jsl.oa.model.doData.info.ProjectShowDO;
|
import com.jsl.oa.model.doData.info.ProjectShowDO;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
import com.jsl.oa.model.voData.ProjectCuttingAddVO;
|
||||||
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
import com.jsl.oa.model.voData.ProjectCuttingEditVO;
|
||||||
import com.jsl.oa.model.voData.ProjectInfoVO;
|
import com.jsl.oa.model.voData.ProjectInfoVO;
|
||||||
|
import com.jsl.oa.model.voData.ProjectWorkVO;
|
||||||
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
import com.jsl.oa.model.voData.business.info.ProjectShowVO;
|
||||||
import com.jsl.oa.services.ProjectService;
|
import com.jsl.oa.services.ProjectService;
|
||||||
import com.jsl.oa.utils.BaseResponse;
|
import com.jsl.oa.utils.BaseResponse;
|
||||||
|
@ -21,7 +23,6 @@ import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
|
@ -56,6 +57,13 @@ public class ProjectServiceImpl implements ProjectService {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO) {
|
||||||
|
log.info("\t> 执行 Service 层 ProjectService.projectWorkAdd 方法");
|
||||||
|
projectDAO.projectWorkAdd(projectWorkVO);
|
||||||
|
return ResultUtil.success("添加成功");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@CheckUserHasPermission("project.edit")
|
@CheckUserHasPermission("project.edit")
|
||||||
public BaseResponse projectEdit(HttpServletRequest request, @NotNull ProjectInfoVO projectEdit) {
|
public BaseResponse projectEdit(HttpServletRequest request, @NotNull ProjectInfoVO projectEdit) {
|
||||||
|
@ -186,6 +194,7 @@ public class ProjectServiceImpl implements ProjectService {
|
||||||
@Override
|
@Override
|
||||||
public BaseResponse get(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish) {
|
public BaseResponse get(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish) {
|
||||||
log.info("\t> 执行 Service 层 ProjectService.get 方法");
|
log.info("\t> 执行 Service 层 ProjectService.get 方法");
|
||||||
|
|
||||||
//获取用户
|
//获取用户
|
||||||
Long userId= Processing.getAuthHeaderToUserId(request);
|
Long userId= Processing.getAuthHeaderToUserId(request);
|
||||||
//根据状态查询
|
//根据状态查询
|
||||||
|
@ -211,6 +220,36 @@ public class ProjectServiceImpl implements ProjectService {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish) {
|
||||||
|
log.info("\t> 执行 Service 层 ProjectService.workget 方法");
|
||||||
|
|
||||||
|
//获取用户
|
||||||
|
Long userId= Processing.getAuthHeaderToUserId(request);
|
||||||
|
//根据状态查询
|
||||||
|
if(isFinish != null){
|
||||||
|
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId,listAll,tags,isFinish);
|
||||||
|
return ResultUtil.success(projectWorkDOList);
|
||||||
|
}
|
||||||
|
//根据标签查询
|
||||||
|
if(tags != null && !tags.isEmpty()){
|
||||||
|
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId,listAll,tags,isFinish);
|
||||||
|
return ResultUtil.success(projectWorkDOList);
|
||||||
|
}
|
||||||
|
|
||||||
|
//判断是否是老师(项目负责人)
|
||||||
|
if(listAll != null && Processing.checkUserIsTeacher(request,roleMapper)){
|
||||||
|
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId,listAll,tags,isFinish);
|
||||||
|
return ResultUtil.success(projectWorkDOList);
|
||||||
|
}else {
|
||||||
|
listAll = 0;
|
||||||
|
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId,listAll,tags,isFinish);
|
||||||
|
return ResultUtil.success(projectWorkDOList);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public BaseResponse getByName(String name) {
|
public BaseResponse getByName(String name) {
|
||||||
log.info("\t> 执行 Service 层 ProjectService.getByName 方法");
|
log.info("\t> 执行 Service 层 ProjectService.getByName 方法");
|
||||||
|
@ -284,4 +323,6 @@ public class ProjectServiceImpl implements ProjectService {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,4 +56,13 @@
|
||||||
</foreach>
|
</foreach>
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="workgetByTags" resultType="com.jsl.oa.model.doData.ProjectWorkDO">
|
||||||
|
select * from organize_oa.oa_project_work where
|
||||||
|
<foreach collection="tags" item="tag" separator=",'%') and json_extract(tags,'$.tags')like concat('%',"
|
||||||
|
open="json_extract(tags,'$.tags')like concat('%',"
|
||||||
|
close=",'%') and is_delete=false and principal_id=#{userId}">
|
||||||
|
#{tag}
|
||||||
|
</foreach>
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
Loading…
Reference in New Issue
Block a user