Merge branch 'feature'

# Conflicts:
#	src/main/java/com/jsl/oa/dao/ProjectDAO.java
This commit is contained in:
176yunxuan 2024-03-13 13:39:22 +08:00
commit 820a46c9ef
6 changed files with 83 additions and 32 deletions

View File

@ -42,9 +42,11 @@ public class ProjectController {
* @return * @return
*/ */
@GetMapping("/project/get/custom") @GetMapping("/project/get/custom")
public BaseResponse projectGetCustom(@RequestParam(required = false) Integer id){ public BaseResponse projectGetCustom(@RequestParam(required = false) Integer id,
@RequestParam(required = false) List<String> tags,
@RequestParam(required = false) List<Integer> isFinish){
log.info("请求接口[GET]: /project/all/get"); log.info("请求接口[GET]: /project/all/get");
return projectService.tget(id); return projectService.tget(id,tags,isFinish);
} }
@ -56,7 +58,7 @@ public class ProjectController {
@GetMapping("/project/get") @GetMapping("/project/get")
public BaseResponse projectGet(@RequestParam(required = false) Integer listAll, public BaseResponse projectGet(@RequestParam(required = false) Integer listAll,
@RequestParam(required = false) List<String> tags, @RequestParam(required = false) List<String> tags,
@RequestParam(required = false) Integer isFinish, @RequestParam(required = false) List<Integer> isFinish,
HttpServletRequest request) { HttpServletRequest request) {
log.info("请求接口[GET]: /project/get"); log.info("请求接口[GET]: /project/get");
return projectService.get(listAll,request,tags,isFinish); return projectService.get(listAll,request,tags,isFinish);
@ -70,7 +72,7 @@ public class ProjectController {
@GetMapping("/project/work/get") @GetMapping("/project/work/get")
public BaseResponse projectWorkGet(@RequestParam(required = false) Integer listAll, public BaseResponse projectWorkGet(@RequestParam(required = false) Integer listAll,
@RequestParam(required = false) List<String> tags, @RequestParam(required = false) List<String> tags,
@RequestParam(required = false) Integer isFinish, @RequestParam(required = false) List<Integer> isFinish,
HttpServletRequest request) { HttpServletRequest request) {
log.info("请求接口[GET]: /project/work/get"); log.info("请求接口[GET]: /project/work/get");
return projectService.workget(listAll, request, tags, isFinish); return projectService.workget(listAll, request, tags, isFinish);

View File

@ -212,11 +212,8 @@ public class ProjectDAO {
} }
public List<ProjectDO> tget(Integer id) { public List<ProjectDO> tget(Integer id) {
log.info("DAO层"); log.info("DAO层");
return projectMapper.tget(id); return projectMapper.tget(id);
} }
} }

View File

@ -49,15 +49,16 @@ public interface ProjectMapper {
//@Select("select * from organize_oa.oa_project where json_extract(tags,'$.tags')" + //@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,Integer isFinish); //@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>getByTags(Long userId,List<String> tags); List<ProjectDO>getByTags(Long userId,List<String> tags);
@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 is_delete =true and principal_id=#{userId}") @Select("select * from organize_oa.oa_project where status =1 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}")
@ -84,17 +85,22 @@ 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); //@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, List<Integer> isFinish);
List<ProjectWorkDO> workgetByTags(Long userId, List<String> tags); 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}") @Select("select * from organize_oa.oa_project_work where is_delete=false and status =1 and principal_id=#{userId}")
List<ProjectWorkDO> workget(Long 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}") @Select("select * from organize_oa.oa_project_work where status=1 and principal_id=#{userId}")
List<ProjectWorkDO> workget1(Long userId); List<ProjectWorkDO> workget1(Long userId);
//@Select("select * from organize_oa.oa_project where is_delete=false and status=1")
List<ProjectDO> tget(Integer id); List<ProjectDO> tget(Integer id);
List<ProjectDO> tgetByIsfinish(List<Integer> isFinish);
List<ProjectDO> tgetBytags(List<String> tags);
} }

View File

@ -24,7 +24,7 @@ public interface ProjectService {
BaseResponse editHeader(HttpServletRequest request, ProjectShowVO projectShowVO, Integer id); BaseResponse editHeader(HttpServletRequest request, ProjectShowVO projectShowVO, Integer id);
BaseResponse get(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish); BaseResponse get(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish);
BaseResponse getByName(String name); BaseResponse getByName(String name);
@ -36,9 +36,9 @@ public interface ProjectService {
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 workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish);
BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO); BaseResponse projecWorktAdd(HttpServletRequest request, ProjectWorkVO projectWorkVO);
BaseResponse tget(Integer id); BaseResponse tget(Integer id, List<String> tags, List<Integer> isFinish);
} }

View File

@ -61,9 +61,20 @@ public class ProjectServiceImpl implements ProjectService {
} }
@Override @Override
public BaseResponse tget(Integer id) { public BaseResponse tget(Integer id, List<String> tags, List<Integer> isFinish) {
log.info("\t> 执行 Service 层 ProjectService.tget 方法"); log.info("\t> 执行 Service 层 ProjectService.tget 方法");
List<ProjectDO> projectDOList = projectDAO.tget(id); //根据状态查询
if (isFinish != null && !isFinish.isEmpty()) {
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
return ResultUtil.success(projectDOList);
}
//根据标签查询
if (tags != null && !tags.isEmpty()) {
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
return ResultUtil.success(projectDOList);
}
List<ProjectDO> projectDOList = projectDAO.tget(id,isFinish,tags);
return ResultUtil.success(projectDOList); return ResultUtil.success(projectDOList);
} }
@ -203,13 +214,13 @@ 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, List<Integer> isFinish) {
log.info("\t> 执行 Service 层 ProjectService.get 方法"); log.info("\t> 执行 Service 层 ProjectService.get 方法");
//获取用户 //获取用户
Long userId = Processing.getAuthHeaderToUserId(request); Long userId = Processing.getAuthHeaderToUserId(request);
//根据状态查询 //根据状态查询
if (isFinish != null) { if (isFinish != null && !isFinish.isEmpty()) {
List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish); List<ProjectDO> projectDOList = projectDAO.get(userId, listAll, tags, isFinish);
return ResultUtil.success(projectDOList); return ResultUtil.success(projectDOList);
} }
@ -232,13 +243,13 @@ public class ProjectServiceImpl implements ProjectService {
} }
@Override @Override
public BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, Integer isFinish) { public BaseResponse workget(Integer listAll, HttpServletRequest request, List<String> tags, List<Integer> isFinish) {
log.info("\t> 执行 Service 层 ProjectService.workget 方法"); log.info("\t> 执行 Service 层 ProjectService.workget 方法");
//获取用户 //获取用户
Long userId = Processing.getAuthHeaderToUserId(request); Long userId = Processing.getAuthHeaderToUserId(request);
//根据状态查询 //根据状态查询
if (isFinish != null) { if (isFinish != null && !isFinish.isEmpty()) {
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish); List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish);
return ResultUtil.success(projectWorkDOList); return ResultUtil.success(projectWorkDOList);
} }

View File

@ -48,22 +48,39 @@
</update> </update>
<select id="getByTags" resultType="com.jsl.oa.model.doData.ProjectDO"> <select id="getByTags" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where select * from organize_oa.oa_project where is_delete=false and principal_id=#{userId} and
<foreach collection="tags" item="tag" separator=",'%') and json_extract(tags,'$.tags')like concat('%'," <foreach collection="tags" item="tag" separator=",'%') or json_extract(tags,'$.tags')like concat('%',"
open="json_extract(tags,'$.tags')like concat('%'," open="json_extract(tags,'$.tags')like concat('%',"
close=",'%') and is_delete=false and principal_id=#{userId}"> close=",'%')">
#{tag} #{tag}
</foreach> </foreach>
</select> </select>
<select id="workgetByTags" resultType="com.jsl.oa.model.doData.ProjectWorkDO"> <select id="getByIsfinish" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project_work where select * from organize_oa.oa_project where is_delete=false and principal_id =#{userId} and is_finish in
<foreach collection="tags" item="tag" separator=",'%') and json_extract(tags,'$.tags')like concat('%'," <foreach collection="isFinish" item="Finish" separator="," open="(" close=")">
open="json_extract(tags,'$.tags')like concat('%'," #{Finish}
close=",'%') and is_delete=false and principal_id=#{userId}">
#{tag}
</foreach> </foreach>
</select> </select>
<select id="workgetByTags" resultType="com.jsl.oa.model.doData.ProjectWorkDO">
select * 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('%',"
close=",'%'))">
#{tag}
</foreach>
</select>
<select id="workgetByIsfinish" resultType="com.jsl.oa.model.doData.ProjectWorkDO">
select * 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="tget" resultType="com.jsl.oa.model.doData.ProjectDO"> <select id="tget" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where is_delete=false select * from organize_oa.oa_project where is_delete=false
<if test="id != null"> <if test="id != null">
@ -71,4 +88,22 @@
</if> </if>
</select> </select>
<select id="tgetBytags" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where is_delete=false and
<foreach collection="tags" item="tag" separator=",'%') or json_extract(tags,'$.tags')like concat('%',"
open="json_extract(tags,'$.tags')like concat('%',"
close=",'%')">
#{tag}
</foreach>
</select>
<select id="tgetByIsfinish" resultType="com.jsl.oa.model.doData.ProjectDO">
select * from organize_oa.oa_project where is_delete=false and is_finish in
<foreach collection="isFinish" item="Finish" separator="," open="(" close=")">
#{Finish}
</foreach>
</select>
</mapper> </mapper>