diff --git a/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/HcsSyncController.java b/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/HcsSyncController.java index d04ff7a7..0363060f 100644 --- a/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/HcsSyncController.java +++ b/blade-service/blade-transport/src/main/java/org/springblade/transport/controller/HcsSyncController.java @@ -66,36 +66,42 @@ public class HcsSyncController { private final HcsProjectSyncSupport hcsProjectSyncSupport; private final HcsContractSyncSupport hcsContractSyncSupport; private final HcsPaymentSyncSupport hcsPaymentSyncSupport; + private final HcsInvoiceRegSyncSupport hcsInvoiceRegSyncSupport; + private final HcsReceiptBillSyncSupport hcsReceiptBillSyncSupport; private final HcsMasterDataSupport hcsMasterDataSupport; /** - * 单条重推(bizType:project=项目立项 / contract=合同 / payment=付款申请) + * 单条重推(bizType:project=项目立项 / contract=合同 / payment=付款申请 / invoice-application=开票申请 / invoice-receipt=收票单) */ @PostMapping("/sync/{bizType}/{id}") @ApiOperationSupport(order = 1) - @Operation(summary = "单条推送/重推合规", description = "重置待同步状态后立即推送,bizType:project=项目立项、contract=合同、payment=付款申请") + @Operation(summary = "单条推送/重推合规", description = "重置待同步状态后立即推送,bizType:project、contract、payment、invoice-application、invoice-receipt") public R repush(@Parameter(description = "业务类型", required = true) @PathVariable String bizType, @Parameter(description = "单据ID", required = true) @PathVariable Long id) { String result = switch (bizType) { case HcsSyncConstant.BIZ_TYPE_PROJECT -> hcsProjectSyncSupport.repushProject(id); case HcsSyncConstant.BIZ_TYPE_CONTRACT -> hcsContractSyncSupport.repushContract(id); case HcsSyncConstant.BIZ_TYPE_PAYMENT -> hcsPaymentSyncSupport.repushPayment(id); + case HcsSyncConstant.BIZ_TYPE_INVOICE_APPLICATION -> hcsInvoiceRegSyncSupport.repushInvoiceRegistration(id); + case HcsSyncConstant.BIZ_TYPE_INVOICE_RECEIPT -> hcsReceiptBillSyncSupport.repushReceiptBill(id); default -> throw new IllegalArgumentException("不支持的HCS推送业务类型:" + bizType); }; return R.data(result); } /** - * 批量推送(bizType:project=项目立项 / contract=合同 / payment=付款申请;复用定时扫描逻辑,单轮批量上限 push.batch-size) + * 批量推送(复用定时扫描逻辑,单轮批量上限 push.batch-size) */ @PostMapping("/sync/{bizType}") @ApiOperationSupport(order = 2) - @Operation(summary = "批量推送合规", description = "扫描待同步/待补偿单据推送一轮,bizType:project=项目立项、contract=合同、payment=付款申请") + @Operation(summary = "批量推送合规", description = "扫描待同步/待补偿单据推送一轮,bizType:project、contract、payment、invoice-application、invoice-receipt") public R pushBatch(@Parameter(description = "业务类型", required = true) @PathVariable String bizType) { String result = switch (bizType) { case HcsSyncConstant.BIZ_TYPE_PROJECT -> hcsPushTask.pushUnsyncedProjects(); case HcsSyncConstant.BIZ_TYPE_CONTRACT -> hcsPushTask.pushUnsyncedContracts(); case HcsSyncConstant.BIZ_TYPE_PAYMENT -> hcsPushTask.pushUnsyncedPayments(); + case HcsSyncConstant.BIZ_TYPE_INVOICE_APPLICATION -> hcsPushTask.pushUnsyncedInvoiceApplications(); + case HcsSyncConstant.BIZ_TYPE_INVOICE_RECEIPT -> hcsPushTask.pushUnsyncedInvoiceReceipts(); default -> throw new IllegalArgumentException("不支持的HCS推送业务类型:" + bizType); }; return R.data(result);