项目分割模块编辑接口

This commit is contained in:
xiangZr-hhh 2024-01-21 12:56:00 +08:00
parent 1435b01977
commit fef2ed6611
7 changed files with 95 additions and 2 deletions

View File

@ -1,6 +1,7 @@
package com.jsl.oa.controllers; 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.ProjectInfoVO; import com.jsl.oa.model.voData.ProjectInfoVO;
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;
@ -216,5 +217,23 @@ public class ProjectController {
} }
@PutMapping("/project/cut/edit")
public BaseResponse projectCuttingEdit(HttpServletRequest request, @RequestBody @Validated ProjectCuttingEditVO projectCuttingEditVO, @NotNull BindingResult bindingResult) {
log.info("请求接口[Put]: /project/cut/edit");
// 判断是否有参数错误
if (bindingResult.hasErrors()) {
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
}
return projectService.projectCuttingEdit(request, projectCuttingEditVO);
}
@PostMapping("")
public BaseResponse projectCuttingEdit(HttpServletRequest request, @RequestBody @Validated ProjectCuttingEditVO projectCuttingEditVO, @NotNull BindingResult bindingResult) {
log.info("请求接口[Put]: /project/cut/edit");
// 判断是否有参数错误
if (bindingResult.hasErrors()) {
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, Processing.getValidatedErrorList(bindingResult));
}
return projectService.projectCuttingEdit(request, projectCuttingEditVO);
}
} }

View File

@ -125,4 +125,19 @@ public class ProjectDAO {
return false; return false;
}else {return true;} }else {return true;}
} }
public boolean updateProjectCutting(ProjectCuttingDO projectCuttingDO){
log.info("\t> 执行 DAO 层 ProjectDAO.updateProjectCutting 方法");
return projectMapper.projectCuttingUpdate(projectCuttingDO);
}
public boolean isExistProjectCutting(Long id){
log.info("\t> 执行 DAO 层 ProjectDAO.isExistProjectCutting 方法");
if(projectMapper.getProjectCuttingById(id) == null){
return false;
}else {return true;}
}
} }

View File

@ -51,4 +51,12 @@ public interface ProjectMapper {
"VALUES (#{pid}, #{name}, #{tag}, #{realTime})") "VALUES (#{pid}, #{name}, #{tag}, #{realTime})")
void projectCuttingAdd(ProjectCuttingDO projectCuttingDO); void projectCuttingAdd(ProjectCuttingDO projectCuttingDO);
@Update("UPDATE organize_oa.oa_project_cutting SET name = #{name}, " +
"tag = #{tag}, engineering = #{engineering}, estimated_time = #{estimatedTime}, " +
"real_time = #{realTime}, updated_at = CURRENT_TIMESTAMP WHERE id = #{id}")
boolean projectCuttingUpdate(ProjectCuttingDO projectCuttingDO);
@Select("SELECT * FROM organize_oa.oa_project_cutting WHERE id = #{id}")
public ProjectCuttingDO getProjectCuttingById(Long id);
} }

View File

@ -0,0 +1,30 @@
package com.jsl.oa.model.voData;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.sql.Timestamp;
@Data
public class ProjectCuttingEditVO {
@NotNull(message = "id不能为空")
private Long id;
@NotNull(message = "父id不能为空")
private Long pid;
@NotBlank(message = "模块名称不为空")
private String name;
private String tag;
@NotNull(message = "工程量计算不能为空")
private Short engineering;
@NotNull(message = "预估时间不能为空")
private Integer estimatedTime;
private Integer realTime;
}

View File

@ -2,6 +2,7 @@ package com.jsl.oa.services;
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.ProjectInfoVO; import com.jsl.oa.model.voData.ProjectInfoVO;
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;
@ -32,4 +33,6 @@ public interface ProjectService {
BaseResponse projectDelete(HttpServletRequest request,Long id); BaseResponse projectDelete(HttpServletRequest request,Long id);
BaseResponse projectCuttingAdd(HttpServletRequest request, ProjectCuttingAddVO projectCuttingAddVO); BaseResponse projectCuttingAdd(HttpServletRequest request, ProjectCuttingAddVO projectCuttingAddVO);
BaseResponse projectCuttingEdit(HttpServletRequest request, ProjectCuttingEditVO projectCuttingEditVO);
} }

View File

@ -8,6 +8,7 @@ import com.jsl.oa.model.doData.ProjectDO;
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.ProjectInfoVO; import com.jsl.oa.model.voData.ProjectInfoVO;
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;
@ -220,5 +221,22 @@ public class ProjectServiceImpl implements ProjectService {
}else return ResultUtil.error(ErrorCode.NOT_ADMIN); }else return ResultUtil.error(ErrorCode.NOT_ADMIN);
} }
@Override
public BaseResponse projectCuttingEdit(HttpServletRequest request, ProjectCuttingEditVO projectCuttingEditVO) {
log.info("\t> 执行 Service 层 ProjectService.projectCuttingEdit方法");
if(Processing.checkUserIsAdmin(request,roleMapper)) {
//赋值数据
ProjectCuttingDO projectCuttingDO = new ProjectCuttingDO();
Processing.copyProperties(projectCuttingEditVO,projectCuttingDO);
//根据id检测项目模块是否存在
if(!projectDAO.isExistProjectCutting(projectCuttingEditVO.getId())){
return ResultUtil.error(ErrorCode.PROJECT_CUTTING_NOT_EXIST);
}
//向数据库添加数据
projectDAO.updateProjectCutting(projectCuttingDO);
return ResultUtil.success();
}else return ResultUtil.error(ErrorCode.NOT_ADMIN);
}
} }

View File

@ -38,8 +38,8 @@ public enum ErrorCode {
DATABASE_INSERT_ERROR("DatabaseInsertError", 50010, "数据库插入错误"), DATABASE_INSERT_ERROR("DatabaseInsertError", 50010, "数据库插入错误"),
DATABASE_UPDATE_ERROR("DatabaseUpdateError", 50011, "数据库更新错误"), DATABASE_UPDATE_ERROR("DatabaseUpdateError", 50011, "数据库更新错误"),
DATABASE_DELETE_ERROR("DatabaseDeleteError", 50012, "数据库删除错误"), DATABASE_DELETE_ERROR("DatabaseDeleteError", 50012, "数据库删除错误"),
PROJECT_NOT_EXIST("ProjectNotExist", 40016, "项目不存在"); PROJECT_NOT_EXIST("ProjectNotExist", 40016, "项目不存在"),
PROJECT_CUTTING_NOT_EXIST("ProjectCuttingNotExist", 40017, "项目分割模块不存在");
private final String output; private final String output;
private final Integer code; private final Integer code;
private final String message; private final String message;