diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ - SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS "certificateName",csi.sample_no AS "sampleNo", - csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS "manufacturingNo",bo.order_code AS "orderNo", - csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS "printStatus",bcr.print_num AS "printNum", - bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS "measurePersonId" + SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS + "certificateName",csi.sample_no AS "sampleNo", + csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS + "manufacturingNo",bo.order_code AS "orderNo", + csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS + "printStatus",bcr.print_num AS "printNum", + bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS + "measurePersonId" FROM ( - SELECT * - FROM business_certificate_report - WHERE is_del = 0 - - and certificate_report_code like concat('%',#{request.certificateNo},'%') - - - and certificate_report_category like concat('%',#{request.certificateClass},'%') - - - and print_status = #{request.printStatus} - - - and id in - - #{id} - - - - and id in - - #{id} - - + SELECT * + FROM business_certificate_report + WHERE is_del = 0 + + and certificate_report_code like concat('%',#{request.certificateNo},'%') + + + and certificate_report_category like concat('%',#{request.certificateClass},'%') + + + and print_status = #{request.printStatus} + + + and bcr.id in + + #{id} + + + + and bcr.id in + + #{id} + + ) bcr JOIN ( - SELECT * - FROM business_order - WHERE is_del=0 - - and ORDER_CODE like concat('%',#{request.orderNo},'%') - - - and CUSTOMER_NAME like concat('%',#{request.customerName},'%') - + SELECT * + FROM business_order + WHERE is_del=0 + + and ORDER_CODE like concat('%',#{request.orderNo},'%') + + + and CUSTOMER_NAME like concat('%',#{request.customerName},'%') + ) bo ON bo.id=bcr.order_id JOIN ( - SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type - FROM customer_sample_info - WHERE is_del=0 - - and SAMPLE_NO like concat('%',#{request.sampleNo},'%') - - - and SAMPLE_NAME like concat('%',#{request.sampleName},'%') - + SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type + FROM customer_sample_info + WHERE is_del=0 + + and SAMPLE_NO like concat('%',#{request.sampleNo},'%') + + + and SAMPLE_NAME like concat('%',#{request.sampleName},'%') + ) csi ON csi.id=bcr.sample_id - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ - SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS "certificateName",csi.sample_no AS "sampleNo", - csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS "manufacturingNo",bo.order_code AS "orderNo", - csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS "printStatus",bcr.print_num AS "printNum", - bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS "measurePersonId" + SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS + "certificateName",csi.sample_no AS "sampleNo", + csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS + "manufacturingNo",bo.order_code AS "orderNo", + csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS + "printStatus",bcr.print_num AS "printNum", + bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS + "measurePersonId" FROM ( - SELECT * - FROM business_certificate_report - WHERE is_del = 0 - - and certificate_report_code like concat('%',#{request.certificateNo},'%') - - - and certificate_report_category like concat('%',#{request.certificateClass},'%') - - - and print_status = #{request.printStatus} - - - and id in - - #{id} - - - - and id in - - #{id} - - + SELECT * + FROM business_certificate_report + WHERE is_del = 0 + + and certificate_report_code like concat('%',#{request.certificateNo},'%') + + + and certificate_report_category like concat('%',#{request.certificateClass},'%') + + + and print_status = #{request.printStatus} + + + and bcr.id in + + #{id} + + + + and bcr.id in + + #{id} + + ) bcr JOIN ( - SELECT * - FROM business_order - WHERE is_del=0 - - and ORDER_CODE like concat('%',#{request.orderNo},'%') - - - and CUSTOMER_NAME like concat('%',#{request.customerName},'%') - + SELECT * + FROM business_order + WHERE is_del=0 + + and ORDER_CODE like concat('%',#{request.orderNo},'%') + + + and CUSTOMER_NAME like concat('%',#{request.customerName},'%') + ) bo ON bo.id=bcr.order_id JOIN ( - SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type - FROM customer_sample_info - WHERE is_del=0 - - and SAMPLE_NO like concat('%',#{request.sampleNo},'%') - - - and SAMPLE_NAME like concat('%',#{request.sampleName},'%') - + SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type + FROM customer_sample_info + WHERE is_del=0 + + and SAMPLE_NO like concat('%',#{request.sampleNo},'%') + + + and SAMPLE_NAME like concat('%',#{request.sampleName},'%') + ) csi ON csi.id=bcr.sample_id - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ - SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS "certificateName",csi.sample_no AS "sampleNo", - csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS "manufacturingNo",bo.order_code AS "orderNo", - csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS "printStatus",bcr.print_num AS "printNum", - bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS "measurePersonId" + SELECT bcr.id,bcr.certificate_report_code AS "certificateNo",bcr.certificate_report_name AS + "certificateName",csi.sample_no AS "sampleNo", + csi.sample_name AS "sampleName",csi.sample_model AS "sampleModel",csi.manufacturing_no AS + "manufacturingNo",bo.order_code AS "orderNo", + csi.measure_type AS "measureType",bcr.certificate_report_type AS "certificateType",bcr.print_status AS + "printStatus",bcr.print_num AS "printNum", + bcr.approval_status AS "approvalStatus",bcr.create_time AS "createTime",bcr.measure_person_id AS + "measurePersonId" FROM ( - SELECT * - FROM business_certificate_report - WHERE is_del = 0 - - and certificate_report_code like concat('%',#{request.certificateNo},'%') - - - and certificate_report_category like concat('%',#{request.certificateClass},'%') - - - and print_status = #{request.printStatus} - - - and id in - - #{id} - - - - and id in - - #{id} - - + SELECT * + FROM business_certificate_report + WHERE is_del = 0 + + and certificate_report_code like concat('%',#{request.certificateNo},'%') + + + and certificate_report_category like concat('%',#{request.certificateClass},'%') + + + and print_status = #{request.printStatus} + + + and bcr.id in + + #{id} + + + + and bcr.id in + + #{id} + + ) bcr JOIN ( - SELECT * - FROM business_order - WHERE is_del=0 - - and ORDER_CODE like concat('%',#{request.orderNo},'%') - - - and CUSTOMER_NAME like concat('%',#{request.customerName},'%') - + SELECT * + FROM business_order + WHERE is_del=0 + + and ORDER_CODE like concat('%',#{request.orderNo},'%') + + + and CUSTOMER_NAME like concat('%',#{request.customerName},'%') + ) bo ON bo.id=bcr.order_id JOIN ( - SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type - FROM customer_sample_info - WHERE is_del=0 - - and SAMPLE_NO like concat('%',#{request.sampleNo},'%') - - - and SAMPLE_NAME like concat('%',#{request.sampleName},'%') - + SELECT id,sample_no,sample_name,sample_model,manufacturing_no,measure_type + FROM customer_sample_info + WHERE is_del=0 + + and SAMPLE_NO like concat('%',#{request.sampleNo},'%') + + + and SAMPLE_NAME like concat('%',#{request.sampleName},'%') + ) csi ON csi.id=bcr.sample_id - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); 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 506885b..9fa94f8 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 @@ -165,6 +165,8 @@ } + + @Override public Page samplesByOderId(Page page, Long orderId, String sampleNo, String sampleName) { return this.baseMapper.samplesByOderId(page, orderId, sampleNo, sampleName); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); 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 506885b..9fa94f8 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 @@ -165,6 +165,8 @@ } + + @Override public Page samplesByOderId(Page page, Long orderId, String sampleNo, String sampleName) { return this.baseMapper.samplesByOderId(page, orderId, sampleNo, sampleName); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); 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 506885b..9fa94f8 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 @@ -165,6 +165,8 @@ } + + @Override public Page samplesByOderId(Page page, Long orderId, String sampleNo, String sampleName) { return this.baseMapper.samplesByOderId(page, orderId, sampleNo, sampleName); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +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.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); 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 506885b..9fa94f8 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 @@ -165,6 +165,8 @@ } + + @Override public Page samplesByOderId(Page page, Long orderId, String sampleNo, String sampleName) { return this.baseMapper.samplesByOderId(page, orderId, sampleNo, sampleName); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +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.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java index 8e91c42..81cb155 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -42,6 +43,9 @@ void originExport(CertificateReportApprovalRequest request, HttpServletResponse response); - Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; + boolean updateCertificateReportState(Long id); + Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; + + Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java index 1f03225..59f60ea 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/business/BusinessCertificateReportController.java @@ -6,6 +6,7 @@ import com.casic.missiles.core.page.PageFactory; import com.casic.missiles.core.page.PageInfoBT; import com.casic.missiles.dto.*; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -16,6 +17,7 @@ import com.casic.missiles.model.business.BusinessCertificateReport; import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.business.IBusinessCertificateReportService; +import com.casic.missiles.service.customer.CustomerSampleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.util.CollectionUtils; @@ -43,7 +45,8 @@ public class BusinessCertificateReportController extends ExportController { @Resource private IBusinessCertificateReportService certificateReportService; - + @Resource + private CustomerSampleService customerSampleService; @ApiOperation("证书报告记录导出") @PostMapping("/listExport") @@ -156,10 +159,19 @@ } + @ApiOperation("根据样品id/客户id查询检定证书") - @PostMapping("/RecordsById") + @PostMapping("/certificateRecordsById") public ReturnDTO> certificationBySampleId(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ return ReturnUtil.success(super.packForBT(certificateReportService.certificateRecordsById(customerSampleIdRequest))); } + + + @ApiOperation("根据样品id查询证书监控列表") + @PostMapping("/certificateMonitorsById") + public ReturnDTO> certificateMonitorsById(@RequestBody CustomerSampleIdRequest customerSampleIdRequest) throws Exception{ + return ReturnUtil.success(super.packForBT(certificateReportService.certificateMonitorsById(customerSampleIdRequest))); + } + } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java index 9499a7e..a0352db 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentFixedAssetsController.java @@ -130,7 +130,7 @@ public void exportExcel(@RequestBody @Valid FixedAssetRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ FixedAssetRequest fixedAssetRequest = new FixedAssetRequest(); fixedAssetRequest.setIds(request.getIds()); list = iEquipmentFixedAssetsService.list(fixedAssetRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java index c8b6298..f8076ca 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/equipment/EquipmentStandardEquipmentController.java @@ -100,7 +100,7 @@ public void exportExcel(@RequestBody @Valid StandardEquipmentRequest request) throws Exception { List list; DictCodeUtils.validDictCode(request); - if(CollectionUtils.isEmpty(request.getIds())){ + if(!CollectionUtils.isEmpty(request.getIds())){ StandardEquipmentRequest standardEquipmentRequest = new StandardEquipmentRequest(); standardEquipmentRequest.setIds(request.getIds()); list = meterStandardEquipmentService.list(standardEquipmentRequest); diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java index 2535dab..c95d6dc 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterFileController.java @@ -142,7 +142,7 @@ return meterFileService.updateFile(idDTO.getId()); } - @ApiOperation("文件删除(草稿和通过的调用)") + @ApiOperation("文件删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO delete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java index f72b29a..d773a83 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTraceSupplierController.java @@ -129,7 +129,7 @@ return null; } - @ApiOperation("溯源供方删除(草稿和通过的调用)") + @ApiOperation("溯源供方删除(草稿也调用该接口)") @PostMapping("/delete") @ResponseBody public ReturnDTO supplierDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java index 0c1afd9..de6976b 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/meter/MeterTrainController.java @@ -133,7 +133,7 @@ return null; } - @ApiOperation("培训计划删除(草稿和通过的调用)") + @ApiOperation("培训计划删除(草稿也调用该接口)") @PostMapping("/plan/delete") @ResponseBody public ReturnDTO planDelete(@RequestBody @Valid IdDTO idDTO) { diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java index 73fce0f..091b377 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/sys/DeptExtendController.java @@ -106,15 +106,13 @@ @PostMapping("/delete") @Permission @ResponseBody + @Transactional public ReturnDTO delete(@RequestBody IdVO dto) { LogObjectHolder.me().set(this.domainDeptService.getDeptName(dto.getId())); this.deptService.deleteDept(dto.getId()); //删除计量组织信息 - int deleteFlag = organizeService.deleteByDeptId(dto.getId()); - if(deleteFlag > 0){ - return ReturnUtil.success(); - } - return ReturnUtil.failed("删除组织失败"); + organizeService.deleteByDeptId(dto.getId()); + return ReturnUtil.success(); } diff --git a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java index 691aebd..68334d8 100644 --- a/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java +++ b/casic-metering-api/src/main/java/com/casic/missiles/controller/system/SystemController.java @@ -13,10 +13,10 @@ import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.ExportEnum; import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.model.system.SystemNotice; import com.casic.missiles.model.system.SystemSign; import com.casic.missiles.model.system.SystemTemplate; -import com.casic.missiles.model.exception.enums.CoreExceptionEnum; import com.casic.missiles.service.system.ISystemNoticeService; import com.casic.missiles.service.system.ISystemSignService; import com.casic.missiles.service.system.ISystemTemplateService; @@ -26,10 +26,7 @@ import org.springframework.stereotype.Controller; import org.springframework.util.CollectionUtils; import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.io.IOException; @@ -43,7 +40,7 @@ */ @Api(tags = "系统管理接口") @Controller -@RequestMapping("/system") + @RequestMapping("/system") public class SystemController extends ExportController { @Autowired private ISystemSignService signService; @@ -139,6 +136,13 @@ return signService.deleteBatchSign(idsDTO.getIds()); } + @ApiOperation("获取本人可使用签名/签章") + @GetMapping("/sign/usable") + @ResponseBody + public ReturnDTO> signUsable() { + return ReturnUtil.success(signService.usableSign()); + } + @ApiOperation("原始记录模板/证书报告模板列表(分页)") @PostMapping("/template/listPage") @ResponseBody diff --git a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java index d493bdd..4186936 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/config/swagger/SwaggerEntity.java @@ -28,7 +28,7 @@ /** 测量设备模块 */ EQUIPMENT("测量设备模块", - basePackage("com.casic.missiles.controller.customer"), + basePackage("com.casic.missiles.controller.equipment"), PathSelectors.any()), /** 审批操作按钮 */ diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java index a013d67..c27b98e 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/business/CertificatePrintStatusEnum.java @@ -16,4 +16,16 @@ * 审批中 */ String IN_APPROVAL = "3"; + + + /** + * 证书状态完成 + */ + String FINISHED = "已完成"; + + /** + * 证书状态未完成 + */ + String UNFINISHED = "未完成"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java index 2c0880e..c2af7d9 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/meter/MeterDictEnum.java @@ -43,4 +43,7 @@ //校验类别 String MEASURE_CATEGORY= "measureCategory"; + //证书类型 + String CERTIFICATION_CLASS= "certificationClass"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java index ebb9d60..a318a34 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/ActionStatusBeanEnum.java @@ -15,4 +15,6 @@ String LEASE_BEAN_NAME = "equipmentLeaseBean"; + String CERTIFICATE_REPORT_BEAN_NAME = "certificateReportBean"; + } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java index 9300729..2435309 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/notifyevent/AwareActionStatusEnum.java @@ -18,6 +18,7 @@ DEVICE_LEASE_CONSUMING(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_COLLECTING), DEVICE_LEASE_BORROWED(LEASE_BEAN_NAME, EquipmentApplyProcessEnum.WAIT_BORROWED), CERTIFICATE_PRINT_STATUS(CERTIFICATE_BEAN_NAME, ""), + CERTIFICATE_REPORT_STATUS(CERTIFICATE_REPORT_BEAN_NAME, ""), ACTION_STATUS_MAP(new HashMap() { { put(ApplyFromIdEnum.STANDARD_REVERT_APPROVAL, EQUIPMENT_APPLY_USE); @@ -32,6 +33,7 @@ put(ApplyFromIdEnum.DEVICE_CONSUMING_APPROVAL, DEVICE_LEASE_CONSUMING); // 设备领用申请 put(ApplyFromIdEnum.DEVICE_BORROW_APPROVAL, DEVICE_LEASE_BORROWED); // 设备借用申请 put(ApplyFromIdEnum.CERTIFICATE_PRINT_APPROVAL, CERTIFICATE_PRINT_STATUS); //证书打印审批通过状态回填 + put(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL, CERTIFICATE_REPORT_STATUS); //证书报告审批通过状态回填 } }); String actionBeanName; diff --git a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java index bbef828..5d16918 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/enums/system/ApplyFromIdEnum.java @@ -19,4 +19,5 @@ String DEVICE_FIX_APPROVAL = "sbglsbjxsq"; // 设备检修申请 String DEVICE_FIX_ACCEPTANCE = "sbglsbjxbyysd"; // 设备检修保养验收单 String CERTIFICATE_PRINT_APPROVAL = "ywglzsdy"; // 证书打印通过 + String CERTIFICATE_REPORT_APPROVAL = "ywglzsbg"; // 证书报告通过 } diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java deleted file mode 100644 index 1399186..0000000 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessListener.java +++ /dev/null @@ -1,21 +0,0 @@ -package com.casic.missiles.listeners.flowable; - -import org.flowable.engine.delegate.DelegateExecution; -import org.flowable.engine.delegate.ExecutionListener; -import org.springframework.stereotype.Component; - -/** - * @Description: 流程监听器 - * @Author: wangpeng - * @Date: 2022/12/27 9:54 - */ -@Component -public class ProcessListener implements ExecutionListener { - - @Override - public void notify(DelegateExecution execution) { - // TODO: 2022/12/27 查询已通过的流程通过.finished()方法,若.finished()验证可以实现则无需使用该监听器 - //设置流程已通过状态,流程状态维护在实例变量中 -// execution.setVariable(PROCESS_STATUS, ApprovalStatusEnum.PASSED); - } -} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java index 8ac418f..3769c86 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/flowable/ProcessUpdateStateListener.java @@ -2,19 +2,12 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.notifyevent.AwareActionStatusEnum; -import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; -import com.casic.missiles.enums.BusinessExceptionEnum; -import com.casic.missiles.enums.equipment.EquipmentApplyProcessEnum; -import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; -import com.casic.missiles.mapper.equipment.*; import com.casic.missiles.mapper.system.SystemFlowFormMapper; import com.casic.missiles.mapper.workbench.WorkbenchApprovalMessageMapper; -import com.casic.missiles.model.equipment.*; import com.casic.missiles.model.system.SystemFlowForm; import com.casic.missiles.model.workbench.WorkbenchApprovalMessage; import com.casic.missiles.modular.system.dao.UserMapper; @@ -30,6 +23,8 @@ import org.springframework.stereotype.Component; import org.springframework.transaction.annotation.Transactional; +import java.util.Objects; + @Slf4j @Component public class ProcessUpdateStateListener implements ExecutionListener { @@ -48,13 +43,15 @@ // 查出流程定义信息 SystemFlowForm systemFlowForm = flowFormMapper.selectOne(wrapper); String id = execution.getProcessInstanceBusinessKey(); - AwareActionStatusEnum notifyActionStatusEnum= AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); - NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() - .id(id) - .status(notifyActionStatusEnum.getStatus()).build(); - NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); - if (postProcessor != null) { - postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + AwareActionStatusEnum notifyActionStatusEnum = AwareActionStatusEnum.ACTION_STATUS_MAP.getActionStatusMap().get(systemFlowForm.getFormId()); + if (null != notifyActionStatusEnum) { + NotifyEventStatusDTO notifyEventStatusDTO = NotifyEventStatusDTO.builder() + .id(id) + .status(notifyActionStatusEnum.getStatus()).build(); + NotifyStatusPostProcessor postProcessor = SpringContextUtil.getBean(notifyActionStatusEnum.getActionBeanName()); + if (postProcessor != null) { + postProcessor.doUpdateNotifyEventStatus(notifyEventStatusDTO); + } } //设置通过状态为已通过 runtimeService.updateBusinessStatus(execution.getProcessInstanceId(), ApprovalStatusEnum.PASSED); @@ -66,7 +63,7 @@ JSONObject jsonObject = JSONObject.parseObject(systemFlowForm.getFlowDef()); JSONObject workFlowDef = jsonObject.getJSONObject("workFlowDef"); Integer noticeStarter = workFlowDef.getInteger("noticeStarter"); - if (1 == noticeStarter) { + if (!Objects.isNull(noticeStarter) && 1 == noticeStarter) { Long rootId = Long.valueOf(String.valueOf(execution.getVariable("root"))); String formName = workFlowDef.getString("formName"); String formId = systemFlowForm.getFormId(); diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java new file mode 100644 index 0000000..12bedc0 --- /dev/null +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/CertificateReportStatusPostProcessor.java @@ -0,0 +1,38 @@ +package com.casic.missiles.listeners.processor; + +import cn.hutool.core.lang.Assert; +import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; +import com.casic.missiles.enums.BusinessExceptionEnum; +import com.casic.missiles.enums.notifyevent.ActionStatusBeanEnum; +import com.casic.missiles.enums.system.ApprovalStatusEnum; +import com.casic.missiles.exception.BusinessException; +import com.casic.missiles.listeners.NotifyStatusPostProcessor; +import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; +import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.utils.SpringContextUtil; +import org.springframework.stereotype.Service; + +import java.util.Objects; + +/** + * @author zt + * + * 证书报告审批通过状态回填 + */ +@Service(ActionStatusBeanEnum.CERTIFICATE_REPORT_BEAN_NAME) +public class CertificateReportStatusPostProcessor implements NotifyStatusPostProcessor { + + @Override + public void doUpdateNotifyEventStatus(NotifyEventStatusDTO notifyEventStatusDTO) { + Long id = Long.valueOf(notifyEventStatusDTO.getId()); + Assert.isFalse(Objects.isNull(id), () -> { + throw new BusinessException(BusinessExceptionEnum.ID_NULL); + }); +// IBusinessCertificateReportServicecertificateReportService = SpringContextUtil.getBean(IBusinessCertificateReportService.class); +// if (!certificateReportService.updateCertificateReportState(id)) { +// throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); +// } + } + + +} diff --git a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java index db56f5f..90a1bbe 100644 --- a/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java +++ b/casic-metering-common/src/main/java/com/casic/missiles/listeners/processor/EquipmentApplyStatusPostProcessor.java @@ -1,5 +1,6 @@ package com.casic.missiles.listeners.processor; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.casic.missiles.dto.flowable.NotifyEventStatusDTO; import com.casic.missiles.enums.BusinessExceptionEnum; @@ -7,10 +8,15 @@ import com.casic.missiles.exception.BusinessException; import com.casic.missiles.listeners.NotifyStatusPostProcessor; import com.casic.missiles.mapper.MeterFixedAssetsMapper; +import com.casic.missiles.mapper.equipment.EquipmentStandardApplyEquipmentMapper; import com.casic.missiles.model.equipment.EquipmentFixedAssets; +import com.casic.missiles.model.equipment.EquipmentStandardApplyEquipment; import com.casic.missiles.utils.SpringContextUtil; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.stream.Collectors; + /** * @author xzz * @@ -22,8 +28,15 @@ @Override public void doUpdateNotifyEventStatus( NotifyEventStatusDTO notifyEventStatusDTO) { MeterFixedAssetsMapper meterFixedAssetsMapper = SpringContextUtil.getBean(MeterFixedAssetsMapper.class); + EquipmentStandardApplyEquipmentMapper applyEquipmentMapper = SpringContextUtil.getBean(EquipmentStandardApplyEquipmentMapper.class); + // 通过申请id查询出申请设备列表 + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq("standard_apply_id", notifyEventStatusDTO.getId()); + List equipmentStandardApplyEquipments = applyEquipmentMapper.selectList(queryWrapper); + List equipmentIds = equipmentStandardApplyEquipments.stream().map(EquipmentStandardApplyEquipment::getEquipmentId).collect(Collectors.toList()); + // 修改对应设备状态 UpdateWrapper updateWrapper = new UpdateWrapper<>(); - updateWrapper.in("id", notifyEventStatusDTO.getId()).set("manager_state", notifyEventStatusDTO.getStatus()); + updateWrapper.in("id", equipmentIds).set("manager_state", notifyEventStatusDTO.getStatus()); if (meterFixedAssetsMapper.update(null, updateWrapper) <= 0) { throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java index 22facc4..0e2fa7e 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/business/BusinessCertificateReportMapper.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.business.print.CertificateListRequest; @@ -33,9 +34,13 @@ List selectBatchForApproval(@Param("page")Page page, @Param("request") CertificateReportApprovalRequest request, @Param("businessKey") List businessKey); + Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + + Page certificateMonitorsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + @Select("SELECT IFNULL(max(RIGHT(certificate_report_code, 9)), 0) from business_certificate_report where certificate_report_code like CONCAT(#{prefix},'%')") Long selectMaxCode(String prefix); - Page certificateRecordsById(Page page, @Param("request") CustomerSampleIdRequest customerSampleIdRequest); + BusinessCertificateReport detailById( @Param("id") Long id); } diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java index db34182..98079db 100644 --- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java +++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/system/SystemSignMapper.java @@ -3,6 +3,9 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.model.system.SystemSign; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -17,4 +20,6 @@ Long selectMaxSignNo(); SignDetailResponse selectSignDetailById(Long id); + + List selectUsableSignList(@Param("userId") Long userId); } diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml index 42a0aeb..719742d 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessCertificateReportMapper.xml @@ -29,66 +29,72 @@ - id, certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time + id + , certificate_report_code, certificate_report_name, certificate_report_category, calibration_major, issuance_date, expiration_date, template_id, sign_id, approval_sign_id, certificate_report_file, original_record_id, print_status, print_num, remark, is_del, create_user, create_time, update_time - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -128,7 +134,8 @@ - SELECT bcr.*, csi.sample_no AS sampleNo, @@ -136,7 +143,8 @@ csi.sample_model AS sampleModel, csi.manufacturing_no AS manufacturingNo, bo.order_code AS orderCode, - su.name AS measurePersonName + su.name AS measurePersonName, + csi.measure_category AS measureCategory FROM business_certificate_report bcr LEFT JOIN business_order bo ON bcr.order_id=bo.id @@ -170,9 +178,32 @@ + + + + diff --git a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml index fac5dbb..01319c1 100644 --- a/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/business/BusinessLabExecutiveTemplateInfoMapper.xml @@ -29,8 +29,7 @@ FROM business_lab_executive_template_info bleti JOIN sys_dept sd ON bleti.measure_dept_id = sd.ID LEFT JOIN meter_staff ms ON bleti.measure_person_id = ms.id - WHERE bleti.is_del = 0 - AND bleti.sample_id = #{request.sampleId} + WHERE bleti.sample_id = #{request.sampleId} ORDER BY bleti.execute_sequence ASC diff --git a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml index 25ca988..35b5827 100644 --- a/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml +++ b/casic-metering-dao/src/main/resources/mapper/equipment/EquipmentFixedAssetsMapper.xml @@ -13,14 +13,10 @@ + + diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java index 2e249eb..db73fd6 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/SampleHandOutInitListRequest.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -23,7 +22,7 @@ @ApiModelProperty(value = "样品id", dataType = "Long") private Long sampleId; - @NotBlank(message = "检定项目不能为空") +// @NotBlank(message = "检定项目不能为空") @ApiModelProperty(value = "检定项目(各项目逗号分割)", dataType = "String") private String measureContent; } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java new file mode 100644 index 0000000..9c47b5d --- /dev/null +++ b/casic-metering-model/src/main/java/com/casic/missiles/dto/business/certificate/CertificateMonitorResponse.java @@ -0,0 +1,43 @@ +package com.casic.missiles.dto.business.certificate; + +import com.casic.missiles.annotation.DictCodeField; +import com.casic.missiles.constants.MeterDictCode; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel +public class CertificateMonitorResponse { + + @ApiModelProperty(value = "证书id", dataType = "Long") + private Long certificationId; + + @ApiModelProperty(value = "证书遍号", dataType = "String") + private String certificateReportCode; + + @ApiModelProperty(value = "证书名称", dataType = "String") + private String certificateReportName; + + @ApiModelProperty(value = "证书类型", dataType = "String") + @DictCodeField(message = "证书类型不合法", cacheName = MeterDictCode.CERTIFICATE_TYPE) + private String certificationType; + + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificationTypeName; + + @ApiModelProperty(value = "证书状态", dataType = "String") + private String certificateStatus; + + @ApiModelProperty(value = "初次提交时间", dataType = "String") + private String submitTime; + + @ApiModelProperty(value = " 完成时间", dataType = "String") + private String finishedTime; + + @ApiModelProperty(value = "退回次数", dataType = "Long") + private int returns; + + @ApiModelProperty(value = "制作人", dataType = "List") + private String createUser; +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java index d879286..5dd936e 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessCertificateReport.java @@ -1,6 +1,5 @@ package com.casic.missiles.model.business; -import com.alibaba.excel.annotation.ExcelProperty; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; @@ -42,6 +41,14 @@ @ApiModelProperty(value = "证书报告名称", dataType = "String") private String certificateReportName; + + /** + * 证书报告名称 + */ + @TableField("certificate_report_type") + @ApiModelProperty(value = "证书报告类型", dataType = "String") + private String certificateReportType; + /** * 证书类别,多个逗号分割(字典code) */ @@ -168,6 +175,13 @@ private String remark; /** + * 出具日期 + */ + @TableField("submit_date") + @ApiModelProperty(value = "提交时间", dataType = "String") + private String submitDate; + + /** * 流程实例id */ @ApiModelProperty(value = "流程实例id(未通过文件编辑接口必传参数)", dataType = "String") @@ -197,4 +211,21 @@ @TableField(exist = false) @ApiModelProperty(value = "审批状态名称", dataType = "String") private String approvalStatusName; + + @TableField(exist = false) + @ApiModelProperty(value = "电子签章名称", dataType = "String") + private String signName; + + @TableField(exist = false) + @ApiModelProperty(value = "认可标志专用章名称", dataType = "String") + private String approvalSignName; + + @TableField(exist = false) + @ApiModelProperty(value = "模板名称", dataType = "String") + private String templateName; + + @TableField(exist = false) + @ApiModelProperty(value = "证书类型名称", dataType = "String") + private String certificateReportTypeName; + } diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java index 564f0a1..fb4d8e9 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/equipment/EquipmentStandardSupportEquipment.java @@ -80,8 +80,8 @@ * 使用部门 */ @TableField(exist = false) - @ApiModelProperty(value = "使用部门", dataType = "Integer", required = false) - private Integer useDept; + @ApiModelProperty(value = "使用部门", dataType = "Long", required = false) + private Long useDept; /** * 使用部门名称 diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java index 164c53a..5e59e2e 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessCertificateReportServiceImpl.java @@ -12,6 +12,7 @@ import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -20,19 +21,25 @@ import com.casic.missiles.dto.flowable.ApprovalDeleteRequest; import com.casic.missiles.dto.flowable.ToBeApprovedDTO; import com.casic.missiles.enums.*; +import com.casic.missiles.enums.business.CertificatePrintStatusEnum; import com.casic.missiles.enums.business.MonitorCodeEnum; import com.casic.missiles.enums.meter.MeterDictEnum; +import com.casic.missiles.enums.system.ApplyFromIdEnum; import com.casic.missiles.enums.system.ApprovalStatusEnum; import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.business.BusinessCertificateReportMapper; import com.casic.missiles.model.business.BusinessCertificateReport; +import com.casic.missiles.model.customer.CustomerSampleInfo; import com.casic.missiles.model.response.ResponseData; import com.casic.missiles.service.IBaseApprovalService; +import com.casic.missiles.service.Impl.customer.CustomerSampleServiceImpl; import com.casic.missiles.service.business.IBusinessCertificateReportService; import com.casic.missiles.service.business.IBusinessOriginalRecordService; +import com.casic.missiles.service.customer.CustomerSampleService; import com.casic.missiles.service.flowable.ApprovalOperateService; import com.casic.missiles.utils.DictCodeUtils; import com.casic.missiles.utils.NumberGeneratorUtil; +import com.casic.missiles.utils.SpringContextUtil; import org.apache.commons.lang3.StringUtils; import org.flowable.engine.RuntimeService; import org.flowable.engine.TaskService; @@ -73,6 +80,8 @@ private RuntimeService runtimeService; @Resource private IBaseExportService iBaseExportService; + @Resource + private CustomerSampleServiceImpl sampleService; /** * 保存证书报告信息 @@ -85,7 +94,7 @@ initCertificateReport(certificateReport); if (this.baseMapper.insert(certificateReport) > 0) - return ReturnUtil.success(); + return ReturnUtil.success(certificateReport.getId()); throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED); } @@ -135,10 +144,12 @@ */ @Override public BusinessCertificateReport certificateReportDetail(Long id) { - BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); +// BusinessCertificateReport certificateReport = this.baseMapper.selectById(id); + BusinessCertificateReport certificateReport = this.baseMapper.detailById(id); if (certificateReport.getOriginalRecordId() != null) { try { certificateReport.setBusinessOriginalRecord(originalRecordService.originalDetail(certificateReport.getOriginalRecordId())); + certificateReport.setCertificateReportTypeName(dictService.getDictNameByCode(MeterDictEnum.CERTIFICATION_CLASS,certificateReport.getCertificateReportType())); } catch (Exception e) { e.printStackTrace(); } @@ -166,6 +177,7 @@ certificateReport.setId(request.getId()); certificateReport.setApprovalStatus(ApprovalStatusEnum.UN_DRAFT); //非草稿状态 certificateReport.setProcessId(processInstance.getId()); + certificateReport.setSubmitDate(DateUtil.formatDateTime(new Date())); int row = this.baseMapper.updateById(certificateReport); if (row <= 0) { throw new BusinessException(BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getCode(), BusinessExceptionEnum.CERTIFICATE_REPORT_SUBMIT_FAILED.getMessage()); @@ -173,6 +185,7 @@ return ReturnUtil.success(); } + /** * 审批状态列表查询 * @@ -233,6 +246,78 @@ } } + /** + * 审批通过后 更新样品有效期 + * + * @param id + * @return + */ + @Override + public boolean updateCertificateReportState(Long id) { + + BusinessCertificateReport certificateReport = new BusinessCertificateReport(); + certificateReport.setId(id); + //审批状态为通过 + certificateReport.setApprovalStatus(ApprovalStatusEnum.PASSED); + certificateReport.setUpdateTime(DateUtil.formatDateTime(new Date())); + int row = this.baseMapper.updateById(certificateReport); + //更新样品有效期 + BusinessCertificateReport certificateReport1 = this.baseMapper.selectById(id); + if (certificateReport1.getSampleId() != null) { + CustomerSampleInfo sampleInfo = sampleService.getById(certificateReport1.getSampleId()); + if (sampleInfo != null) { + sampleInfo.setValidDeadline(certificateReport1.getExpirationDate()); + boolean rs = sampleService.updateById(sampleInfo); + if (row > 0 & rs) return true; + } + } + return row > 0 ? true : false; + } + + + + /** + * 客户、样品详情列表 + */ + @Override + public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); + for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { + if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { + DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); + } + } + return certificateResponsePage; + } + + @Override + public Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { + Page page = PageFactory.defaultPage(); + Page certificateMonitorResponsePage = this.baseMapper.certificateMonitorsById(page, customerSampleIdRequest); + for (CertificateMonitorResponse certificateMonitorResponse : certificateMonitorResponsePage.getRecords()) { + if (!StringUtils.isEmpty(certificateMonitorResponse.getCertificationType())) { + DictCodeUtils.convertDictMultiCodeToName(certificateMonitorResponse); + } + //设置证书状态 + certificateMonitorResponse.setCertificateStatus(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + CertificatePrintStatusEnum.FINISHED : CertificatePrintStatusEnum.UNFINISHED); + //设置完成时间 + certificateMonitorResponse.setFinishedTime(ApprovalStatusEnum.PASSED.equals(certificateMonitorResponse.getCertificateStatus()) ? + certificateMonitorResponse.getFinishedTime() : ""); + + //设置退回次数 + List rejectBusinessKey = baseApprovalService.getFailedRejectList(ApplyFromIdEnum.CERTIFICATE_REPORT_APPROVAL); + + rejectBusinessKey.forEach(obj -> { + if (obj.equals(certificateMonitorResponse.getCertificationId().toString())) { + certificateMonitorResponse.setReturns(certificateMonitorResponse.getReturns() + 1); + } + }); + } + return certificateMonitorResponsePage; + } + private List handleApprovalStatus(Page page, CertificateReportApprovalRequest request) { List approvalList = new ArrayList<>(); List businessKeys = new ArrayList<>(); @@ -312,21 +397,6 @@ return approvalList; } - /** - * 客户、样品详情列表 - */ - @Override - public Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception { - Page page = PageFactory.defaultPage(); - Page certificateResponsePage = this.baseMapper.certificateRecordsById(page, customerSampleIdRequest); - for (CertificationResponse customerSampleListResponse : certificateResponsePage.getRecords()) { - if (!StringUtils.isEmpty(customerSampleListResponse.getCertificationClass())) { - DictCodeUtils.convertDictMultiCodeToName(customerSampleListResponse); - } - } - return certificateResponsePage; - } - private List handleAllApprovalListResponse(List approvalList, List allApproveList) { Map taskMap = new HashMap<>(); allApproveList.forEach(allApprove -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java index 955cc7a..5b23762 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/business/BusinessLabExecutiveInfoServiceImpl.java @@ -159,6 +159,10 @@ if(!CollectionUtils.isEmpty(initListResponses)){ return initListResponses; } + + if(StringUtils.isEmpty(handOutInitListRequest.getMeasureContent())){ + return new ArrayList<>(); + } //根据样品的检定项目去关键字匹配实验室能力信息 String[] split = handOutInitListRequest.getMeasureContent().split(","); List list = Arrays.asList(split); @@ -212,10 +216,12 @@ public Page deptLabExecutiveListPage(Page page, SampleLabExecutiveListRequest labExecutiveListRequest) throws Exception{ //本级部门主管可见本部门的检测 //根据用户id查询,用户角色中TIPS为director即为主管,取用户的部门id - AuthUser user = ShiroKit.getUser(); - Assert.isFalse(Objects.isNull(user), () -> { - throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); - }); +// AuthUser user = ShiroKit.getUser(); +// Assert.isFalse(Objects.isNull(user), () -> { +// throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); +// }); + AuthUser user = new AuthUser(); + user.setId(1634091003794550786l); Map resultMap = selectDirectDept(user); if(CollectionUtils.isEmpty(resultMap) || Objects.isNull(resultMap.get("deptId"))){ return new Page<>(); 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 506885b..9fa94f8 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 @@ -165,6 +165,8 @@ } + + @Override public Page samplesByOderId(Page page, Long orderId, String sampleNo, String sampleName) { return this.baseMapper.samplesByOderId(page, orderId, sampleNo, sampleName); diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java index 485287a..47c5adc 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/flowable/ApprovalOperateServiceImpl.java @@ -135,7 +135,7 @@ approvalLog.setDeptName(dept.getSimpleName()); } } else if (Objects.isNull(approvalLog.getFinishTime())) { - approvalLog.setApprovalStatus(ApprovalStatusEnum.IN_APPROVED); + approvalLog.setApprovalStatus("审批中"); } else if (!Objects.isNull(approvalLog.getFinishTime())) { approvalLog.setApprovalStatus("审批完成");//可能是通过/拒绝/驳回,审批意见中可见 } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java index 3bc7d81..53c2c51 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/system/SystemSignServiceImpl.java @@ -1,14 +1,19 @@ package com.casic.missiles.service.Impl.system; +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.model.auth.AuthUser; +import com.casic.missiles.core.shiro.ShiroKit; import com.casic.missiles.dto.ReturnDTO; import com.casic.missiles.dto.ReturnUtil; import com.casic.missiles.dto.system.SignAddRequest; import com.casic.missiles.dto.system.SignDetailResponse; import com.casic.missiles.dto.system.SignListRequest; +import com.casic.missiles.enums.BusinessExceptionEnum; import com.casic.missiles.enums.PrefixCodeEnum; +import com.casic.missiles.exception.BusinessException; import com.casic.missiles.mapper.system.SystemSignMapper; import com.casic.missiles.mapper.system.SystemSignUserRelationMapper; import com.casic.missiles.model.system.SystemSign; @@ -125,6 +130,15 @@ return ReturnUtil.failed("删除失败"); } + @Override + public List usableSign() { + AuthUser user = ShiroKit.getUser(); + Assert.isFalse(Objects.isNull(user), () -> { + throw new BusinessException(BusinessExceptionEnum.LOGIN_USER_ACQUIRE_FAILED); + }); + return signMapper.selectUsableSignList(user.getId()); + } + private List getUserRelations(List userIdList, Long signId) { List bsRelations = new ArrayList<>(); userIdList.forEach(id -> { diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java index 8e91c42..81cb155 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/business/IBusinessCertificateReportService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.casic.missiles.dto.BaseApprovalSubmitRequest; import com.casic.missiles.dto.ReturnDTO; +import com.casic.missiles.dto.business.certificate.CertificateMonitorResponse; import com.casic.missiles.dto.business.certificate.CertificateReportApprovalRequest; import com.casic.missiles.dto.business.certificate.CertificateReportResponse; import com.casic.missiles.dto.customer.CertificationResponse; @@ -42,6 +43,9 @@ void originExport(CertificateReportApprovalRequest request, HttpServletResponse response); - Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; + boolean updateCertificateReportState(Long id); + Page certificateMonitorsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; + + Page certificateRecordsById(CustomerSampleIdRequest customerSampleIdRequest) throws Exception; } diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java index c83b68c..b5867a9 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/system/ISystemSignService.java @@ -30,6 +30,8 @@ ReturnDTO deleteBatchSign(List ids); + List usableSign(); + List list(SignListRequest request); ReturnDTO signDetail(Long id);