diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java index d816cb8..c9997c5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java @@ -11,6 +11,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -24,8 +27,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -34,8 +36,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("expireTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -44,8 +45,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } // 鉴定金额暂时没有表设计,loading... @@ -64,10 +64,10 @@ Calendar endDate = Calendar.getInstance(); endDate.setTime(new Date()); while (beginDate.getTime().compareTo(endDate.getTime()) <= 0) { - WorkbenceTrendResponse workbenceResponse = new WorkbenceTrendResponse(); - workbenceResponse.setDate(sdf2.format(beginDate.getTime())); - workbenceResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); - mapList.add(workbenceResponse); + WorkbenceTrendResponse workBenchResponse = new WorkbenceTrendResponse(); + workBenchResponse.setDate(sdf2.format(beginDate.getTime())); + workBenchResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); + mapList.add(workBenchResponse); beginDate.add(Calendar.MONTH, 1); } return mapList; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java index d816cb8..c9997c5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java @@ -11,6 +11,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -24,8 +27,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -34,8 +36,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("expireTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -44,8 +45,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } // 鉴定金额暂时没有表设计,loading... @@ -64,10 +64,10 @@ Calendar endDate = Calendar.getInstance(); endDate.setTime(new Date()); while (beginDate.getTime().compareTo(endDate.getTime()) <= 0) { - WorkbenceTrendResponse workbenceResponse = new WorkbenceTrendResponse(); - workbenceResponse.setDate(sdf2.format(beginDate.getTime())); - workbenceResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); - mapList.add(workbenceResponse); + WorkbenceTrendResponse workBenchResponse = new WorkbenceTrendResponse(); + workBenchResponse.setDate(sdf2.format(beginDate.getTime())); + workBenchResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); + mapList.add(workBenchResponse); beginDate.add(Calendar.MONTH, 1); } return mapList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java index b81d0a4..061ffd0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java @@ -17,7 +17,7 @@ void certificatePrintExport(CertificateListRequest request, HttpServletResponse response, Page page) throws Exception; - ReturnDTO agreeAginPrint(ApprovalAgreeRequest request); + ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request); ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java index d816cb8..c9997c5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java @@ -11,6 +11,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -24,8 +27,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -34,8 +36,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("expireTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -44,8 +45,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } // 鉴定金额暂时没有表设计,loading... @@ -64,10 +64,10 @@ Calendar endDate = Calendar.getInstance(); endDate.setTime(new Date()); while (beginDate.getTime().compareTo(endDate.getTime()) <= 0) { - WorkbenceTrendResponse workbenceResponse = new WorkbenceTrendResponse(); - workbenceResponse.setDate(sdf2.format(beginDate.getTime())); - workbenceResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); - mapList.add(workbenceResponse); + WorkbenceTrendResponse workBenchResponse = new WorkbenceTrendResponse(); + workBenchResponse.setDate(sdf2.format(beginDate.getTime())); + workBenchResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); + mapList.add(workBenchResponse); beginDate.add(Calendar.MONTH, 1); } return mapList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java index b81d0a4..061ffd0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java @@ -17,7 +17,7 @@ void certificatePrintExport(CertificateListRequest request, HttpServletResponse response, Page page) throws Exception; - ReturnDTO agreeAginPrint(ApprovalAgreeRequest request); + ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request); ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 2292404..0c2aeb2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -8,6 +8,9 @@ import javax.servlet.http.HttpServletResponse; +/** + * @author cz + */ public interface IBusinessDispatchService { Page listPage(Page page, DeviceDispatchDTO request); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java index d816cb8..c9997c5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java @@ -11,6 +11,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -24,8 +27,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -34,8 +36,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("expireTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -44,8 +45,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } // 鉴定金额暂时没有表设计,loading... @@ -64,10 +64,10 @@ Calendar endDate = Calendar.getInstance(); endDate.setTime(new Date()); while (beginDate.getTime().compareTo(endDate.getTime()) <= 0) { - WorkbenceTrendResponse workbenceResponse = new WorkbenceTrendResponse(); - workbenceResponse.setDate(sdf2.format(beginDate.getTime())); - workbenceResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); - mapList.add(workbenceResponse); + WorkbenceTrendResponse workBenchResponse = new WorkbenceTrendResponse(); + workBenchResponse.setDate(sdf2.format(beginDate.getTime())); + workBenchResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); + mapList.add(workBenchResponse); beginDate.add(Calendar.MONTH, 1); } return mapList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java index b81d0a4..061ffd0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java @@ -17,7 +17,7 @@ void certificatePrintExport(CertificateListRequest request, HttpServletResponse response, Page page) throws Exception; - ReturnDTO agreeAginPrint(ApprovalAgreeRequest request); + ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request); ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 2292404..0c2aeb2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -8,6 +8,9 @@ import javax.servlet.http.HttpServletResponse; +/** + * @author cz + */ public interface IBusinessDispatchService { Page listPage(Page page, DeviceDispatchDTO request); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index 7528613..335ea1c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -3,9 +3,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; -import com.casic.missiles.dto.customer.advice.CustomerAdviceListRequest; import com.casic.missiles.model.business.BusinessOrder; import javax.servlet.http.HttpServletResponse; @@ -24,8 +24,6 @@ BusinessOrder orderDetail(Long id); - ReturnDTO deleteOrder(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); ReturnDTO addOrder(BusinessOrder businessOrder); @@ -34,4 +32,7 @@ ReturnDTO updateStatusById(Long id,String status); + ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest); + + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java index 49469d5..ded8a74 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificatePrintController.java @@ -17,6 +17,7 @@ import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificatePrintService; import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -38,9 +39,10 @@ */ @RestController @RequestMapping("/business/certificatePrint") +@AllArgsConstructor public class BusinessCertificatePrintController extends ExportController { - private IBusinessCertificatePrintService certificatePrintService; + private final IBusinessCertificatePrintService certificatePrintService; /** * 证书打印列表,除了基本的列表的信息,需要判断证书打印审批中的状态,进而达到权限的控制 @@ -70,17 +72,14 @@ */ @ApiOperation("证书审批-同意") @PostMapping("/agree") - public ReturnDTO agreeAginPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { + public ReturnDTO agreeAgainPrint(@RequestBody @Valid ApprovalAgreeRequest request,BindingResult bindingResult) { if(bindingResult.hasErrors()){ throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); } - return certificatePrintService.agreeAginPrint(request); + return certificatePrintService.agreeAgainPrint(request); } - /** - * 证书审批拒绝 - */ - @ApiOperation("证书审批-拒绝") + @ApiOperation("证书打印审批-拒绝") @PostMapping("/refuse") public ReturnDTO refuseAgainPrint(@RequestBody @Valid CertificateRefusePrintRequest request, BindingResult bindingResult) { if(bindingResult.hasErrors()){ @@ -88,11 +87,8 @@ } return certificatePrintService.refuseAgainPrint(request); } -// - /** - * 申请再次打印 - */ - @ApiOperation("证书审批-发起申请") + + @ApiOperation("证书打印审批-发起申请") @PostMapping("/submitApproval") public ReturnDTO submitAgainPrint(@RequestBody @Valid BaseApprovalSubmitRequest request,BindingResult bindingResult){ if(bindingResult.hasErrors()){ @@ -101,6 +97,4 @@ return certificatePrintService.submitAgainPrint(request); } - - } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java index 276a13f..c9d6a93 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessDispatchController.java @@ -28,6 +28,10 @@ import javax.validation.Valid; import java.util.Objects; +/** + * @author cz + */ + @RestController @Api(tags = "设备收发模块") @RequestMapping("/device/dispatch") @@ -38,14 +42,10 @@ /** * 除了ui界面要展示的列在DeviceDispatchDTO模型中体现以外,还需覆盖所有按钮的权限操作,终止、回退、收入、归还、催办按钮 - * 这些是列表实现的详细点 */ @ApiOperation("设备列表-分页") @PostMapping("/listPage") - public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request, BindingResult bindingResult) throws Exception { - if (bindingResult.hasErrors()) { - throw new BusinessException(CoreExceptionEnum.REQUEST_NULL.getCode(), bindingResult.getFieldError().getDefaultMessage()); - } + public ReturnDTO> listPage(@RequestBody @Valid DeviceDispatchDTO request){ Page page = PageFactory.defaultPage(); return ReturnUtil.success(super.packForBT(bizDispatchService.listPage(page, request))); } @@ -65,7 +65,7 @@ * back:回填:置为前置状态,已收入、待归还、已归还 */ @ApiOperation("( 回退、收入、归还、无需检测 按钮)") - @PostMapping("/satus/change") + @PostMapping("/status/change") public ReturnDTO statusChange(@RequestBody @Valid DeviceStatusChangeDTO deviceReceiveDTO) { Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); @@ -94,7 +94,7 @@ Assert.isFalse(Objects.isNull(deviceReceiveDTO.getOrderId()) || Objects.isNull(deviceReceiveDTO.getSampleId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(bizDispatchService.rushDoProcess(deviceReceiveDTO)); + return bizDispatchService.rushDoProcess(deviceReceiveDTO); } } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java index 5dcca11..c6b3973 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessOrderController.java @@ -8,6 +8,7 @@ import com.casic.missiles.dto.IdDTO; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -33,7 +34,7 @@ * 业务管理-委托书 前端控制器 *

* - * @author wangpeng + * @author cz * @since 2023-02-02 */ @RestController @@ -84,34 +85,21 @@ return ReturnUtil.success(businessOrderService.addOrder(businessOrder)); } - @ApiOperation("委托书删除(暂不使用,无此功能)") - @PostMapping("/delete") - public ReturnDTO deleteAdvice(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { - throw new BusinessException(BusinessExceptionEnum.ID_NULL); - }); - return ReturnUtil.success(businessOrderService.deleteOrder(idDTO.getId())); - } - - //*******************************************************************************************************************// @ApiOperation("委托书导出") @PostMapping("/export") public void exportAdvice(@RequestBody @Valid OrderListRequest request, HttpServletResponse response) { businessOrderService.orderExport(request, response); } - - //*******************************************************************************************************************// @ApiOperation("委托书取消") @PostMapping("/cancel") - public ReturnDTO cancelOrder(@RequestBody @Valid IdDTO idDTO) { - Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { + public ReturnDTO cancelOrder(@RequestBody @Valid OrderCancelRequest orderCancelRequest) { + Assert.isFalse(Objects.isNull(orderCancelRequest.getOrderId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return businessOrderService.updateStatusById(idDTO.getId(),"3"); + return businessOrderService.cancelOrder(orderCancelRequest); } - //*******************************************************************************************************************// @ApiOperation("委托书接收") @PostMapping("/receive") public ReturnDTO receiveOrder(@RequestBody @Valid IdDTO idDTO) { @@ -121,7 +109,6 @@ return businessOrderService.updateStatusById(idDTO.getId(),"2"); } - //*******************************************************************************************************************// @ApiOperation("委托书退回") @PostMapping("/back") public ReturnDTO backOrder(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java index 9909809..9ae077e 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/customer/CustomerSampleController.java @@ -99,7 +99,7 @@ Assert.isFalse(Objects.isNull(idDTO.getId()), () -> { throw new BusinessException(BusinessExceptionEnum.ID_NULL); }); - return ReturnUtil.success(super.packForBT(customerSampleService.mesureRecordsBySampleId(idDTO.getId()))); + return ReturnUtil.success(super.packForBT(customerSampleService.measureRecordsBySampleId(idDTO.getId()))); } @ApiOperation("根据样品id查询检定证书") diff --git a/casic-metering-api/src/main/resources/config/application.yml b/casic-metering-api/src/main/resources/config/application.yml index 1542cb6..040acf6 100644 --- a/casic-metering-api/src/main/resources/config/application.yml +++ b/casic-metering-api/src/main/resources/config/application.yml @@ -118,6 +118,6 @@ code: generate: #作者 - author: wangpeng + author: cz #待生成对象表名 - table-name: workbench_approval_message + table-name: business_original_record diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java index e5aeca4..0975556 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/ApplyFromIdEnum.java @@ -18,6 +18,5 @@ String DEVICE_BORROW_APPROVAL = "clsbjysp"; // 设备借用申请 String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 - String CERTIFICATE_PRINT_APPROVAL = "sbglbzzzcxsqssd"; // 证书打印通过,暂定************ } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java index 04ed845..d04eb14 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/dispatch/DeviceDispatchVO.java @@ -90,5 +90,4 @@ @ApiModelProperty(value = "回退状态(已收入的状态) 1真0假", dataType = "Integer") private Integer FallbackState; - } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java new file mode 100644 index 0000000..3d1ac81 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/order/OrderCancelRequest.java @@ -0,0 +1,16 @@ +package com.casic.missiles.dto.business.order; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class OrderCancelRequest { + + @ApiModelProperty(value = "委托书id", dataType = "Long") + private Long orderId; + + @ApiModelProperty(value = "操作原因(终止操作必填,其他无需填写)", dataType = "String") + private String reason; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java index 9662eb8..d6206c5 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/print/CertificateListRequest.java @@ -4,13 +4,18 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotBlank; import java.util.List; +/** + * @author cz + */ @Data @ApiModel("设备接收") public class CertificateListRequest { @ApiModelProperty(value = "表单id(流程定义对应的表单id,等价于业务id)", dataType = "String") + @NotBlank(message = "表单id不能为空") private String formId; @ApiModelProperty(value = "证书编号", dataType = "String") @@ -20,7 +25,7 @@ private String orderNo; @ApiModelProperty(value = "委托方名称", dataType = "String") - private String cutomerName; + private String customerName; @ApiModelProperty(value = "样品编号", dataType = "String") private String sampleNo; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 8778b11..9e960f6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -87,6 +87,9 @@ private Integer isDel; + @ApiModelProperty(value = "最后更新人员", dataType = "String") + private Long updateUser; + @ApiModelProperty(value = "创建人", dataType = "String") private Long createUser; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java new file mode 100644 index 0000000..6572d23 --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrderRecord.java @@ -0,0 +1,31 @@ +package com.casic.missiles.model.business; + +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author cz + */ +@Data +@TableName("business_order_record") +public class BusinessOrderRecord { + + private Long id; + + private Long orderId; + + /** + * 记录内容 + */ + private String recordTContent; + + /** + * 创建人id + */ + private Long createUser; + + /** + * 创建人时间 + */ + private String createTime; +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java index a0cceda..230c779 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificatePrintServiceImpl.java @@ -1,7 +1,6 @@ package com.casic.missiles.service.Impl.business; import cn.hutool.core.lang.Assert; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.casic.missiles.core.application.service.AbstractDictService; @@ -15,14 +14,12 @@ import com.casic.missiles.dto.business.print.CertificateListRequest; import com.casic.missiles.dto.business.print.CertificateListResponse; import com.casic.missiles.dto.business.print.CertificateRefusePrintRequest; -import com.casic.missiles.dto.flowable.AllApproveDTO; import com.casic.missiles.dto.flowable.ApprovalAgreeRequest; import com.casic.missiles.dto.flowable.ApprovalRefuseRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.ApprovalStatusEnum; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; -import com.casic.missiles.enums.MeterDictEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; @@ -40,6 +37,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @AllArgsConstructor public class BusinessCertificatePrintServiceImpl extends ServiceImpl implements IBusinessCertificatePrintService { @@ -81,16 +81,19 @@ } @Override - @Transactional - public ReturnDTO agreeAginPrint(ApprovalAgreeRequest request) { - ReturnDTO returnDTO = approvalOperateService.agree(request); - return returnDTO; + public ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request) { + return approvalOperateService.agree(request); } + /** + * 更新工作流审批状态为拒绝,当返回值成功时,进行打印状态置为不可打印,审批状态为不通过 + * + * @return + */ @Override @Transactional public ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request) { - ApprovalRefuseRequest approvalRefuseRequest=new ApprovalRefuseRequest(); + ApprovalRefuseRequest approvalRefuseRequest = new ApprovalRefuseRequest(); approvalRefuseRequest.setTaskId(request.getTaskId()); approvalRefuseRequest.setComments(request.getComments()); ReturnDTO returnDTO = approvalOperateService.refuse(approvalRefuseRequest); @@ -99,8 +102,9 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setPrintStatus("2");//设置为不能打印 - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //设置为不能打印 + certificateReport.setPrintStatus("2"); + certificateReport.setApprovalStatus(ApprovalStatusEnum.FAILED); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -108,7 +112,9 @@ return ReturnUtil.success(); } - //提交审批流程,修改证书审批状态、修改打印状态 + /** + * 提交审批流程,修改证书审批状态为待审批,打印状态为审批中 + */ @Transactional @Override public ReturnDTO submitAgainPrint(BaseApprovalSubmitRequest request) { @@ -119,8 +125,10 @@ } BusinessCertificateReport certificateReport = new BusinessCertificateReport(); certificateReport.setId(request.getId()); - certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); //审批状态为审批中 - certificateReport.setPrintStatus("3"); //打印状态审批中 + //审批状态为审批中 + certificateReport.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + //打印状态审批中 + certificateReport.setPrintStatus("3"); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.AGAIN_PRINT_SUBMIT_FAILED.getMessage()); @@ -128,13 +136,14 @@ return ReturnUtil.success(); } - //可打印:只需要查询可打印状态即可 - //查询工作流 + /** + * 可打印:只需要查询可打印状态即可,待审批状态,查询工作流,同时传输任务id + */ private Page handleApprovalStatus(Page page, CertificateListRequest request) throws Exception { Page approvalList = PageFactory.defaultPage(); if (request.getApprovalStatus().equals(ApprovalStatusEnum.TO_BE_APPROVED)) { handlerBeApproved(approvalList, page, request); - } else if (request.getPrintStatus().equals("0")) { + } else if("0".equals(request.getPrintStatus())) { request.setApprovalStatus(null); approvalList.setRecords(this.baseMapper.selectBatchForApprovalList(page, request, null)); } else { @@ -147,18 +156,9 @@ return approvalList; } - private Page handleAllApprovalListResponse(Page approvalList, List allApproveList) { - Map taskMap = allApproveList.stream().collect(Collectors.toMap(AllApproveDTO::getBusinessKey, AllApproveDTO::getStatus)); - //状态补全 - approvalList.getRecords().forEach(approval -> { - approval.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, taskMap.get(String.valueOf(approval.getId())))); - approval.setApprovalStatus(taskMap.get(String.valueOf(approval.getId()))); - }); - //排序 - approvalList.setRecords(approvalList.getRecords().stream().sorted(Comparator.comparing(CertificateListResponse::getCreateTime).reversed()).collect(Collectors.toList())); - return approvalList; - } - + /** + * 查询待审批状态的打印证书,查询业务主键信息,据此查询相应的证书,并填充相应的工作流状态 + */ private Page handlerBeApproved(Page approvalList, Page page, CertificateListRequest request) { List businessKeys = new ArrayList<>(); List toBeApprovedList = baseApprovalService.getToBeApprovedList(request.getFormId()); @@ -179,11 +179,4 @@ return approvalList; } - private void handleApprovalListResponse(Page approvalList, String status) { - approvalList.getRecords().stream().forEach(result -> { - //审批状态两种获取方式:1、在此处设置,2、在flowable中设置业务状态,暂采取1 - result.setApprovalStatusName(dictService.getDictNameByCode(MeterDictEnum.APPROVAL_STATUS, status)); - }); - } - } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java index b397f83..859010b 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessInterchangeServiceImpl.java @@ -1,6 +1,5 @@ package com.casic.missiles.service.Impl.business; -import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -46,7 +45,9 @@ private final IBaseExportService iBaseExportService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; - //** 送检人查询条件不在设备交接单中,需要联查才可以实现 + /** + * 送检人查询条件不在设备交接单中,需要联查才可以实现 + */ @Override public Page exchangeListPage(Page page, InterchangeListRequest request) throws Exception { page.setRecords(this.baseMapper.selectInterchangeListPage(page, request)); @@ -54,7 +55,8 @@ } @Override - public BusinessInterchangeDetailResponse exchangeDetail(Long id) { ; + public BusinessInterchangeDetailResponse exchangeDetail(Long id) { + ; BusinessInterchangeDetailResponse businessExchange = this.baseMapper.getInfoById(id); QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", businessExchange.getOrderId()); @@ -71,19 +73,21 @@ @Override @Transactional public ReturnDTO deleteExchange(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - //交接单绑定的肯定有样品,所以samplUpdateFlag肯定为true - Boolean samplUpdateFlag = sampleStatusDeletor(id) > 0; - if (deleteFlag > 0 && samplUpdateFlag) { + int deleteFlag = this.baseMapper.deleteById(id); + //交接单绑定的肯定有样品,所以sampleUpdateFlag肯定为true + boolean sampleUpdateFlag = sampleStatusDeletor(id) > 0; + if (deleteFlag > 0 && sampleUpdateFlag) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新不对样品有任何操作 + /** + * 更新不对样品有任何操作 + */ @Override public ReturnDTO updateExchange(BusinessInterchange businessInterchange) { - Integer updateFlag = this.baseMapper.updateById(businessInterchange); + int updateFlag = this.baseMapper.updateById(businessInterchange); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -94,8 +98,8 @@ @Transactional public ReturnDTO addExchange(BusinessInterchange businessInterchange) { populationExchange(businessInterchange); - Integer addFlag = this.baseMapper.insert(businessInterchange); - Boolean sampleAddFlag = true; + int addFlag = this.baseMapper.insert(businessInterchange); + boolean sampleAddFlag = true; if (!CollectionUtils.isEmpty(businessInterchange.getCustomerSampleList())) { for (CustomerSampleListVO sampleInfo : businessInterchange.getCustomerSampleList()) { sampleAddFlag = sampleAddFlag && sampleStatusUpdator(sampleInfo, businessInterchange.getId()) > 0; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java index f6b3933..9043960 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessOrderServiceImpl.java @@ -9,6 +9,7 @@ import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -32,7 +33,6 @@ import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -49,7 +49,7 @@ @AllArgsConstructor public class BusinessOrderServiceImpl extends ServiceImpl implements IBusinessOrderService { - private final BusinessOrderListReponseMapper orderListReponseMapper; + private final BusinessOrderListReponseMapper orderListResponseMapper; private final IBaseExportService iBaseExportService; private final CustomerSampleService customerSampleService; private final BusinessOrderSampleRelationMapper sampleRelationMapper; @@ -60,7 +60,7 @@ @Override public Page orderListPage(Page page, OrderListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); - Page resultPage = this.orderListReponseMapper.selectPage(page, wrapper); + Page resultPage = this.orderListResponseMapper.selectPage(page, wrapper); List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) @@ -74,7 +74,9 @@ return resultPage; } - // 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + /** + * 1、查询委托书详情 2、对样品列表进行查询 3、设置默认在库标志 + */ @Override public BusinessOrder orderDetail(Long id) { BusinessOrder businessOrder = this.baseMapper.selectById(id); @@ -91,29 +93,24 @@ return businessOrder; } - @Override - public ReturnDTO deleteOrder(Long id) { - Integer deleteFlag = this.baseMapper.deleteById(id); - if (deleteFlag > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - // 删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override public ReturnDTO updateOrder(BusinessOrder businessOrder) { - Integer updateFlag = this.baseMapper.updateById(businessOrder); - this.sampleStatusDeletor(businessOrder.getId()); - Boolean sampleUpdateFlag = true; + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); + this.deleteSampleById(businessOrder.getId()); + boolean sampleUpdateFlag = true; this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals("200"); + sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); sampleUpdateFlag = sampleUpdateFlag && returnDTO.getCode() == 200; @@ -126,25 +123,27 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //删除样品和委托书的明细关系,填充传输的明细样品数据, - // 对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + /** + * 1、删除样品和委托书的明细关系,填充传输的明细样品数据 + * 2、对样品进行是否在库的判断,如果不存在则入库, 入库操作完成,进行委托书样品关系的绑定 + */ @Override @Transactional public ReturnDTO addOrder(BusinessOrder businessOrder) { initOrderInfo(businessOrder); - Integer addFlag = this.baseMapper.insert(businessOrder); - Boolean sampleAddFlag = true; - this.sampleStatusDeletor(businessOrder.getId()); + int addFlag = this.baseMapper.insert(businessOrder); + boolean sampleAddFlag = true; + this.deleteSampleById(businessOrder.getId()); this.doSampleListPopulation(businessOrder); for (CustomerSampleInfo sampleInfo : businessOrder.getCustomerSampleInfoList()) { sampleInfo.setDeliverer(businessOrder.getDeliverer()); sampleInfo.setDelivererTel(businessOrder.getDelivererTel()); - if (sampleInfo.getIsExistSample().equals("0")) { + if ("0".equals(sampleInfo.getIsExistSample())) { ReturnDTO returnDTO = customerSampleService.addSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } else { ReturnDTO returnDTO = customerSampleService.updateSample(sampleInfo); - sampleAddFlag = sampleAddFlag && returnDTO.getCode() == 200; + sampleAddFlag = sampleAddFlag && returnDTO.getCode().equals(200); } sampleAddFlag = sampleAddFlag && sampleStatusCreator(sampleInfo.getOrderId(), sampleInfo.getMeasureContent(), sampleInfo.getId()) > 0; } @@ -154,52 +153,71 @@ throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //如查询说明,补充对是否加急的excel文档表现 + /** + * 如查询说明,补充对是否加急的excel文档表现 + */ @Override public void orderExport(OrderListRequest request, HttpServletResponse response) { try { - List orderListReponseList; + List orderResponseList; if (!CollectionUtils.isEmpty(request.getIds())) { - orderListReponseList = orderListReponseMapper.selectBatchIds(request.getIds()); + orderResponseList = orderListResponseMapper.selectBatchIds(request.getIds()); } else { QueryWrapper wrapper = listParamWrapper(request); - orderListReponseList = this.orderListReponseMapper.selectList(wrapper); + orderResponseList = this.orderListResponseMapper.selectList(wrapper); } List orderSampleList = sampleRelationMapper.selectList(null); Map> orderSampleMap = orderSampleList.stream().collect( Collectors.groupingBy(BusinessOrderSampleRelation::getOrderId) ); - orderListReponseList.forEach( + orderResponseList.forEach( orderSample -> orderSample.setSampleCount(orderSampleMap.containsKey(orderSample.getId()) ? orderSampleMap.get(orderSample.getId()).size() : 0) ); - for (OrderListReponse orderListReponse : orderListReponseList) { - orderListReponse.setIsUrgent(orderListReponse.getIsUrgent().equals("1") ? "是" : "否"); + for (OrderListReponse orderListReponse : orderResponseList) { + orderListReponse.setIsUrgent("1".equals(orderListReponse.getIsUrgent()) ? "是" : "否"); DictCodeUtils.convertDictCodeToName(orderListReponse); } - iBaseExportService.exportExcel(response, OrderListReponse.class, orderListReponseList, ExportEnum.ORDER_EXPORT.getSheetName()); + iBaseExportService.exportExcel(response, OrderListReponse.class, orderResponseList, ExportEnum.ORDER_EXPORT.getSheetName()); } catch (Exception ex) { log.error("委托书导出出现异常,异常信息为{}", ex); } } + /** + * 通过状态对委托书状态进行更新 + */ @Override public ReturnDTO updateStatusById(Long id, String status) { BusinessOrder businessOrder = new BusinessOrder(); businessOrder.setId(id); businessOrder.setStatus(status); - Integer updateFlag = this.baseMapper.updateById(businessOrder); + AuthUser authUser = ShiroKit.getUser(); + businessOrder.setUpdateUser(authUser.getId()); + int updateFlag = this.baseMapper.updateById(businessOrder); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } + @Override + @Transactional + public ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest) { + ReturnDTO returnDTO = this.updateStatusById(orderCancelRequest.getOrderId(), "3"); + if (returnDTO.getCode().equals(200)) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + private void initOrderInfo(BusinessOrder businessOrder) { Long maxNo = this.baseMapper.selectMaxCOrderNo(); String orderNo = NumberGeneratorUtil.getContactNo("wtsc", maxNo); AuthUser authUser = ShiroKit.getUser(); businessOrder.setCreateUser(authUser.getId()); + businessOrder.setUpdateUser(authUser.getId()); businessOrder.setOrderCode(orderNo); businessOrder.setStatus("1"); } @@ -223,21 +241,19 @@ return queryWrapper; } - private Integer sampleStatusDeletor(Long orderId) { + private int deleteSampleById(Long orderId) { QueryWrapper sampleStatusRelationWrapper = new QueryWrapper() .eq("order_id", orderId); - Integer sampleStatus = this.sampleRelationMapper.delete(sampleStatusRelationWrapper); - return sampleStatus; + return this.sampleRelationMapper.delete(sampleStatusRelationWrapper); } - private Integer sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { + private int sampleStatusCreator(Long orderId, String measureContent, Long sampleId) { BusinessOrderSampleRelation sampleStatusPopulation = new BusinessOrderSampleRelation(); sampleStatusPopulation.setOrderId(orderId); sampleStatusPopulation.setSampleId(sampleId); sampleStatusPopulation.setMeasureContent(measureContent); sampleStatusPopulation.setMeasureType("1"); - Integer sampleStatus = this.sampleRelationMapper.insert(sampleStatusPopulation); - return sampleStatus; + return this.sampleRelationMapper.insert(sampleStatusPopulation); } private void doSampleListPopulation(BusinessOrder businessOrder) { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java index e922dc2..07c88e9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/IBusinessDispatchServiceImpl.java @@ -1,5 +1,6 @@ package com.casic.missiles.service.Impl.business; +import com.alibaba.druid.sql.repository.SchemaResolveVisitor; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -11,8 +12,6 @@ import com.casic.missiles.dto.business.dispatch.DeviceDispatchDTO; import com.casic.missiles.dto.business.dispatch.DeviceDispatchVO; import com.casic.missiles.dto.business.dispatch.DeviceStatusChangeDTO; -import com.casic.missiles.dto.business.interchange.InterchangeListResponse; -import com.casic.missiles.dto.meter.TrainPlanApprovalListResponse; import com.casic.missiles.enums.*; import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.sample.CurrentSegmentEnum; @@ -21,20 +20,22 @@ import com.casic.missiles.mapper.business.*; import com.casic.missiles.model.business.*; import com.casic.missiles.service.business.IBusinessDispatchService; -import com.casic.missiles.utils.ConvertUtils; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.util.ObjectUtils; -import org.springframework.util.StringUtils; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Objects; import java.util.Optional; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -45,84 +46,59 @@ private final BusinessLabExecutiveInfoMapper labExecutiveInfoMapper; private final IBaseExportService iBaseExportService; - //终止、回退、收入、归还、催办按钮 - //列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + /** + * 终止、回退、收入、归还、催办按钮 + * 列表返回只需要控制已收入回退按钮显示的权限即可,其中回退在没有任何实验室进行的情况,可以进行设备的回退 + */ @Override public Page listPage(Page page, DeviceDispatchDTO request) { -// //查询委托书和样品关联表中的各状态的样品 - Page dispatchVOPage = orderSampleRelationMapper.getSampleListByStatus(page, request); + //查询委托书和样品关联表中的各状态的样品 + Page dispatchVoPage = orderSampleRelationMapper.getSampleListByStatus(page, request); log.info("设备收发-当前查询样品状态为:{}", request.getSampleStatus()); - List records = dispatchVOPage.getRecords(); + List records = dispatchVoPage.getRecords(); if (CollectionUtils.isEmpty(records)) { return new Page<>(); } - doDispatchVOPagePopution(records, request); - return dispatchVOPage; - } - - - //进行已收入分页的当前环节回填、出具证书回填 - private void doDispatchVOPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { - dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_ALLOCATE); - HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); - // - if (!Objects.isNull(handOutLabExecutiveDTO)) { - dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); - dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); - Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); - dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); - } else { - dispatchVO.setAlreadyCertifications(0); - dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); - } - if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { - dispatchVO.setFallbackState(0);//不可以进行回退 - } else { - dispatchVO.setFallbackState(1);//可以进行回退 - } + doPopulateDispatch(records, request); + return dispatchVoPage; } /** - * 重点填充类 - * - * @param dispatchVOPage - * @param request + * 分发列表填充 */ - private void doDispatchVOPagePopution(List dispatchVOPage, DeviceDispatchDTO request) { - dispatchVOPage.stream().forEach( + private void doPopulateDispatch(List dispatchVOPage, DeviceDispatchDTO request) { + dispatchVOPage.forEach( dispatchVO -> { Long orderId = dispatchVO.getOrderId(); Long sampleId = dispatchVO.getSampleId(); String sampleStatus = dispatchVO.getSampleStatus(); //先过滤超期状态下的外检外包 - if (!StringUtils.isEmpty(request.getSampleStatus()) && request.getSampleStatus().equals("8") && noSelfMeasure(dispatchVO)) { + if (!StringUtils.isEmpty(request.getSampleStatus()) && SampleStatusEnum.BE_OVERDUE.equals(request.getSampleStatus()) && notSelfMeasure(dispatchVO)) { return; } switch (sampleStatus) { - //待分发状态,分发性质:有退回就是退回分发,当前检定环节:待分配,已出具证书:无,出具证书总数:无 + //待分发状态,当前检定环节:待分配,已出具证书:无,出具证书总数:无 case SampleStatusEnum.TO_HANDOUT: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测中状态,分发性质:无,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 + //检测中状态,当前检定环节:具体实验室,已出具证书:查询证书报告表,证书总数:具体实验室 case SampleStatusEnum.IN_MEASURE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //检测完状态,分发性质:无,当前检定环节:完成,已出具证书:无,出具证书总数:无 + //检测完状态,当前检定环节:完成,已出具证书:无,出具证书总数:无 case SampleStatusEnum.MEASURE_COMPLETE: - doDispatchVOPopulation(dispatchVO, sampleId, orderId); - break; - //超期样品(即检测超期,未在应检完时间检完),分发性质:无,当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 + doDispatchVoPopulation(dispatchVO, sampleId, orderId); + return; + //超期样品(即检测超期,未在应检完时间检完),当前检定环节:待分配/具体实验室,已出具证书:查询证书报告表(具体实验室),出具证书总数:具体实验室 case SampleStatusEnum.BE_OVERDUE: HandOutLabExecutiveDTO overLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); - Long deptId = overLabExecutiveDTO.getMeasureDeptId(); + Long deptId = Optional.of(overLabExecutiveDTO.getMeasureDeptId()).orElse(null); dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, deptId)); dispatchVO.setRequireCertifications(overLabExecutiveDTO.getRequireCertifications()); - if (checkSampleFinshStauts(dispatchVO)) { + // 判断样品是完成或接收状态,直接显示即可 + if (checkSampleFinishStatus(dispatchVO)) { return; } dispatchVO.setCurrentSegment(overLabExecutiveDTO.getDeptName()); break; + default: + break; } } ); @@ -131,8 +107,7 @@ @Override public void exportSampleDispatchList(DeviceDispatchDTO request, HttpServletResponse response) { try { - - Page deviceDispatchVOPage = PageFactory.defaultPage(); + Page deviceDispatchVOPage; if (!CollectionUtils.isEmpty(request.getIds())) { initDeviceDispatchDTOEmpty(request); } else { @@ -150,29 +125,59 @@ } + /** + * 状态更新 + */ @Override public ReturnDTO statusChange(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFalg = this.statusChangeUpdator(deviceStatusChangeDTO, false); - if (updateFalg > 0) { - return ReturnUtil.success(); - } - throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); - } - - //终止操作,不仅更新状态,同时进行实验室状态的更新 - @Override - @Transactional - public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); - //实验室状态数据的更新 - reasonPopulation(deviceStatusChangeDTO); + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, false); if (updateFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - private void reasonPopulation(DeviceStatusChangeDTO deviceStatusChangeDTO) { + /** + * 终止操作,不仅更新状态,同时进行实验室状态原因的更新 + */ + @Override + @Transactional + public ReturnDTO forcedTerminate(DeviceStatusChangeDTO deviceStatusChangeDTO) { + Integer updateFlag = this.statusChangeUpdator(deviceStatusChangeDTO, true); + //实验室状态数据的更新 + updateLabExecutiveInfo(deviceStatusChangeDTO); + if (updateFlag > 0) { + return ReturnUtil.success(); + } + throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); + } + + /** + * 进行已收入分页的当前环节回填、出具证书回填 + */ + private void doDispatchVoPopulation(DeviceDispatchVO dispatchVO, Long sampleId, Long orderId) { + dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); + HandOutLabExecutiveDTO handOutLabExecutiveDTO = getHandOutLabExecutiveDTO(orderId, sampleId); + Integer measureNumberStatus = labExecutiveInfoMapper.getMeasureNumberStatus(orderId, sampleId); + //证书,当前环节的回填 + if (!Objects.isNull(handOutLabExecutiveDTO)) { + dispatchVO.setRequireCertifications(handOutLabExecutiveDTO.getRequireCertifications()); + dispatchVO.setCurrentSegment(handOutLabExecutiveDTO.getDeptName()); + Long measureDeptId = handOutLabExecutiveDTO.getMeasureDeptId(); + dispatchVO.setAlreadyCertifications(getAlreadyCertificateNum(dispatchVO, measureDeptId)); + } else { + dispatchVO.setAlreadyCertifications(0); + dispatchVO.setRequireCertifications(ObjectUtils.isEmpty(measureNumberStatus) ? 0 : measureNumberStatus); + } + //处于检测中、检测完、待检测的实验室大于0,不可以进行回退,否则可以进行回退 + if (!ObjectUtils.isEmpty(measureNumberStatus) && measureNumberStatus > 0) { + dispatchVO.setFallbackState(0); + } else { + dispatchVO.setFallbackState(1); + } + } + + private void updateLabExecutiveInfo(DeviceStatusChangeDTO deviceStatusChangeDTO) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("sample_id", deviceStatusChangeDTO.getSampleId()); queryWrapper.eq("order_id", deviceStatusChangeDTO.getOrderId()); @@ -182,10 +187,13 @@ labExecutiveInfoMapper.update(businessLabExecutiveInfo, queryWrapper); } + /** + * 消息催办 + */ @Override public ReturnDTO rushDoProcess(DeviceStatusChangeDTO deviceStatusChangeDTO) { - Integer deleteFalg = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); - if (deleteFalg > 0) { + int deleteFlag = this.baseMapper.deleteById(deviceStatusChangeDTO.getOrderId()); + if (deleteFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); @@ -203,7 +211,7 @@ return null; } Optional handOutLabExecutiveDTOOptional = labExecutiveList.stream().findFirst(); - return handOutLabExecutiveDTOOptional.isPresent() ? handOutLabExecutiveDTOOptional.get() : null; + return handOutLabExecutiveDTOOptional.orElse(null); } private QueryWrapper getCertificateReportWrapper(DeviceDispatchVO dispatchVO, Long deptId) { @@ -214,7 +222,9 @@ return wrapper; } - //更新检测完成后,执行当前正在进行数据 + /** + * 更新检测完成后,执行当前正在进行数据 + */ private Integer statusChangeUpdator(DeviceStatusChangeDTO statusChangeDTO, Boolean terminateFlag) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("order_id", statusChangeDTO.getOrderId()); @@ -227,15 +237,18 @@ return this.orderSampleRelationMapper.update(businessOrderSampleRelation, queryWrapper); } - //判断不是自检 - private Boolean noSelfMeasure(DeviceDispatchVO dispatchVO) { - if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType()) && (dispatchVO.getMeasureType().equals("1") || dispatchVO.getMeasureType().equals("2"))) { - String currentSegment = dispatchVO.getMeasureType().equals("1") ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; - dispatchVO.setCurrentSegment(currentSegment); - return true; - } else { - return false; + /** + * 判断不是自检 + */ + private boolean notSelfMeasure(DeviceDispatchVO dispatchVO) { + if (!ObjectUtils.isEmpty(dispatchVO.getMeasureType())) { + if (MeasureStatusEnum.TO_ALLOCATE.equals(String.valueOf(dispatchVO.getMeasureType())) || MeasureStatusEnum.TO_MEASURE.equals(String.valueOf(dispatchVO.getMeasureType()))) { + String currentSegment = MeasureStatusEnum.TO_ALLOCATE.equals(dispatchVO.getMeasureType()) ? CurrentSegmentEnum.OUT_UNDERTAKE : CurrentSegmentEnum.OUT_MESASUR; + dispatchVO.setCurrentSegment(currentSegment); + return true; + } } + return false; } private void initDeviceDispatchDTOEmpty(DeviceDispatchDTO request) { @@ -250,8 +263,10 @@ request.setEndTime(null); } - // 判断样品是完成或接收状态,直接显示即可 - private Boolean checkSampleFinshStauts(DeviceDispatchVO dispatchVO) { + /** + * 判断样品是完成或接收状态,直接显示即可 + */ + private Boolean checkSampleFinishStatus(DeviceDispatchVO dispatchVO) { if (SampleStatusEnum.TO_RECEIVE.equals(dispatchVO.getSampleStatus())) { dispatchVO.setCurrentSegment(CurrentSegmentEnum.TO_INCOME); return true; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java index eecf207..4f06678 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerAdviceServiceImpl.java @@ -28,6 +28,9 @@ import javax.servlet.http.HttpServletResponse; import java.util.List; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -58,7 +61,7 @@ @Override public ReturnDTO deleteAdvice(Long id) { - Integer deleteFlag = customerAdviceMapper.deleteById(id); + int deleteFlag = customerAdviceMapper.deleteById(id); if (deleteFlag > 0) { return ReturnUtil.success(); } @@ -67,7 +70,7 @@ @Override public ReturnDTO updateAdvice(CustomerAdviceInfo customerAdviceInfo) { - Integer updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); + int updateFlag = customerAdviceMapper.updateById(customerAdviceInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -77,7 +80,7 @@ @Override public ReturnDTO addAdvice(CustomerAdviceInfo customerAdviceInfo) { initCustomerAdviceInfo(customerAdviceInfo); - Integer addFlag = customerAdviceMapper.insert(customerAdviceInfo); + int addFlag = customerAdviceMapper.insert(customerAdviceInfo); if (addFlag > 0) { return ReturnUtil.success(); } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java index 79a776b..3bbcaaf 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerSampleServiceImpl.java @@ -55,7 +55,7 @@ public Page listPage(Page page, CustomerSampleListRequest request) throws Exception { QueryWrapper wrapper = listParamWrapper(request); Page customerSamplePage = customerSampleListResponseMapper.selectPage(page, wrapper); - customerSamplePage.getRecords().stream() + customerSamplePage.getRecords() .forEach(customerSample -> { BusinessOrderSampleRelation businessOrderSampleRelation = this.getSampleStatusById(customerSample.getId()); if (!ObjectUtils.isEmpty(businessOrderSampleRelation)) { @@ -72,26 +72,30 @@ return customerSamplePage; } - //新增样品表,同时新增样品委托书关联状态表 + /** + * 新增样品表,同时新增样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO addSample(CustomerSampleInfo customerSampleInfo) { initSample(customerSampleInfo); - Integer addFlag = this.baseMapper.insert(customerSampleInfo); + int addFlag = this.baseMapper.insert(customerSampleInfo); if (addFlag > 0) { return ReturnUtil.success(); } throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } - //更新样品表,同时更新样品委托书关联状态表 + /** + * 更新样品表,同时更新样品委托书关联状态表 + */ @Override @Transactional public ReturnDTO updateSample(CustomerSampleInfo customerSampleInfo) { AuthUser authUser = ShiroKit.getUser(); customerSampleInfo.setUpdateUser(authUser.getId()); initSample(customerSampleInfo); - Integer updateFlag = this.baseMapper.updateById(customerSampleInfo); + int updateFlag = this.baseMapper.updateById(customerSampleInfo); if (updateFlag > 0) { return ReturnUtil.success(); } @@ -110,8 +114,6 @@ /** * 只导出样品列表信息 * - * @param request - * @param response */ @Override public void sampleExport(CustomerSampleListRequest request, HttpServletResponse response) { @@ -148,9 +150,8 @@ } @Override - @Transactional public ReturnDTO deleteSample(Long id) { - Integer deleteFalg = this.baseMapper.deleteById(id); + int deleteFalg = this.baseMapper.deleteById(id); if (deleteFalg > 0) { return ReturnUtil.success(); } @@ -158,12 +159,12 @@ } @Override - public Page mesureRecordsBySampleId(Long id) { + public Page measureRecordsBySampleId(Long id) { Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("sample_id", id); - Page mesureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = mesureResponseMapper.selectPage(page, wrapper); + return measureRecordsResponsePage; } @Override @@ -197,12 +198,12 @@ private QueryWrapper listParamWrapper(CustomerSampleListRequest request) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.select("id,sample_no,sample_name,sample_model,manufacturing_no,customer_id,measure_period,measure_last_time,remark,valid_deadline"); - queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo());//样品编号 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName());//样品名称 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong());//样品所属 - queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel());//样品型号 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName());//委托方名称 - queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo());//委托方代码 + queryWrapper.like(StringUtils.isNotBlank(request.getSampleNo()), "sample_no", request.getSampleNo()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleName()), "sample_name", request.getSampleName()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleBelong()), "sample_belong", request.getSampleBelong()); + queryWrapper.like(StringUtils.isNotBlank(request.getSampleModel()), "sample_model", request.getSampleModel()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerName()), "customer_name", request.getCustomerName()); + queryWrapper.like(StringUtils.isNotBlank(request.getCustomerNo()), "customer_no", request.getCustomerNo()); if (!StringUtils.isEmpty(request.getOvertimeStatus())) { queryWrapper.apply(request.getOvertimeStatus().equals("1"), "sysdate() > DATE_FORMAT(valid_deadline,'%Y-%m-%d')"); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java index 62c4a00..32d4dee 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerServiceImpl.java @@ -70,7 +70,7 @@ @Transactional public ReturnDTO addCustomer(CustomerInfo customerInfo) { initCustomerInfo(customerInfo); - Integer addFlag = this.baseMapper.insert(customerInfo); + int addFlag = this.baseMapper.insert(customerInfo); Boolean userAddFlag = userInfoListCreator(customerInfo.getCustomerUserList(), customerInfo.getId()); if (addFlag > 0 && userAddFlag) { return ReturnUtil.success(); @@ -84,7 +84,7 @@ AuthUser authUser = ShiroKit.getUser(); customerInfo.setUpdateUser(authUser.getId()); userInfoListDeletor(customerInfo.getId()); - Integer updateFlag = this.baseMapper.updateById(customerInfo); + int updateFlag = this.baseMapper.updateById(customerInfo); Boolean userUpdateFlag = userInfoListCreator(customerInfo.getCustomerUserList(),customerInfo.getId()); if (updateFlag > 0 && userUpdateFlag) { return ReturnUtil.success(); @@ -102,7 +102,7 @@ @Override public ReturnDTO deleteCustomer(Long id) { CustomerInfo customerInfo = this.baseMapper.selectById(id); - Integer deleteFlag = this.baseMapper.deleteById(id); + int deleteFlag = this.baseMapper.deleteById(id); userInfoListDeletor(customerInfo.getId()); if (deleteFlag > 0) { return ReturnUtil.success(); @@ -116,8 +116,7 @@ QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", customerId); queryWrapper.orderByDesc("create_time"); - Page sampleRecordsResponsePage = sampleRecordsResponseMapper.selectPage(page, queryWrapper); - return sampleRecordsResponsePage; + return sampleRecordsResponseMapper.selectPage(page, queryWrapper); } @@ -129,9 +128,8 @@ @Override//暂定不做 public Page mesureRecordsByCustomerId(Long customerId) { - Page mesureRecordsResponsePage = PageFactory.defaultPage(); - - return mesureRecordsResponsePage; + Page measureRecordsResponsePage = PageFactory.defaultPage(); + return measureRecordsResponsePage; } @Override @@ -139,8 +137,7 @@ Page page = PageFactory.defaultPage(); QueryWrapper wrapper = new QueryWrapper() .eq("customer_id", customerId); - Page certificationResponsePage = certificationMapper.selectPage(page, wrapper); - return certificationResponsePage; + return certificationMapper.selectPage(page, wrapper); } @Override @@ -185,8 +182,7 @@ private List customerUserDetail(Long id) { QueryWrapper queryWrapper = new QueryWrapper<>(); queryWrapper.eq("customer_id", id); - List customerUserInfoList = customerUserMapper.selectList(queryWrapper); - return customerUserInfoList; + return customerUserMapper.selectList(queryWrapper); } private void userInfoListDeletor(Long customerId) { @@ -197,12 +193,12 @@ private Boolean userInfoListCreator(List userInfoList, Long id) { Long maxUserNo = customerUserMapper.selectMaxUserNo(); - Boolean userUpdateFlag = true; + boolean userUpdateFlag = true; for (CustomerUserInfo customerUserInfo : userInfoList) { customerUserInfo.setCustomerId(id); String customerNo = NumberGeneratorUtil.getContactNo("khyh", maxUserNo++); customerUserInfo.setUserNo(customerNo); - Integer userAddNum = customerUserMapper.insert(customerUserInfo); + int userAddNum = customerUserMapper.insert(customerUserInfo); if (userAddNum <= 0) { userUpdateFlag = false; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java index d816cb8..c9997c5 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/customer/CustomerWorkbenchServiceImpl.java @@ -11,6 +11,9 @@ import java.util.*; import java.util.stream.Collectors; +/** + * @author cz + */ @Service @Slf4j @AllArgsConstructor @@ -24,8 +27,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -34,8 +36,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("expireTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } @Override @@ -44,8 +45,7 @@ Map trendMap = sampleList.stream().collect( Collectors.toMap(e -> String.valueOf(e.get("increaseTime")), e -> String.valueOf(e.get("count"))) ); - List trendResponseList = recentYearBuilder(trendMap); - return trendResponseList; + return recentYearBuilder(trendMap); } // 鉴定金额暂时没有表设计,loading... @@ -64,10 +64,10 @@ Calendar endDate = Calendar.getInstance(); endDate.setTime(new Date()); while (beginDate.getTime().compareTo(endDate.getTime()) <= 0) { - WorkbenceTrendResponse workbenceResponse = new WorkbenceTrendResponse(); - workbenceResponse.setDate(sdf2.format(beginDate.getTime())); - workbenceResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); - mapList.add(workbenceResponse); + WorkbenceTrendResponse workBenchResponse = new WorkbenceTrendResponse(); + workBenchResponse.setDate(sdf2.format(beginDate.getTime())); + workBenchResponse.setCount(trendMap.containsKey(sdf1.format(beginDate.getTime())) ? trendMap.get(sdf1.format(beginDate.getTime())) : "0"); + mapList.add(workBenchResponse); beginDate.add(Calendar.MONTH, 1); } return mapList; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java index b81d0a4..061ffd0 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificatePrintService.java @@ -17,7 +17,7 @@ void certificatePrintExport(CertificateListRequest request, HttpServletResponse response, Page page) throws Exception; - ReturnDTO agreeAginPrint(ApprovalAgreeRequest request); + ReturnDTO agreeAgainPrint(ApprovalAgreeRequest request); ReturnDTO refuseAgainPrint(CertificateRefusePrintRequest request); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java index 2292404..0c2aeb2 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessDispatchService.java @@ -8,6 +8,9 @@ import javax.servlet.http.HttpServletResponse; +/** + * @author cz + */ public interface IBusinessDispatchService { Page listPage(Page page, DeviceDispatchDTO request); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java index 7528613..335ea1c 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessOrderService.java @@ -3,9 +3,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.business.order.OrderCancelRequest; import com.casic.missiles.dto.business.order.OrderListReponse; import com.casic.missiles.dto.business.order.OrderListRequest; -import com.casic.missiles.dto.customer.advice.CustomerAdviceListRequest; import com.casic.missiles.model.business.BusinessOrder; import javax.servlet.http.HttpServletResponse; @@ -24,8 +24,6 @@ BusinessOrder orderDetail(Long id); - ReturnDTO deleteOrder(Long id); - ReturnDTO updateOrder(BusinessOrder businessOrder); ReturnDTO addOrder(BusinessOrder businessOrder); @@ -34,4 +32,7 @@ ReturnDTO updateStatusById(Long id,String status); + ReturnDTO cancelOrder(OrderCancelRequest orderCancelRequest); + + } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java index 461d76d..2c4f179 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/customer/CustomerSampleService.java @@ -24,7 +24,7 @@ ReturnDTO deleteSample(Long id); - Page mesureRecordsBySampleId(Long id); + Page measureRecordsBySampleId(Long id); Page certificationBySampleId(Long id);