/project/getwork/id接口增加负责人id返回信息;/module/get/min新增负责人名称与子系统名称返回信息
Some checks failed
JslGroup/JslDeveloper/JSL_OrganizeInternalOA/pipeline/head There was a failure building this commit

This commit is contained in:
xiangZr-hhh 2024-03-17 17:11:45 +08:00
parent 6c9a81ebf7
commit da70993593
5 changed files with 75 additions and 9 deletions

View File

@ -5,6 +5,7 @@ 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;
@ -239,5 +240,9 @@ public class ProjectDAO {
return projectMapper.tget(id);
}
public ProjectWorkDO getProjectWorkerById(Long id){
return projectMapper.getProjectWorkById(id);
}
}

View File

@ -111,9 +111,13 @@ public interface ProjectMapper {
@Select("select * from organize_oa.oa_project_work where id=#{id}")
ProjectWorkSimpleVO getWorkById(Integer id);
@Select("select principal_id from organize_oa.oa_project_work where id=#{pid}")
Long getPirIdbyWorkid(Long pid);
@Select("select principal_id from organize_oa.oa_project_work where id=#{id}")
Long getPid(Integer id);
@Select("select * from organize_oa.oa_project_work where id=#{id}")
ProjectWorkDO getProjectWorkById(Long id);
}

View File

@ -0,0 +1,35 @@
package com.jsl.oa.model.voData;
import lombok.Data;
import lombok.experimental.Accessors;
import java.sql.Timestamp;
/**
* 总体描述
*
* 在projectWorkDO上新增了负责人principalUser子系统名称childSystemName
*/
@Data
@Accessors(chain = true)
public class ProjectWorkAndNameVO {
private Long id;
private Long pid;
private String childSystemName;
private Long projectId;
private Long principalId;
private String principalUser;
private Integer cycle;
private Integer workLoad;
private Integer type;
private String name;
private String description;
private Integer isDelete;
private Integer isFinish;
private boolean status;
private Timestamp beginTime;
private Timestamp completeTime;
}

View File

@ -11,6 +11,7 @@ import java.sql.Timestamp;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ProjectWorkSimpleVO {
private String name;
private Long principalId;
private String principalUser;
private Integer isFinish;
private String description;

View File

@ -1,10 +1,16 @@
package com.jsl.oa.services.impl;
import ch.qos.logback.core.joran.util.beans.BeanUtil;
import com.jsl.oa.dao.ModuleDAO;
import com.jsl.oa.dao.ProjectDAO;
import com.jsl.oa.dao.UserDAO;
import com.jsl.oa.mapper.ModuleMapper;
import com.jsl.oa.mapper.RoleMapper;
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.voData.ProjectWorkAndNameVO;
import com.jsl.oa.model.voData.ProjectWorkVO;
import com.jsl.oa.services.ModuleService;
import com.jsl.oa.utils.BaseResponse;
import com.jsl.oa.utils.ErrorCode;
@ -16,6 +22,7 @@ import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import javax.xml.transform.Result;
import java.util.ArrayList;
import java.util.List;
@Slf4j
@ -24,6 +31,7 @@ import java.util.List;
public class ModuleServiceImpl implements ModuleService {
private final RoleMapper roleMapper;
private final ModuleDAO moduleDAO;
private final ProjectDAO projectDAO;
private final ModuleMapper moduleMapper;
private final UserDAO userDAO;
@ -36,12 +44,12 @@ public class ModuleServiceImpl implements ModuleService {
Long pid = moduleMapper.getPidByProjectid(projectId);
//判断是否是项目负责人
int is = 1;
if(!pid.equals(userId)){
if (!pid.equals(userId)) {
log.info("不是负责人");
is = 0;
}
List<ProjectWorkDO> projectWorkDOList= moduleMapper.getByProjectId(projectId,userId,is);
List<ProjectWorkDO> projectWorkDOList = moduleMapper.getByProjectId(projectId, userId, is);
return ResultUtil.success(projectWorkDOList);
}
@ -56,12 +64,25 @@ public class ModuleServiceImpl implements ModuleService {
Long prid = moduleMapper.getPridBySysyid(sysId);
//判断是否是子系统/项目负责人
int is = 1;
if(!pid.equals(userId) && !prid.equals(userId)){
if (!pid.equals(userId) && !prid.equals(userId)) {
is = 0;
}
List<ProjectWorkDO> projectWorkDOList = moduleMapper.getBySysId(sysId,userId,is);
return ResultUtil.success(projectWorkDOList);
List<ProjectWorkDO> projectWorkDOList = moduleMapper.getBySysId(sysId, userId, is);
// 封装VO类
List<ProjectWorkAndNameVO> projectWorkAndNameVOS = new ArrayList<>();
for (ProjectWorkDO projectWorkDO : projectWorkDOList) {
ProjectWorkAndNameVO projectWorkAndNameVO = new ProjectWorkAndNameVO();
Processing.copyProperties(projectWorkDO,projectWorkAndNameVO);
// 添加负责人和子系统名称
projectWorkAndNameVO.
setChildSystemName(projectDAO.getProjectWorkerById(projectWorkDO.getPid()).getName())
.setPrincipalUser(userDAO.getUserById(projectWorkDO.getPrincipalId()).getUsername());
projectWorkAndNameVOS.add(projectWorkAndNameVO);
}
return ResultUtil.success(projectWorkAndNameVOS);
}
@ -69,7 +90,7 @@ public class ModuleServiceImpl implements ModuleService {
public BaseResponse deleteById(HttpServletRequest request, Long id) {
// 检测是否为管理员
if(!Processing.checkUserIsAdmin(request,roleMapper)){
if (!Processing.checkUserIsAdmin(request, roleMapper)) {
return ResultUtil.error(ErrorCode.NOT_PERMISSION);
}
@ -78,12 +99,12 @@ public class ModuleServiceImpl implements ModuleService {
return ResultUtil.success("删除成功");
}
// 删除子模块方法
public void deleteMoudule(Long id){
// 删除子模块方法
public void deleteMoudule(Long id) {
//获取所有父Id=id的子模块
List<ProjectWorkDO> projectWorkDOS = moduleMapper.getAllMoudleByPid(id);
for(ProjectWorkDO workDO: projectWorkDOS){
for (ProjectWorkDO workDO : projectWorkDOS) {
deleteMoudule(workDO.getId());
}