子系统子模块
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
9826a86b20
commit
fb8336d44b
46
src/main/java/com/jsl/oa/controllers/ModuleContorller.java
Normal file
46
src/main/java/com/jsl/oa/controllers/ModuleContorller.java
Normal file
|
@ -0,0 +1,46 @@
|
|||
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.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
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);
|
||||
}
|
||||
|
||||
}
|
|
@ -65,7 +65,7 @@ public class ProjectController {
|
|||
}
|
||||
|
||||
/**
|
||||
* 子模块子系统的查询
|
||||
* 我管理的查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
|
|
15
src/main/java/com/jsl/oa/dao/ModuleDAO.java
Normal file
15
src/main/java/com/jsl/oa/dao/ModuleDAO.java
Normal file
|
@ -0,0 +1,15 @@
|
|||
package com.jsl.oa.dao;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.jsl.oa.mapper.ModuleMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Slf4j
|
||||
@Component
|
||||
@RequiredArgsConstructor
|
||||
public class ModuleDAO {
|
||||
private final ModuleMapper moduleMapper;
|
||||
private final Gson gson;
|
||||
}
|
|
@ -135,7 +135,7 @@ public class ProjectDAO {
|
|||
}
|
||||
}
|
||||
|
||||
public List<ProjectWorkDO> 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) {
|
||||
log.info("\t> 执行 DAO 层 ProjectDAO.workget 方法");
|
||||
log.info("\t\t> 从 MySQL 获取数据");
|
||||
if(isFinish != null && !isFinish.isEmpty()){
|
||||
|
|
25
src/main/java/com/jsl/oa/mapper/ModuleMapper.java
Normal file
25
src/main/java/com/jsl/oa/mapper/ModuleMapper.java
Normal file
|
@ -0,0 +1,25 @@
|
|||
package com.jsl.oa.mapper;
|
||||
|
||||
import com.jsl.oa.model.doData.ProjectWorkDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper
|
||||
public interface ModuleMapper {
|
||||
|
||||
|
||||
|
||||
//@Select("select * from organize_oa.oa_project_work where project_id=#{projectId} and principal_id=#{userId} and type=0")
|
||||
List<ProjectWorkDO> getByProjectId(Integer projectId, Long userId,int is);
|
||||
|
||||
//@Select("select * from organize_oa.oa_project_work where pid=#{sysId} and type=1")
|
||||
List<ProjectWorkDO> getBySysId(Integer sysId, Long userId,int is);
|
||||
|
||||
@Select("select principal_id from organize_oa.oa_project where id=#{projectId}")
|
||||
Long getPidByProjectid(Integer projectId);
|
||||
|
||||
@Select("select principal_id from organize_oa.oa_project_work where id=#{sysId}")
|
||||
Long getPidBySysid(Integer sysId);
|
||||
}
|
|
@ -87,15 +87,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<ProjectWorkDO> workgetByIsfinish(Long userId, List<Integer> isFinish);
|
||||
List<ProjectDO> workgetByIsfinish(Long userId, List<Integer> isFinish);
|
||||
|
||||
List<ProjectWorkDO> workgetByTags(Long userId, List<String> tags);
|
||||
List<ProjectDO> 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 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_work where status=1 and principal_id=#{userId}")
|
||||
List<ProjectWorkDO> workget1(Long userId);
|
||||
List<ProjectDO> workget1(Long userId);
|
||||
|
||||
|
||||
List<ProjectDO> tget(Integer id);
|
||||
|
|
14
src/main/java/com/jsl/oa/services/ModuleService.java
Normal file
14
src/main/java/com/jsl/oa/services/ModuleService.java
Normal file
|
@ -0,0 +1,14 @@
|
|||
package com.jsl.oa.services;
|
||||
|
||||
import com.jsl.oa.utils.BaseResponse;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
|
||||
public interface ModuleService {
|
||||
BaseResponse getByProjectId(Integer projectId, HttpServletRequest request);
|
||||
|
||||
BaseResponse getBySysId(Integer sysId, HttpServletRequest request);
|
||||
}
|
|
@ -0,0 +1,62 @@
|
|||
package com.jsl.oa.services.impl;
|
||||
|
||||
import com.jsl.oa.dao.ModuleDAO;
|
||||
import com.jsl.oa.dao.UserDAO;
|
||||
import com.jsl.oa.mapper.ModuleMapper;
|
||||
import com.jsl.oa.mapper.RoleMapper;
|
||||
import com.jsl.oa.model.doData.ProjectWorkDO;
|
||||
import com.jsl.oa.services.ModuleService;
|
||||
import com.jsl.oa.utils.BaseResponse;
|
||||
import com.jsl.oa.utils.Processing;
|
||||
import com.jsl.oa.utils.ResultUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.xml.transform.Result;
|
||||
import java.util.List;
|
||||
|
||||
@Slf4j
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class ModuleServiceImpl implements ModuleService {
|
||||
private final RoleMapper roleMapper;
|
||||
private final ModuleDAO moduleDAO;
|
||||
private final ModuleMapper moduleMapper;
|
||||
private final UserDAO userDAO;
|
||||
|
||||
@Override
|
||||
public BaseResponse getByProjectId(Integer projectId, HttpServletRequest request) {
|
||||
log.info("projectService");
|
||||
//获取用户id
|
||||
Long userId = Processing.getAuthHeaderToUserId(request);
|
||||
//获取项目负责人id
|
||||
Long pid = moduleMapper.getPidByProjectid(projectId);
|
||||
//判断是否是项目负责人
|
||||
int is = 1;
|
||||
if(!pid.equals(userId)){
|
||||
is = 0;
|
||||
}
|
||||
|
||||
List<ProjectWorkDO> projectWorkDOList= moduleMapper.getByProjectId(projectId,userId,is);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BaseResponse getBySysId(Integer sysId, HttpServletRequest request) {
|
||||
log.info("SysService");
|
||||
//获取用户id
|
||||
Long userId = Processing.getAuthHeaderToUserId(request);
|
||||
//获取子系统负责人id
|
||||
Long pid = moduleMapper.getPidBySysid(sysId);
|
||||
//判断是否是子系统负责人
|
||||
int is = 1;
|
||||
if(!pid.equals(userId)){
|
||||
is = 0;
|
||||
}
|
||||
|
||||
List<ProjectWorkDO> projectWorkDOList = moduleMapper.getBySysId(sysId,userId,is);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
}
|
||||
}
|
|
@ -250,23 +250,23 @@ public class ProjectServiceImpl implements ProjectService {
|
|||
Long userId = Processing.getAuthHeaderToUserId(request);
|
||||
//根据状态查询
|
||||
if (isFinish != null && !isFinish.isEmpty()) {
|
||||
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectDOList);
|
||||
}
|
||||
//根据标签查询
|
||||
if (tags != null && !tags.isEmpty()) {
|
||||
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectDOList);
|
||||
}
|
||||
|
||||
//判断是否是老师(项目负责人)
|
||||
if (listAll != null && Processing.checkUserIsTeacher(request, roleMapper)) {
|
||||
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectDOList);
|
||||
} else {
|
||||
listAll = 0;
|
||||
List<ProjectWorkDO> projectWorkDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectWorkDOList);
|
||||
List<ProjectDO> projectDOList = projectDAO.workget(userId, listAll, tags, isFinish);
|
||||
return ResultUtil.success(projectDOList);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
21
src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml
Normal file
21
src/main/resources/com/jsl/oa/mapper/ModuleMapper.xml
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
|
||||
<mapper namespace="com.jsl.oa.mapper.ModuleMapper">
|
||||
|
||||
<select id="getByProjectId" resultType="com.jsl.oa.model.doData.ProjectWorkDO">
|
||||
select * from organize_oa.oa_project_work where project_id=#{projectId} and type=0
|
||||
<if test="is != 1 ">
|
||||
and principal_id=#{userId}
|
||||
</if>
|
||||
</select>
|
||||
|
||||
<select id="getBySysId" resultType="com.jsl.oa.model.doData.ProjectWorkDO">
|
||||
select * from organize_oa.oa_project_work where pid=#{sysId} and type=1
|
||||
<if test="is != 1 ">
|
||||
and principal_id=#{userId}
|
||||
</if>
|
||||
</select>
|
||||
</mapper>
|
|
@ -63,20 +63,20 @@
|
|||
</foreach>
|
||||
</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="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 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=",'%'))">
|
||||
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=")">
|
||||
<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
|
||||
<foreach collection="isFinish" item="Finish" separator="," open="(" close="))">
|
||||
#{Finish}
|
||||
</foreach>
|
||||
</select>
|
||||
|
|
Loading…
Reference in New Issue
Block a user