diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index b8d9573..394626e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -66,7 +66,9 @@
READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"),
OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"),
- OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败");
+ OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"),
+ OUTSOURCE_PROJECT_SAVE_FAILED(2421, "分包项目保存至草稿箱失败"),
+ OUTSOURCE_PROJECT_SUBMIT_FAILED(2422, "分包项目提交处理失败");
private Integer code;
private String message;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index b8d9573..394626e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -66,7 +66,9 @@
READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"),
OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"),
- OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败");
+ OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"),
+ OUTSOURCE_PROJECT_SAVE_FAILED(2421, "分包项目保存至草稿箱失败"),
+ OUTSOURCE_PROJECT_SUBMIT_FAILED(2422, "分包项目提交处理失败");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
index 4cc50be..dfe0628 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
@@ -49,5 +49,7 @@
String LAB_EXECUTIVE_TEMPLATE_PREFIX = "sysjcmb";
//分包方
String OUTSOURCER_PREFIX = "fbf";
+ //分包项目
+ String OUTSOURCE_PROJECT_PREFIX = "fbxm";
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index b8d9573..394626e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -66,7 +66,9 @@
READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"),
OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"),
- OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败");
+ OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"),
+ OUTSOURCE_PROJECT_SAVE_FAILED(2421, "分包项目保存至草稿箱失败"),
+ OUTSOURCE_PROJECT_SUBMIT_FAILED(2422, "分包项目提交处理失败");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
index 4cc50be..dfe0628 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
@@ -49,5 +49,7 @@
String LAB_EXECUTIVE_TEMPLATE_PREFIX = "sysjcmb";
//分包方
String OUTSOURCER_PREFIX = "fbf";
+ //分包项目
+ String OUTSOURCE_PROJECT_PREFIX = "fbxm";
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
index faf61fa..b1724d8 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
@@ -1,7 +1,13 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
import com.casic.missiles.model.business.BusinessOutsourceProject;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +19,11 @@
*/
public interface BusinessOutsourceProjectMapper extends BaseMapper {
+ List selectDraftListForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request);
+
+ List selectBatchForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request, @Param("businessKey") List businessKeys);
+
+ Long selectMaxOutsourcerNo();
+
+ BusinessOutsourceProject selectProjectById(@Param("id") Long id);
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index b8d9573..394626e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -66,7 +66,9 @@
READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"),
OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"),
- OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败");
+ OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"),
+ OUTSOURCE_PROJECT_SAVE_FAILED(2421, "分包项目保存至草稿箱失败"),
+ OUTSOURCE_PROJECT_SUBMIT_FAILED(2422, "分包项目提交处理失败");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
index 4cc50be..dfe0628 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
@@ -49,5 +49,7 @@
String LAB_EXECUTIVE_TEMPLATE_PREFIX = "sysjcmb";
//分包方
String OUTSOURCER_PREFIX = "fbf";
+ //分包项目
+ String OUTSOURCE_PROJECT_PREFIX = "fbxm";
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
index faf61fa..b1724d8 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
@@ -1,7 +1,13 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
import com.casic.missiles.model.business.BusinessOutsourceProject;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +19,11 @@
*/
public interface BusinessOutsourceProjectMapper extends BaseMapper {
+ List selectDraftListForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request);
+
+ List selectBatchForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request, @Param("businessKey") List businessKeys);
+
+ Long selectMaxOutsourcerNo();
+
+ BusinessOutsourceProject selectProjectById(@Param("id") Long id);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
index f023fb9..7c98c55 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
@@ -4,7 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.model.business.BusinessSiteExecutiveInfo;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
index e4c96c3..0c4aa69 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourceProjectController.java
@@ -1,7 +1,34 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.BaseApprovalSubmitRequest;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectSaveResponse;
+import com.casic.missiles.dto.flowable.ApprovalDeleteRequest;
+import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourceProject;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourceProjectService;
+import com.casic.missiles.utils.DictCodeUtils;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+import java.util.Objects;
/**
*
@@ -11,8 +38,112 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包项目申请")
+@Slf4j
@RestController
@RequestMapping("/business/outsourceProject")
-public class BusinessOutsourceProjectController {
+public class BusinessOutsourceProjectController extends ExportController {
+ @Autowired
+ private IBusinessOutsourceProjectService projectService;
+ @ApiOperation("分包项目审批列表(分页)")
+ @PostMapping("/approval/listPage")
+ public ReturnDTO> outsourcerApprovalListPage(@RequestBody @Valid OutsourceProjectApprovalListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(request);
+ Page page = PageFactory.defaultPage();
+ List responseList = projectService.projectApprovalListPage(request, page);
+ page.setRecords(responseList);
+ return ReturnUtil.success(super.packForBT(page));
+ }
+
+ @ApiOperation("分包项目审批保存(保存至草稿箱)")
+ @PostMapping("/save")
+ @ResponseBody
+ public ReturnDTO save(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.saveProject(outsourceProject);
+ }
+
+ @ApiOperation("草稿箱分包项目编辑")
+ @PostMapping("/draftUpdate")
+ @ResponseBody
+ public ReturnDTO draftUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) throws Exception {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ DictCodeUtils.validDictCode(outsourceProject);
+ return projectService.draftUpdate(outsourceProject);
+ }
+
+ @ApiOperation("分包项目提交(未调用过保存接口保存至草稿箱需先调用保存接口,再调用该接口)")
+ @PostMapping("/submit")
+ @ResponseBody
+ public ReturnDTO submit(@RequestBody @Valid BaseApprovalSubmitRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.submitProject(request);
+ }
+
+ @ApiOperation("分包项目删除(草稿删除也调用该接口)")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.deleteProject(idDTO.getId());
+ }
+
+// @ApiOperation("分包项目批量删除")
+// @PostMapping("/batchDelete")
+// @ResponseBody
+// public ReturnDTO batchDelete(@RequestBody @Valid IdsDTO idsDTO) {
+// Assert.isFalse(CollectionUtils.isEmpty(idsDTO.getIds()), () -> {
+// throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+// });
+// return projectService.deleteBatchProject(idsDTO.getIds());
+// }
+
+ @ApiOperation("分包项目详情")
+ @PostMapping("/detail")
+ @ResponseBody
+ public ReturnDTO supplierDetail(@RequestBody @Valid IdDTO idDTO) throws Exception {
+ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ return projectService.projectDetail(idDTO.getId());
+ }
+
+ @ApiOperation("分包项目审批操作-删除")
+ @PostMapping("/approval/operate/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody @Valid ApprovalDeleteRequest request, BindingResult bindingResult) {
+ if(bindingResult.hasErrors()){
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.approvalDelete(request);
+ }
+
+ @ApiOperation("未通过分包项目编辑(驳回后的分包项目重新编辑,仅未通过列表中的编辑按钮可调用)")
+ @PostMapping("/failUpdate")
+ @ResponseBody
+ public ReturnDTO failUpdate(@RequestBody @Valid BusinessOutsourceProject outsourceProject, BindingResult bindingResult) {
+ Assert.isFalse(Objects.isNull(outsourceProject.getId()), () -> {
+ throw new BusinessException(BusinessExceptionEnum.ID_NULL);
+ });
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return projectService.failUpdate(outsourceProject);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
index 4225471..537a66b 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerAbilityController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerAbilityListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerAbility;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerAbilityService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方业务能力")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerAbility")
-public class BusinessOutsourcerAbilityController {
+public class BusinessOutsourcerAbilityController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerAbilityService abilityService;
+ @ApiOperation("分包方业务能力列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(abilityService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方业务能力列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerAbilityListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(abilityService.list(request));
+ }
+
+ @ApiOperation("业务能力新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerAbility ability) {
+ return abilityService.addAbility(ability);
+ }
+
+ @ApiOperation("业务能力删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return abilityService.deleteAbility(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
index f7ab7c6..1e3e4ac 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerController.java
@@ -131,7 +131,7 @@
return outsourcerInfoService.submitOutsourcer(request);
}
- @ApiOperation("分包方档案删除(草稿也调用该接口)")
+ @ApiOperation("分包方档案删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
index 460846d..f5ea3a6 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOutsourcerUserInfoController.java
@@ -1,7 +1,26 @@
package com.casic.missiles.controller.business;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.core.base.controller.ExportController;
+import com.casic.missiles.core.page.PageFactory;
+import com.casic.missiles.core.page.PageInfoBT;
+import com.casic.missiles.dto.IdDTO;
+import com.casic.missiles.dto.ReturnDTO;
+import com.casic.missiles.dto.ReturnUtil;
+import com.casic.missiles.dto.business.outsource.OutsourcerUserListRequest;
+import com.casic.missiles.exception.BusinessException;
+import com.casic.missiles.model.business.BusinessOutsourcerUserInfo;
+import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
+import com.casic.missiles.service.business.IBusinessOutsourcerUserInfoService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
/**
*
@@ -11,8 +30,46 @@
* @author wangpeng
* @since 2023-03-25
*/
+@Api(tags = "分包管理接口-分包方人员")
+@Slf4j
@RestController
@RequestMapping("/business/outsourcerUser")
-public class BusinessOutsourcerUserInfoController {
+public class BusinessOutsourcerUserInfoController extends ExportController {
+ @Autowired
+ private IBusinessOutsourcerUserInfoService userInfoService;
+ @ApiOperation("分包方人员列表(分页)")
+ @PostMapping("/listPage")
+ @ResponseBody
+ public ReturnDTO> userListPage(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ Page page = PageFactory.defaultPage();
+ return ReturnUtil.success(super.packForBT(userInfoService.listPage(page, request)));
+ }
+
+ @ApiOperation("分包方人员列表")
+ @PostMapping("/list")
+ @ResponseBody
+ public ReturnDTO> userList(@RequestBody @Valid OutsourcerUserListRequest request, BindingResult bindingResult) throws Exception {
+ if (bindingResult.hasErrors()) {
+ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage());
+ }
+ return ReturnUtil.success(userInfoService.list(request));
+ }
+
+ @ApiOperation("人员新增")
+ @PostMapping("/add")
+ @ResponseBody
+ public ReturnDTO add(@RequestBody BusinessOutsourcerUserInfo userInfo) {
+ return userInfoService.addUser(userInfo);
+ }
+
+ @ApiOperation("人员删除")
+ @PostMapping("/delete")
+ @ResponseBody
+ public ReturnDTO delete(@RequestBody IdDTO idDto) {
+ return userInfoService.deleteUser(idDto);
+ }
}
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
index e622a36..5b36a79 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessSiteExecutiveInfoController.java
@@ -8,7 +8,7 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.exception.BusinessException;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import com.casic.missiles.model.exception.enums.CoreExceptionEnum;
import com.casic.missiles.service.business.IBusinessSiteExecutiveInfoService;
import com.casic.missiles.utils.DictCodeUtils;
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
index c95d6dc..a25eb00 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java
@@ -142,7 +142,7 @@
return meterFileService.updateFile(idDTO.getId());
}
- @ApiOperation("文件删除(草稿也调用该接口)")
+ @ApiOperation("文件删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
index d773a83..5d77839 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java
@@ -129,7 +129,7 @@
return null;
}
- @ApiOperation("溯源供方删除(草稿也调用该接口)")
+ @ApiOperation("溯源供方删除(草稿删除也调用该接口)")
@PostMapping("/delete")
@ResponseBody
public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
index de6976b..17e9234 100644
--- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
+++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java
@@ -133,7 +133,7 @@
return null;
}
- @ApiOperation("培训计划删除(草稿也调用该接口)")
+ @ApiOperation("培训计划删除(草稿删除也调用该接口)")
@PostMapping("/plan/delete")
@ResponseBody
public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) {
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
index b8d9573..394626e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/BusinessExceptionEnum.java
@@ -66,7 +66,9 @@
READ_WRITER_NOT_CONNECTED_OR_NO_TID(2418, "连接读写器失败或无可识别标签"),
OUTSOURCER_SAVE_FAILED(2419, "分包方保存至草稿箱失败"),
- OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败");
+ OUTSOURCER_SUBMIT_FAILED(2420, "分包方提交处理失败"),
+ OUTSOURCE_PROJECT_SAVE_FAILED(2421, "分包项目保存至草稿箱失败"),
+ OUTSOURCE_PROJECT_SUBMIT_FAILED(2422, "分包项目提交处理失败");
private Integer code;
private String message;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
index 4cc50be..dfe0628 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/PrefixCodeEnum.java
@@ -49,5 +49,7 @@
String LAB_EXECUTIVE_TEMPLATE_PREFIX = "sysjcmb";
//分包方
String OUTSOURCER_PREFIX = "fbf";
+ //分包项目
+ String OUTSOURCE_PROJECT_PREFIX = "fbxm";
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
index faf61fa..b1724d8 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessOutsourceProjectMapper.java
@@ -1,7 +1,13 @@
package com.casic.missiles.mapper.business;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListRequest;
+import com.casic.missiles.dto.business.outsource.OutsourceProjectApprovalListResponse;
import com.casic.missiles.model.business.BusinessOutsourceProject;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
*
@@ -13,4 +19,11 @@
*/
public interface BusinessOutsourceProjectMapper extends BaseMapper {
+ List selectDraftListForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request);
+
+ List selectBatchForApproval(Page page, @Param("request") OutsourceProjectApprovalListRequest request, @Param("businessKey") List businessKeys);
+
+ Long selectMaxOutsourcerNo();
+
+ BusinessOutsourceProject selectProjectById(@Param("id") Long id);
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
index f023fb9..7c98c55 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessSiteExecutiveInfoMapper.java
@@ -4,7 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListRequest;
import com.casic.missiles.model.business.BusinessSiteExecutiveInfo;
-import com.casic.missiles.model.business.SiteExecutiveApprovalListResponse;
+import com.casic.missiles.dto.business.siteExecutive.SiteExecutiveApprovalListResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
index 07385fb..95012eb 100644
--- a/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
+++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessOrderSampleRelationMapper.xml
@@ -26,7 +26,7 @@
bosr.sample_id, csi.sample_no, csi.sample_name, csi.sample_model, csi.manufacturing_no, csi.manufacturer, csi.manufacturer_country,
csi.manufacturing_date, csi.ABC, bo.customer_id, bo.customer_no, bo.customer_name, bo.customer_phone, bo.customer_address, bo.id AS orderId,
bo.order_code, bo.deliverer, bo.deliverer_tel, bo.plan_deliver_time, bo.require_over_time, bo.certifications, bosr.measure_content, csi.measure_period,
- csi.measure_last_time AS measureLastDate, csi.valid_deadline AS effectiveDate, bosr.remark, csi.minio_file_name, csi.measure_type, csi.label_bind
+ csi.measure_last_time AS measureLastDate, csi.valid_deadline AS effectiveDate, bosr.remark, csi.minio_file_name, bosr.measure_type, csi.label_bind