From b0ba33dce8487581d2bb3c49f886d158724dc44e Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期一, 08 六月 2026 17:19:49 +0800
Subject: [PATCH] fix:产品列表接口
---
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java | 126 ++++++++++++++++++++++++++++++++++++++++++
1 files changed, 126 insertions(+), 0 deletions(-)
diff --git a/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java
new file mode 100644
index 0000000..8f9f36c
--- /dev/null
+++ b/platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ContractInvoiceController.java
@@ -0,0 +1,126 @@
+package com.by4cloud.platformx.business.controller;
+
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.business.dto.GenInvoiceInfoDTO;
+import com.by4cloud.platformx.business.entity.Contract;
+import com.by4cloud.platformx.business.service.ContractInvoiceService;
+import com.by4cloud.platformx.business.service.ContractService;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import com.by4cloud.platformx.common.security.annotation.Inner;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.apache.commons.lang3.StringUtils;
+import org.springdoc.core.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * 鍚堝悓寮�绁�
+ *
+ * @author syt
+ * @date 2026骞�6鏈�5鏃� 08:13:55
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/contractInvoice" )
+@Tag(description = "contract" , name = "鍚堝悓寮�绁�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class ContractInvoiceController {
+
+ private final ContractService contractService;
+ private final ContractInvoiceService contractInvoiceService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param contract 鍚堝悓绠$悊
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ public R getContractPage(@ParameterObject Page page, @ParameterObject Contract contract) {
+ LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery();
+ wrapper.like(StringUtils.isNotBlank(contract.getContractName()),Contract::getContractName,contract.getContractName());
+ wrapper.like(StringUtils.isNotBlank(contract.getPartyA()),Contract::getPartyA,contract.getPartyA());
+ wrapper.eq(Contract::getBillingStatus,contract.getBillingStatus());
+ if (StrUtil.equals(contract.getBillingStatus(),"1")){
+ wrapper.orderByDesc(BaseModel::getCreateTime);
+ }else {
+ wrapper.orderByAsc(BaseModel::getCreateTime);
+ }
+
+ return R.ok(contractService.pageByScope(page, wrapper));
+ }
+
+ /**
+ * 鑾峰彇鍚堝悓鍑哄簱淇℃伅
+ * @return
+ */
+ @GetMapping("/getContractOutBound/{contractId}" )
+ public R getContractOutBound(@PathVariable("contractId")Long contractId) {
+ return contractInvoiceService.getContractOutBound(contractId);
+ }
+
+ /**
+ * 鐢熸垚寮�绁ㄩ瑙堜俊鎭�
+ * @return
+ */
+ @PostMapping("/genInvoiceInfo" )
+ public R genInvoiceInfo(@RequestBody GenInvoiceInfoDTO genInvoiceInfoDTO) {
+ return contractInvoiceService.genInvoiceInfo(genInvoiceInfoDTO);
+ }
+
+ /**
+ * 寮�钃濈エ
+ * @return
+ */
+ @PostMapping("/toInvoice" )
+ public R toInvoice(@RequestBody GenInvoiceInfoDTO genInvoiceInfoDTO) {
+ return contractInvoiceService.toInvoice(genInvoiceInfoDTO);
+ }
+
+ /**
+ * 鑾峰彇宸插紑鍙戠エ
+ * @return
+ */
+ @GetMapping("/getContractInvoiceList/{contractId}" )
+ public R getContractInvoiceList(@PathVariable("contractId")Long contractId) {
+ return contractInvoiceService.getContractInvoiceList(contractId);
+ }
+
+ /**
+ * 钃濈エ鏌ヨ
+ * @return
+ */
+ @Inner(value = false)
+ @GetMapping("/queryBlueInvoice")
+ public R queryBlueInvoice() {
+ return contractInvoiceService.queryBlueInvoice();
+ }
+
+ /**
+ * 寮�绾㈢エ
+ * @return
+ */
+ @GetMapping("/toRedInvoice/{invoiceId}")
+ public R toRedInvoice(@PathVariable("invoiceId")Long invoiceId) {
+ return contractInvoiceService.toRedInvoice(invoiceId);
+ }
+
+ /**
+ * 绾㈢エ鏌ヨ
+ * @return
+ */
+ @Inner(value = false)
+ @GetMapping("/queryRedInvoice")
+ public R queryRedInvoice() {
+ return contractInvoiceService.queryRedInvoice();
+ }
+}
--
Gitblit v1.9.1