From 13fd47c5aa585b74bfc8b77722bde3f7a2399587 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期四, 21 五月 2026 10:26:42 +0800
Subject: [PATCH] refactor(invoice): 删除invoice_registration invoice_registration_product invoice_ledger invoice_ledger_file
---
src/main/java/com/ruoyi/sales/service/ReceiptPaymentService.java | 16 -
src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java | 3
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java | 15 -
src/main/resources/mapper/sales/ReceiptPaymentMapper.xml | 36 ----
src/main/java/com/ruoyi/sales/controller/ReceiptPaymentController.java | 16 -
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java | 32 ----
/dev/null | 132 ----------------
src/main/java/com/ruoyi/sales/excel/InvoiceLedgerExcelDto.java | 7
src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java | 52 ------
src/main/java/com/ruoyi/sales/mapper/ReceiptPaymentMapper.java | 16 --
src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java | 33 ----
src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java | 13 -
src/main/java/com/ruoyi/sales/service/impl/ReceiptPaymentServiceImpl.java | 21 --
src/main/java/com/ruoyi/ai/tools/SalesAgentTools.java | 28 --
src/main/java/com/ruoyi/purchase/mapper/InvoicePurchaseMapper.java | 1
src/main/resources/mapper/purchase/InvoicePurchaseMapper.xml | 25 ---
src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java | 2
17 files changed, 18 insertions(+), 430 deletions(-)
diff --git a/src/main/java/com/ruoyi/ai/tools/SalesAgentTools.java b/src/main/java/com/ruoyi/ai/tools/SalesAgentTools.java
index b56144b..41ed0a7 100644
--- a/src/main/java/com/ruoyi/ai/tools/SalesAgentTools.java
+++ b/src/main/java/com/ruoyi/ai/tools/SalesAgentTools.java
@@ -11,8 +11,6 @@
import com.ruoyi.basic.vo.CustomerVo;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.framework.security.LoginUser;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
-import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
import com.ruoyi.sales.mapper.ReceiptPaymentMapper;
import com.ruoyi.sales.mapper.SalesLedgerMapper;
import com.ruoyi.sales.mapper.SalesQuotationMapper;
@@ -34,16 +32,7 @@
import java.time.YearMonth;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.Date;
-import java.util.HashMap;
-import java.util.LinkedHashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Locale;
-import java.util.Map;
-import java.util.Objects;
+import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
@@ -63,7 +52,6 @@
private final SalesQuotationMapper salesQuotationMapper;
private final ShippingInfoMapper shippingInfoMapper;
private final ReceiptPaymentMapper receiptPaymentMapper;
- private final InvoiceLedgerMapper invoiceLedgerMapper;
private final SalesReceiptReturnMapper salesReceiptReturnMapper;
private final AiSessionUserContext aiSessionUserContext;
@@ -72,7 +60,6 @@
SalesQuotationMapper salesQuotationMapper,
ShippingInfoMapper shippingInfoMapper,
ReceiptPaymentMapper receiptPaymentMapper,
- InvoiceLedgerMapper invoiceLedgerMapper,
SalesReceiptReturnMapper salesReceiptReturnMapper,
AiSessionUserContext aiSessionUserContext) {
this.customerMapper = customerMapper;
@@ -80,7 +67,6 @@
this.salesQuotationMapper = salesQuotationMapper;
this.shippingInfoMapper = shippingInfoMapper;
this.receiptPaymentMapper = receiptPaymentMapper;
- this.invoiceLedgerMapper = invoiceLedgerMapper;
this.salesReceiptReturnMapper = salesReceiptReturnMapper;
this.aiSessionUserContext = aiSessionUserContext;
}
@@ -896,12 +882,12 @@
return Map.of();
}
Map<Long, BigDecimal> result = new HashMap<>();
- for (InvoiceLedgerDto item : defaultList(invoiceLedgerMapper.invoicedTotal(ledgerIds))) {
- if (item.getSalesLedgerId() == null) {
- continue;
- }
- result.merge(item.getSalesLedgerId().longValue(), defaultDecimal(item.getInvoiceTotal()), BigDecimal::add);
- }
+// for (InvoiceLedgerDto item : defaultList(invoiceLedgerMapper.invoicedTotal(ledgerIds))) {
+// if (item.getSalesLedgerId() == null) {
+// continue;
+// }
+// result.merge(item.getSalesLedgerId().longValue(), defaultDecimal(item.getInvoiceTotal()), BigDecimal::add);
+// }
return result;
}
diff --git a/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java b/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
index 622750a..71e7eaa 100644
--- a/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
+++ b/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
@@ -59,9 +59,7 @@
PURCHASE_LEDGER_FILE("purchase_ledger_file"),
RECEIPT_PAYMENT("receipt_payment"),
PAYMENT_SHIPPING("payment_shipping"),
- INVOICE_REGISTRATION_PRODUCT("invoice_registration_product"),
LOSS("loss"),
- INVOICE_REGISTRATION("invoice_registration"),
INVOICE_LEDGER_FILE("invoice_ledger_file"),
INVOICE_LEDGER("invoice_ledger"),
COMMON_FILE("common_file"),
diff --git a/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java b/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
index 3290499..def8948 100644
--- a/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
+++ b/src/main/java/com/ruoyi/purchase/controller/PurchaseLedgerController.java
@@ -2,7 +2,6 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.framework.aspectj.lang.annotation.Log;
@@ -17,27 +16,23 @@
import com.ruoyi.purchase.pojo.PurchaseLedgerTemplate;
import com.ruoyi.purchase.pojo.SalesLedgerProductTemplate;
import com.ruoyi.purchase.service.IPurchaseLedgerService;
-import com.ruoyi.sales.pojo.SalesLedgerProduct;
import com.ruoyi.sales.service.ISalesLedgerProductService;
import com.ruoyi.sales.service.ISalesLedgerService;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.Operation;
import io.swagger.annotations.ApiParam;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
-import jakarta.servlet.http.HttpServletResponse;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
-import java.math.BigDecimal;
import java.net.URLEncoder;
import java.util.List;
-import java.util.Optional;
-import java.util.stream.Collectors;
/**
* 閲囪喘鍙拌处Controller
@@ -219,7 +214,7 @@
*/
@GetMapping("/getProductBySalesNo")
public AjaxResult getProductBySalesNo(Long id) {
- return AjaxResult.success(purchaseLedgerService.getProductBySalesNo(id));
+ return AjaxResult.success();
}
/**
diff --git a/src/main/java/com/ruoyi/purchase/mapper/InvoicePurchaseMapper.java b/src/main/java/com/ruoyi/purchase/mapper/InvoicePurchaseMapper.java
index b1dc03c..b737aab 100644
--- a/src/main/java/com/ruoyi/purchase/mapper/InvoicePurchaseMapper.java
+++ b/src/main/java/com/ruoyi/purchase/mapper/InvoicePurchaseMapper.java
@@ -24,5 +24,4 @@
IPage<VatDto> listVat(Page page,@Param("month") String month);
- List<VatDto> listVat1();
}
diff --git a/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java b/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
index d09050e..a0378af 100644
--- a/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
+++ b/src/main/java/com/ruoyi/purchase/service/IPurchaseLedgerService.java
@@ -6,7 +6,6 @@
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.purchase.dto.PurchaseLedgerDto;
import com.ruoyi.purchase.pojo.PurchaseLedger;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
import com.ruoyi.sales.pojo.SalesLedgerProduct;
import org.springframework.web.multipart.MultipartFile;
@@ -39,8 +38,6 @@
PurchaseLedgerDto getPurchaseNoById(Long id);
IPage<PurchaseLedgerDto> selectPurchaseLedgerListPage(IPage ipage, PurchaseLedgerDto purchaseLedger);
-
- List<InvoiceRegistrationProduct> getProductBySalesNo(Long id);
String getPurchaseNo();
diff --git a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
index cdf80f9..e9e5179 100644
--- a/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -51,11 +51,9 @@
import com.ruoyi.quality.pojo.QualityTestStandard;
import com.ruoyi.quality.pojo.QualityTestStandardParam;
import com.ruoyi.sales.mapper.CommonFileMapper;
-import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
import com.ruoyi.sales.mapper.SalesLedgerMapper;
import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
import com.ruoyi.sales.pojo.CommonFile;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
import com.ruoyi.sales.pojo.SalesLedger;
import com.ruoyi.sales.pojo.SalesLedgerProduct;
import com.ruoyi.sales.service.impl.CommonFileServiceImpl;
@@ -102,7 +100,6 @@
private final TicketRegistrationMapper ticketRegistrationMapper;
private final ProductRecordMapper productRecordMapper;
private final PaymentRegistrationMapper paymentRegistrationMapper;
- private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
private final StringRedisTemplate redisTemplate;
private final QualityInspectMapper qualityInspectMapper;
private final CommonFileServiceImpl commonFileService;
@@ -498,18 +495,6 @@
purchaseLedgerDto.setSalesLedgerFiles(commonFiles);
});
return purchaseLedgerDtoIPage;
- }
-
- @Override
- public List<InvoiceRegistrationProduct> getProductBySalesNo(Long id) {
- List<InvoiceRegistrationProduct> invoiceRegistrationProducts = invoiceRegistrationProductMapper.selectList(new LambdaQueryWrapper<InvoiceRegistrationProduct>()
- .select(InvoiceRegistrationProduct::getId, InvoiceRegistrationProduct::getProductCategory, InvoiceRegistrationProduct::getSpecificationModel,
- InvoiceRegistrationProduct::getUnit, InvoiceRegistrationProduct::getQuantity)
- .eq(InvoiceRegistrationProduct::getSalesLedgerId, id));
- if (invoiceRegistrationProducts.isEmpty()) {
- return new ArrayList<>();
- }
- return invoiceRegistrationProducts;
}
@Override
diff --git a/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java b/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
deleted file mode 100644
index 0559ff8..0000000
--- a/src/main/java/com/ruoyi/sales/controller/InvoiceLedgerController.java
+++ /dev/null
@@ -1,205 +0,0 @@
-package com.ruoyi.sales.controller;
-
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.framework.aspectj.lang.annotation.Log;
-import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.mapper.InvoiceLedgerFileMapper;
-import com.ruoyi.sales.service.InvoiceLedgerService;
-import io.jsonwebtoken.lang.Collections;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.math.BigDecimal;
-import java.util.List;
-
-@RestController
-@RequestMapping("/invoiceLedger")
-@AllArgsConstructor
-public class InvoiceLedgerController {
-
- private InvoiceLedgerService invoiceLedgerService;
- private InvoiceLedgerFileMapper invoiceLedgerFileMapper;
-
- /**
- * 寮�绁ㄥ彴璐︽柊澧�
- * @param productDto
- * @return
- */
- @PostMapping("/saveOrUpdate")
- public AjaxResult invoiceLedgerSaveOrUpdate(@RequestBody InvoiceRegistrationProductDto productDto) {
- invoiceLedgerService.invoiceLedgerSaveOrUpdate(productDto);
- return AjaxResult.success();
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param ids
- * @return
- */
- @DeleteMapping("/del")
- public AjaxResult invoiceLedgerDel(@RequestBody List<Integer> ids) {
- invoiceLedgerService.invoiceLedgerDel(ids);
- return AjaxResult.success();
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垎椤垫煡璇�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- @GetMapping("/page")
- public AjaxResult invoiceLedgerPage(Page page, InvoiceLedgerDto invoiceLedgerDto) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerPage(page, invoiceLedgerDto));
- }
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠舵煡璇�
- * @param invoiceLedgerId
- * @return
- */
- @GetMapping("/fileList")
- public AjaxResult invoiceLedgerFileList(Integer invoiceLedgerId) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerFileList(invoiceLedgerId));
- }
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠跺垹闄�
- */
- @DeleteMapping("/delFile")
- @Log(title = "寮�绁ㄥ彴璐�", businessType = BusinessType.DELETE)
- public AjaxResult invoiceLedgerDelFile(@RequestBody List<Integer> ids) {
- if(Collections.isEmpty(ids)) return AjaxResult.error("璇烽�夋嫨瑕佸垹闄ょ殑鏂囦欢");
- invoiceLedgerFileMapper.deleteBatchIds(ids);
- return AjaxResult.success();
- }
-
-
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠朵笂浼�
- * @param file
- * @return
- */
- @PostMapping("/uploadFile")
- public AjaxResult invoiceLedgerUploadFile(MultipartFile file) {
- try {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerUploadFile(file));
- }catch (Exception e) {
- return AjaxResult.error(e.getMessage());
- }
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀鍑�
- * @param response
- * @param invoiceRegistrationProductDto
- * @return
- */
- @PostMapping("/export")
- public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
- invoiceLedgerService.invoiceLedgerExport(response, invoiceRegistrationProductDto);
- }
-
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- @GetMapping("/info")
- public AjaxResult invoiceLedgerInfo(Integer id) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerDetail(id));
- }
-
- /**
- * 鏂囦欢鎻愪氦
- * @param invoiceLedgerDto
- * @return
- */
- @PostMapping("/commitFile")
- public AjaxResult invoiceLedgerCommitFile(@RequestBody InvoiceLedgerDto invoiceLedgerDto) {
- try {
- invoiceLedgerService.invoiceLedgerCommitFile(invoiceLedgerDto);
- return AjaxResult.success();
- }catch (Exception e) {
- return AjaxResult.error(e.getMessage());
- }
- }
-
- /**
- * 寮�绁ㄥ彴璐︽煡璇�
- * @param invoiceLedgerDto
- * @return
- */
- @GetMapping("/list")
- public AjaxResult invoiceLedgerList(InvoiceLedgerDto invoiceLedgerDto) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerList(invoiceLedgerDto));
- }
-
- /**
- * 瀹㈡埛閿�鍞褰�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- @GetMapping("/salesAccount")
- public AjaxResult invoiceLedgerSalesAccount(Page page, InvoiceLedgerDto invoiceLedgerDto) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerSalesAccount(page,invoiceLedgerDto));
- }
-
- /**
- * 鏈湀寮�绁ㄩ噾棰�
- */
- @GetMapping("/getInvoiceAmount")
- public AjaxResult getInvoiceAmount() {
- try {
- BigDecimal amount = invoiceLedgerService.getInvoiceAmount();
- return AjaxResult.success(amount != null ? amount : BigDecimal.ZERO);
- } catch (Exception e) {
- return AjaxResult.error("鑾峰彇寮�绁ㄩ噾棰濆け璐ワ細" + e.getMessage());
- }
- }
-
- /**
- * 浜у搧寮�绁ㄨ褰曟煡璇�
- * @param page
- * @param registrationProductDto
- * @return
- */
- @GetMapping("/registrationProductPage")
- public AjaxResult registrationProductPage(Page page, InvoiceRegistrationProductDto registrationProductDto) {
-
- return AjaxResult.success(invoiceLedgerService.registrationProductPage(page,registrationProductDto));
- }
-
- /**
- * 浜у搧寮�绁ㄨ鎯�
- * @param id
- * @return
- */
- @GetMapping("/invoiceLedgerProductInfo")
- public AjaxResult invoiceLedgerProductDetail(Integer id) {
- return AjaxResult.success(invoiceLedgerService.invoiceLedgerProductDetail(id));
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param invoiceRegistrationProductId
- * @return
- */
- @DeleteMapping("delInvoiceLedger/{invoiceRegistrationProductId}")
- public AjaxResult delInvoiceLedger(@PathVariable Integer invoiceRegistrationProductId) {
- try {
- invoiceLedgerService.delInvoiceLedger(invoiceRegistrationProductId);
- return AjaxResult.success();
- }catch (Exception e) {
- return AjaxResult.error(e.getMessage());
- }
- }
-
-}
diff --git a/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java b/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java
deleted file mode 100644
index 8ea6c11..0000000
--- a/src/main/java/com/ruoyi/sales/controller/InvoiceRegistrationController.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package com.ruoyi.sales.controller;
-
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.framework.aspectj.lang.annotation.Log;
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.sales.dto.InvoiceRegistrationDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.dto.SalesLedgerDto;
-import com.ruoyi.sales.service.InvoiceRegistrationService;
-import io.jsonwebtoken.lang.Collections;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.AllArgsConstructor;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.List;
-
-@RestController
-@RequestMapping("/invoiceRegistration")
-@AllArgsConstructor
-public class InvoiceRegistrationController {
-
- private InvoiceRegistrationService invoiceRegistrationService;
-
- /**
- * 寮�绁ㄧ櫥璁拌褰曟柊澧�
- * @param salesLedgerDto
- * @return
- */
- @PostMapping("/save")
- @Log(title = "寮�绁ㄧ櫥璁�", businessType = com.ruoyi.framework.aspectj.lang.enums.BusinessType.INSERT)
- @Transactional(rollbackFor = Exception.class)
- public AjaxResult invoiceRegistrationSave(@RequestBody List<SalesLedgerDto> salesLedgerDto) {
- if(Collections.isEmpty(salesLedgerDto)) return AjaxResult.error("璇烽�夋嫨瑕佷繚瀛樼殑璁板綍");
- salesLedgerDto.forEach(item ->{
- invoiceRegistrationService.invoiceRegistrationSave(item);
- });
-
- return AjaxResult.success();
- }
-
- /**
- * 寮�绁ㄧ櫥璁板垹闄�
- * @param ids
- * @return
- */
- @DeleteMapping("/del")
- public AjaxResult invoiceRegistrationDel(@RequestBody List<Integer> ids) {
- invoiceRegistrationService.invoiceRegistrationDel(ids);
- return AjaxResult.success();
- }
-
- /**
- * 寮�绁ㄨ褰曚慨鏀�
- * @param invoiceRegistrationDto
- * @return
- */
- @PostMapping("/update")
- public AjaxResult invoiceRegistrationUpdate(@RequestBody InvoiceRegistrationDto invoiceRegistrationDto) {
- invoiceRegistrationService.invoiceRegistrationUpdate(invoiceRegistrationDto);
- return AjaxResult.success();
- }
-
- /**
- * 寮�绁ㄧ櫥璁板垎椤垫煡璇�
- * @param page
- * @param invoiceRegistrationDto
- * @return
- */
- @GetMapping("/listPage")
- public AjaxResult invoiceRegistrationListPage(Page page, InvoiceRegistrationDto invoiceRegistrationDto) {
- return AjaxResult.success(invoiceRegistrationService.invoiceRegistrationListPage(page, invoiceRegistrationDto));
- }
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佹煡璇�
- * @param invoiceRegistrationProductDto
- * @return
- */
- @GetMapping("/productList")
- public AjaxResult invoiceRegistrationProductList(InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
- return AjaxResult.success(invoiceRegistrationService.invoiceRegistrationProductList(invoiceRegistrationProductDto));
- }
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佽鎯�
- * @param id
- * @return
- */
- @GetMapping("/detail")
- public AjaxResult invoiceRegistrationDetail(Integer id) {
- return AjaxResult.success(invoiceRegistrationService.invoiceRegistrationDetail(id));
- }
-
- /**
- * 寮�绁ㄧ櫥璁板鍑�
- * @param response
- * @param invoiceRegistrationDto
- */
- @PostMapping("/export")
- public void invoiceRegistrationExport(HttpServletResponse response, InvoiceRegistrationDto invoiceRegistrationDto) {
- invoiceRegistrationService.invoiceRegistrationExport(response, invoiceRegistrationDto);
- }
-}
diff --git a/src/main/java/com/ruoyi/sales/controller/ReceiptPaymentController.java b/src/main/java/com/ruoyi/sales/controller/ReceiptPaymentController.java
index 5512a8d..24c0c8b 100644
--- a/src/main/java/com/ruoyi/sales/controller/ReceiptPaymentController.java
+++ b/src/main/java/com/ruoyi/sales/controller/ReceiptPaymentController.java
@@ -9,7 +9,6 @@
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.page.TableDataInfo;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.ReceiptPaymentDto;
import com.ruoyi.sales.dto.ReceiptPaymentRecordDto;
import com.ruoyi.sales.pojo.ReceiptPayment;
@@ -68,12 +67,12 @@
/**
* 瀹㈡埛寰�鏉ヨ褰曟煡璇�
- * @param receiptPaymentDto
+ * @param
* @return
*/
@GetMapping("/customerInteractions")
- public AjaxResult customerInteractions (InvoiceLedgerDto receiptPaymentDto) {
- return AjaxResult.success(receiptPaymentService.customerInteractions(receiptPaymentDto));
+ public AjaxResult customerInteractions () {
+ return AjaxResult.success();
}
/**
@@ -125,15 +124,6 @@
}
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- @GetMapping("/invoiceInfo")
- public AjaxResult invoiceInfo (Integer id) {
- return AjaxResult.success(receiptPaymentService.invoiceInfo(id));
- }
/**
* 鏈湀搴旀敹,鍥炴閲戦
diff --git a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
index ceb3702..603fd22 100644
--- a/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
+++ b/src/main/java/com/ruoyi/sales/controller/SalesLedgerController.java
@@ -13,9 +13,7 @@
import com.ruoyi.framework.web.domain.AjaxResult;
import com.ruoyi.framework.web.domain.R;
import com.ruoyi.framework.web.page.TableDataInfo;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.SalesLedgerDto;
-import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
import com.ruoyi.sales.mapper.ReceiptPaymentMapper;
import com.ruoyi.sales.pojo.ReceiptPayment;
import com.ruoyi.sales.pojo.SalesLedger;
@@ -57,7 +55,6 @@
private ISalesLedgerService salesLedgerService;
private ICommonFileService commonFileService;
- private InvoiceLedgerMapper invoiceLedgerMapper;
private ReceiptPaymentMapper receiptPaymentMapper;
private final FileUtil fileUtil;
@@ -122,20 +119,6 @@
if(CollectionUtils.isEmpty(list)){
return getDataTable(list);
}
- List<Long> salesLedgerIds = list.stream().map(SalesLedger::getId).collect(Collectors.toList());
- List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoicedTotal(salesLedgerIds);
- if(CollectionUtils.isEmpty(invoiceLedgerDtoList)){
- return getDataTable(list);
- }
- for (SalesLedger salesLedger : list) {
- for (InvoiceLedgerDto invoiceLedgerDto : invoiceLedgerDtoList) {
- if (salesLedger.getId().intValue() == invoiceLedgerDto.getSalesLedgerId()) {
- BigDecimal noInvoiceAmountTotal = salesLedger.getContractAmount().subtract(invoiceLedgerDto.getInvoiceTotal());
- salesLedger.setNoInvoiceAmountTotal(noInvoiceAmountTotal);
- }
- }
- }
-
return getDataTable(list);
}
@@ -267,20 +250,6 @@
// 鑾峰彇褰撳墠椤垫墍鏈夊彴璐﹁褰曠殑 ID 闆嗗悎
List<Long> salesLedgerIds = iPage.getRecords().stream().map(SalesLedger::getId).collect(Collectors.toList());
- // 鏌ヨ鍙戠エ淇℃伅鐨勫凡寮�绁ㄩ噾棰�
- List<InvoiceLedgerDto> invoiceLedgerDtoList = invoiceLedgerMapper.invoicedTotal(salesLedgerIds);
- if (CollectionUtils.isEmpty(invoiceLedgerDtoList)) {
- invoiceLedgerDtoList = Collections.emptyList();
- }
-
- // 杞崲鍙戠エ鏁版嵁, key 涓哄彴璐D, value 涓鸿鍙拌处鐨勬�诲紑绁ㄩ噾棰�
- Map<Long, BigDecimal> invoiceTotals = invoiceLedgerDtoList.stream()
- .filter(dto -> dto.getSalesLedgerId() != null && dto.getInvoiceTotal() != null)
- .collect(Collectors.toMap(
- dto -> dto.getSalesLedgerId().longValue(),
- InvoiceLedgerDto::getInvoiceTotal,
- BigDecimal::add // 瀛樺湪閲嶅ID鎵ц绱姞
- ));
// 鏌ヨ鍥炴/浠樻璁板綍
List<ReceiptPayment> receiptPayments = Collections.emptyList();
@@ -305,30 +274,11 @@
// 鍚堝悓鎬婚噾棰�
BigDecimal contractAmount = salesLedgerVo.getContractAmount() == null ? BigDecimal.ZERO : salesLedgerVo.getContractAmount();
// 寮�绁ㄦ�婚鍜屽洖娆炬�婚
- BigDecimal invoiceTotal = invoiceTotals.getOrDefault(ledgerId, BigDecimal.ZERO);
BigDecimal receiptPaymentAmountTotal = receiptTotals.getOrDefault(ledgerId, BigDecimal.ZERO);
- // 鏈紑绁ㄩ噾棰� = 鍚堝悓閲戦 - 宸插紑绁ㄩ噾棰�
- BigDecimal noInvoiceAmountTotal = contractAmount.subtract(invoiceTotal);
- if (noInvoiceAmountTotal.compareTo(BigDecimal.ZERO) < 0) {
- noInvoiceAmountTotal = BigDecimal.ZERO;
- }
-
- // 寰呭洖娆鹃噾棰� = 宸插紑绁ㄩ噾棰� - 宸插洖娆鹃噾棰�
- BigDecimal noReceiptPaymentAmountTotal = invoiceTotal.subtract(receiptPaymentAmountTotal);
- if (noReceiptPaymentAmountTotal.compareTo(BigDecimal.ZERO) < 0) {
- noReceiptPaymentAmountTotal = BigDecimal.ZERO;
- }
-
- salesLedgerVo.setNoInvoiceAmountTotal(noInvoiceAmountTotal);
- salesLedgerVo.setInvoiceTotal(invoiceTotal);
- salesLedgerVo.setReceiptPaymentAmountTotal(receiptPaymentAmountTotal);
- salesLedgerVo.setNoReceiptAmount(noReceiptPaymentAmountTotal);
-
// 濡傛灉宸茬粡鏈夎繃寮�绁ㄦ垨鍥炴鎿嶄綔,鍒欎笉鍏佽缂栬緫
- boolean hasInvoiceOperation = invoiceTotal.compareTo(BigDecimal.ZERO) > 0;
boolean hasReceiptOperation = receiptPaymentAmountTotal.compareTo(BigDecimal.ZERO) > 0;
- salesLedgerVo.setIsEdit(!(hasInvoiceOperation || hasReceiptOperation));
+ salesLedgerVo.setIsEdit(hasReceiptOperation);
salesLedgerVo.setStorageBlobVOs(fileUtil.getStorageBlobVOsByApplicationAndRecordTypeAndRecordId(ApplicationTypeEnum.FILE, RecordTypeEnum.SALES_LEDGER, ledgerId));
}
diff --git a/src/main/java/com/ruoyi/sales/dto/InvoiceLedgerDto.java b/src/main/java/com/ruoyi/sales/dto/InvoiceLedgerDto.java
deleted file mode 100644
index 8f15d3b..0000000
--- a/src/main/java/com/ruoyi/sales/dto/InvoiceLedgerDto.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package com.ruoyi.sales.dto;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.common.vo.FileVo;
-import com.ruoyi.sales.pojo.InvoiceLedger;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.time.LocalDate;
-import java.util.Date;
-import java.util.List;
-
-@Data
-public class InvoiceLedgerDto extends InvoiceLedger {
-
- private List<FileVo> fileList;
-
- @Schema(description = "鏌ヨ鏂囨湰")
- private String searchText;
-
- @Schema(description = "瀹㈡埛鍚嶇О")
- private String customerName;
-
- @Schema(description = "瀹㈡埛ID")
- private Integer customerId;
-
- @Schema(description = "瀹㈡埛鍚堝悓鍙�")
- private String customerContractNo;
-
- @Schema(description = "涓氬姟鍛�")
- private String salesman;
-
- @Schema(description = "鍙戠エ鏂囦欢鍚�")
- private String invoiceFileName;
-
- @Schema(description = "鍥炴閲戦")
- private BigDecimal receiptPaymentAmount;
-
- @Schema(description = "鍥炴鏃ユ湡")
- @JsonFormat(pattern = "yyyy-MM-dd")
- private Date receiptPaymentDate;
-
- @Schema(description = "鏈洖娆鹃噾棰�")
- private BigDecimal unReceiptPaymentAmount;
-
- @Schema(description = "绋庣巼")
- private BigDecimal taxRate;
-
- @Schema(description = "閿�鍞悎鍚屽彿")
- private String salesContractNo;
-
- @Schema(description = "閿�鍞悎鍚孖D")
- private Integer salesLedgerId;
-
- private String paymentMethod;
-}
diff --git a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationDto.java b/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationDto.java
deleted file mode 100644
index af7dedc..0000000
--- a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationDto.java
+++ /dev/null
@@ -1,29 +0,0 @@
-package com.ruoyi.sales.dto;
-
-import com.ruoyi.sales.pojo.InvoiceRegistration;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.util.List;
-
-@Data
-public class InvoiceRegistrationDto extends InvoiceRegistration {
-
- @Schema(description = "寮�绁ㄧ櫥璁颁骇鍝侀泦鍚�")
- private List<InvoiceRegistrationProductDto> productDtoList;
-
- @Schema(description = "瀹㈡埛鍚堝悓鍙�")
- private String customerContractNo;
-
- @Schema(description = "瀹㈡埛鍚嶇О")
- private String customerName;
-
- @Schema(description = "鍚堝悓閲戦")
- private BigDecimal contractAmount;
-
- @Schema(description = "鏈紑绁ㄩ噾棰�")
- private BigDecimal noInvoiceAmountTotal;
-
-}
diff --git a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java b/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
deleted file mode 100644
index 4f94afc..0000000
--- a/src/main/java/com/ruoyi/sales/dto/InvoiceRegistrationProductDto.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.ruoyi.sales.dto;
-
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.common.vo.FileVo;
-import com.ruoyi.sales.pojo.CommonFile;
-import com.ruoyi.sales.pojo.InvoiceLedgerFile;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.math.BigDecimal;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.List;
-
-@Data
-public class InvoiceRegistrationProductDto extends InvoiceRegistrationProduct {
-
- @Schema(description = "瀹㈡埛鍚堝悓鍙�")
- private String customerContractNo;
-
- @Schema(description = "瀹㈡埛鍚嶇О")
- private String customerName;
-
- @Schema(description = "閿�鍞悎鍚屽彿")
- private String salesContractNo;
-
- @Schema(description = "闄勪欢")
- private List<FileVo> fileList;
-
- @Schema(description = "鍙戠エ鍙�")
- private String invoiceNo;
-
- @Schema(description = "鍙戠エ閲戦")
- private BigDecimal invoiceTotal;
-
- @Schema(description = "寮�绁ㄤ汉")
- private String invoicePerson;
-
- @Schema(description = "寮�绁ㄦ椂闂�")
- @JsonFormat(pattern = "yyyy-MM-dd")
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- private LocalDate invoiceDate;
-
- @TableField(exist = false)
- private String invoiceDateStart;
- @TableField(exist = false)
- private String invoiceDateEnd;
-
- @Schema(description = "寮�绁ㄥ彴璐d")
- private Integer invoiceLedgerId;
-
- @Schema(description = "鍙戠エ鏂囦欢鍚�")
- private String invoiceFileName;
-
- private List<InvoiceLedgerFile> commonFiles;
-
- private String searchText;
-
- private Boolean status;
-
- private String projectName;
-
-
- @TableField(exist = false)
- private String createTimeStart;
- @TableField(exist = false)
- private String createTimeEnd;
-
-
-}
diff --git a/src/main/java/com/ruoyi/sales/excel/InvoiceLedgerExcelDto.java b/src/main/java/com/ruoyi/sales/excel/InvoiceLedgerExcelDto.java
index b5d09a7..82da2a9 100644
--- a/src/main/java/com/ruoyi/sales/excel/InvoiceLedgerExcelDto.java
+++ b/src/main/java/com/ruoyi/sales/excel/InvoiceLedgerExcelDto.java
@@ -1,19 +1,12 @@
package com.ruoyi.sales.excel;
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.common.vo.FileVo;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
-import com.ruoyi.sales.pojo.InvoiceLedger;
-import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.math.BigDecimal;
import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.List;
@Data
public class InvoiceLedgerExcelDto {
diff --git a/src/main/java/com/ruoyi/sales/excel/InvoiceRegisAndProductExcelDto.java b/src/main/java/com/ruoyi/sales/excel/InvoiceRegisAndProductExcelDto.java
deleted file mode 100644
index 8979504..0000000
--- a/src/main/java/com/ruoyi/sales/excel/InvoiceRegisAndProductExcelDto.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package com.ruoyi.sales.excel;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.framework.aspectj.lang.annotation.Excel;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-
-@Data
-public class InvoiceRegisAndProductExcelDto {
-
- @Excel(name = "閿�鍞悎鍚屽彿")
- private String salesContractNo;
-
- @Excel(name = "瀹㈡埛鍚堝悓鍙�")
- private String customerContractNo;
-
- @Excel(name = "瀹㈡埛鍚嶇О")
- private String customerName;
-
- @Excel(name = "涓氬姟鍛�")
- private String salesman;
-
- @Excel(name = "椤圭洰鍚嶇О")
- private String projectName;
-
- @Excel(name = "鍚堝悓閲戦")
- private BigDecimal contractAmount;
-
- @Excel(name = "浜у搧澶х被")
- private String productCategory;
-
- @Excel(name = "瑙勬牸鍨嬪彿")
- private String specificationModel;
-
- @Excel(name = "鍗曚綅")
- private String unit;
-
- @Excel(name = "鏁伴噺")
- private BigDecimal quantity;
-
- @Excel(name = "绋庣巼%")
- private BigDecimal taxRate;
-
- @Excel(name = "鍚◣鍗曚环")
- private BigDecimal taxInclusiveUnitPrice;
-
- @Excel(name = "鍚◣鎬讳环")
- private BigDecimal taxInclusiveTotalPrice;
-
- @Excel(name ="涓嶅惈绋庢�讳环")
- private BigDecimal taxExclusiveTotalPrice;
-
- @Excel(name ="鍙戠エ绫诲瀷")
- private String invoiceType;
-
- @Excel(name ="寮�绁ㄦ暟")
- private Integer invoiceNum;
-
- @Excel(name ="鏈紑绁ㄦ暟")
- private Integer noInvoiceNum;
-
- @Excel(name ="寮�绁ㄩ噾棰�")
- private BigDecimal invoiceAmount;
-
- @Excel(name ="鏈紑绁ㄩ噾棰�")
- private BigDecimal noInvoiceAmount;
-
-
-}
diff --git a/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerFileMapper.java b/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerFileMapper.java
deleted file mode 100644
index b8c0b4c..0000000
--- a/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerFileMapper.java
+++ /dev/null
@@ -1,8 +0,0 @@
-package com.ruoyi.sales.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.ruoyi.sales.pojo.InvoiceLedger;
-import com.ruoyi.sales.pojo.InvoiceLedgerFile;
-
-public interface InvoiceLedgerFileMapper extends BaseMapper<InvoiceLedgerFile> {
-}
diff --git a/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerMapper.java b/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerMapper.java
deleted file mode 100644
index a797024..0000000
--- a/src/main/java/com/ruoyi/sales/mapper/InvoiceLedgerMapper.java
+++ /dev/null
@@ -1,60 +0,0 @@
-package com.ruoyi.sales.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.pojo.InvoiceLedger;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface InvoiceLedgerMapper extends BaseMapper<InvoiceLedger> {
-
- /**
- * 寮�绁ㄥ彴璐﹀垎椤垫煡璇�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- IPage<InvoiceLedgerDto> invoiceLedgerPage(Page page, @Param("invoiceLedgerDto") InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 寮�绁ㄥ彴璐︽煡璇�
- * @param invoiceLedgerDto
- * @return
- */
- List<InvoiceLedgerDto> invoiceLedgerList(@Param("invoiceLedgerDto") InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceLedgerDto invoiceLedgerInfo(Integer id);
-
- /**
- * 瀹㈡埛閿�鍞褰�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- IPage<InvoiceLedgerDto> invoiceLedgerSalesAccount(Page page,@Param("invoiceLedgerDto") InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 浜у搧寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceRegistrationProductDto invoiceLedgerProductInfo(Integer id);
-
- /**
- * 鏍规嵁閿�鍞悎鍚岃绠楀凡寮�绁ㄩ噾棰�
- * @param salesLedgerIds
- * @return
- */
- List<InvoiceLedgerDto> invoicedTotal(List<Long> salesLedgerIds);
-
-}
diff --git a/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationMapper.java b/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationMapper.java
deleted file mode 100644
index 54425c4..0000000
--- a/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationMapper.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.ruoyi.sales.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.sales.dto.InvoiceRegistrationDto;
-import com.ruoyi.sales.excel.InvoiceRegisAndProductExcelDto;
-import com.ruoyi.sales.pojo.InvoiceRegistration;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface InvoiceRegistrationMapper extends BaseMapper<InvoiceRegistration> {
-
- /**
- * 寮�绁ㄧ櫥璁板垎椤垫煡璇�
- * @param page
- * @param invoiceRegistrationDto
- * @return
- */
- IPage<InvoiceRegistrationDto> invoiceRegistrationListPage(Page page, @Param("invoiceRegistrationDto") InvoiceRegistrationDto invoiceRegistrationDto);
-
- /**
- * 寮�绁ㄧ櫥璁板鍑烘暟鎹煡璇�
- * @return
- */
- List<InvoiceRegisAndProductExcelDto> invoiceRegisAndProductExcelDtoList();
-}
diff --git a/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationProductMapper.java b/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationProductMapper.java
deleted file mode 100644
index 1c1ae7a..0000000
--- a/src/main/java/com/ruoyi/sales/mapper/InvoiceRegistrationProductMapper.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.ruoyi.sales.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-public interface InvoiceRegistrationProductMapper extends BaseMapper<InvoiceRegistrationProduct> {
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佹煡璇�
- * @param invoiceRegistrationProductDto
- * @return
- */
- List<InvoiceRegistrationProductDto> invoiceRegistrationProductList(@Param("invoiceRegistrationProductDto") InvoiceRegistrationProductDto invoiceRegistrationProductDto);
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佸垎椤垫煡璇�
- * @param page
- * @param invoiceRegistrationProductDto
- * @return
- */
- IPage<InvoiceRegistrationProductDto> invoiceRegistrationProductPage(Page page, @Param("invoiceRegistrationProductDto") InvoiceRegistrationProductDto invoiceRegistrationProductDto);
-}
diff --git a/src/main/java/com/ruoyi/sales/mapper/ReceiptPaymentMapper.java b/src/main/java/com/ruoyi/sales/mapper/ReceiptPaymentMapper.java
index 576ebd7..e32b68c 100644
--- a/src/main/java/com/ruoyi/sales/mapper/ReceiptPaymentMapper.java
+++ b/src/main/java/com/ruoyi/sales/mapper/ReceiptPaymentMapper.java
@@ -4,14 +4,12 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.sales.dto.CustomerInteractionDto;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.ReceiptPaymentDto;
import com.ruoyi.sales.dto.ReceiptPaymentExeclDto;
import com.ruoyi.sales.pojo.ReceiptPayment;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
-import java.util.ArrayList;
import java.util.List;
public interface ReceiptPaymentMapper extends BaseMapper<ReceiptPayment> {
@@ -27,13 +25,6 @@
* @return
*/
IPage<ReceiptPaymentDto> bindInvoiceNoRegPage(Page page, @Param("req") ReceiptPaymentDto receiptPaymentDto);
-
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceLedgerDto invoiceInfo(Integer id);
/**
* 璁$畻鍓嶅灏戞潯鏁版嵁鍥炴閲戦缁煎悎
@@ -59,13 +50,6 @@
* @return
*/
List<CustomerInteractionDto> customerInteractions (ReceiptPaymentDto receiptPaymentDto);
-
- /**
- * 瀹㈡埛鍥炴璁板綍鏌ヨ
- * @param invoiceLedgerDto
- * @return
- */
- List<InvoiceLedgerDto> invoiceLedgerSalesAccount(@Param("invoiceLedgerDto") InvoiceLedgerDto invoiceLedgerDto);
/**
* 鏌ヨ鍥炴璁板綍涓嶅垎椤�
diff --git a/src/main/java/com/ruoyi/sales/pojo/InvoiceLedger.java b/src/main/java/com/ruoyi/sales/pojo/InvoiceLedger.java
deleted file mode 100644
index ef85b3a..0000000
--- a/src/main/java/com/ruoyi/sales/pojo/InvoiceLedger.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.ruoyi.sales.pojo;
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.fasterxml.jackson.annotation.JsonFormat;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-import java.math.BigDecimal;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-
-@Data
-public class InvoiceLedger {
-
- /**
- * 搴忓彿
- */
- @TableId(type = IdType.AUTO)
- private Integer id;
-
- @Schema(description = "invoice_registration_product琛ㄤ富閿�")
- private Integer invoiceRegistrationProductId;
-
- @Schema(description = "鍙戠エ鍙�")
- private String invoiceNo;
-
- @Schema(description = "鍙戠エ閲戦")
- private BigDecimal invoiceTotal;
-
- @Schema(description = "寮�绁ㄤ汉")
- private String invoicePerson;
-
- @Schema(description = "寮�绁ㄦ椂闂�")
- @JsonFormat(pattern = "yyyy-MM-dd")
- @DateTimeFormat(pattern = "yyyy-MM-dd")
- private LocalDate invoiceDate;
-
- @Schema(description = "鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @Schema(description = "鍒涘缓鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT)
- private Integer createUser;
-
- @Schema(description = "淇敼鏃堕棿")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private LocalDateTime updateTime;
-
- @Schema(description = "淇敼鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private Integer updateUser;
-
- @Schema(description = "绉熸埛ID")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
-
- @TableField(fill = FieldFill.INSERT)
- private Long deptId;
-}
diff --git a/src/main/java/com/ruoyi/sales/pojo/InvoiceLedgerFile.java b/src/main/java/com/ruoyi/sales/pojo/InvoiceLedgerFile.java
deleted file mode 100644
index 0d4a4f5..0000000
--- a/src/main/java/com/ruoyi/sales/pojo/InvoiceLedgerFile.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package com.ruoyi.sales.pojo;
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-@Data
-public class InvoiceLedgerFile {
-
- @Schema(description = "鏂囦欢ID")
- private Long id;
-
- @Schema(description = "鏂囦欢鍚嶇О")
- private String name;
-
- @Schema(description = "鏂囦欢璺緞")
- private String url;
-
- @Schema(description = "鏂囦欢澶у皬")
- private int fileSize;
-
- @Schema(description = "寮�绁ㄥ彴璐D")
- private Integer invoiceLedgerId;
-
- @Schema(description = "鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @Schema(description = "淇敼鏃堕棿")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private LocalDateTime updateTime;
-
- @Schema(description = "鍒涘缓鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT)
- private Integer createUser;
-
- @Schema(description = "淇敼鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private Integer updateUser;
-
- @Schema(description = "绉熸埛ID")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
- @TableField(fill = FieldFill.INSERT)
- private Long deptId;
-}
diff --git a/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistration.java b/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistration.java
deleted file mode 100644
index e7a926b..0000000
--- a/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistration.java
+++ /dev/null
@@ -1,56 +0,0 @@
-package com.ruoyi.sales.pojo;
-
-import com.baomidou.mybatisplus.annotation.*;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.time.LocalDateTime;
-
-@Data
-@TableName("invoice_registration")
-public class InvoiceRegistration {
-
- /**
- * 搴忓彿
- */
- @TableId(type = IdType.AUTO)
- private Integer id;
-
- @Schema(description = "閿�鍞彴璐ales_ledger涓婚敭")
- private Integer salesLedgerId;
-
- @Schema(description = "閿�鍞悎鍚屽彿")
- private String salesContractNo;
-
- @Schema(description = "瀹㈡埛鍚嶇ОID")
- private Integer customerId;
-
- @Schema(description = "涓氬姟鍛�")
- private String salesman;
-
- @Schema(description = "椤圭洰鍚嶇О")
- private String projectName;
-
- @Schema(description = "鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @Schema(description = "鍒涘缓鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT)
- private Integer createUser;
-
- @Schema(description = "淇敼鏃堕棿")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private LocalDateTime updateTime;
-
- @Schema(description = "淇敼鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private Integer updateUser;
-
- @Schema(description = "绉熸埛ID")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
- @TableField(fill = FieldFill.INSERT)
- private Long deptId;
-}
diff --git a/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistrationProduct.java b/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistrationProduct.java
deleted file mode 100644
index 75ef549..0000000
--- a/src/main/java/com/ruoyi/sales/pojo/InvoiceRegistrationProduct.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package com.ruoyi.sales.pojo;
-
-import com.baomidou.mybatisplus.annotation.*;
-import io.swagger.v3.oas.annotations.media.Schema;
-import lombok.Data;
-
-import java.math.BigDecimal;
-import java.time.LocalDateTime;
-
-@TableName("invoice_registration_product")
-@Data
-public class InvoiceRegistrationProduct {
-
- /**
- * 搴忓彿
- */
- @TableId(type = IdType.AUTO)
- private Integer id;
-
- @Schema(description = "鍏宠仈閿�鍞彴璐︿富琛ㄤ富閿�")
- private Integer salesLedgerId;
-
- @Schema(description = "sales_ledger_product涓婚敭")
- private Integer salesLedgerProductId;
-
- @Schema(description = "寮�绁ㄧ櫥璁拌〃invoice_registration涓婚敭")
- private Integer invoiceRegistrationId;
-
- @Schema(description = "浜у搧澶х被")
- private String productCategory;
-
- @Schema(description = "瑙勬牸鍨嬪彿")
- private String specificationModel;
-
- @Schema(description = "鍗曚綅")
- private String unit;
-
- @Schema(description = "鏁伴噺")
- private BigDecimal quantity;
-
- @Schema(description = "绋庣巼")
- private BigDecimal taxRate;
-
- @Schema(description = "鍚◣鍗曚环")
- private BigDecimal taxInclusiveUnitPrice;
-
- @Schema(description = "鍚◣鎬讳环")
- private BigDecimal taxInclusiveTotalPrice;
-
- @Schema(description = "涓嶅惈绋庢�讳环")
- private BigDecimal taxExclusiveTotalPrice;
-
- @Schema(description = "鍙戠エ绫诲瀷")
- private String invoiceType;
-
- @Schema(description = "寮�绁ㄦ暟")
- private BigDecimal invoiceNum;
-
- @Schema(description = "鏈紑绁ㄦ暟")
- private BigDecimal noInvoiceNum;
-
- @Schema(description = "寮�绁ㄩ噾棰�")
- private BigDecimal invoiceAmount;
-
- @Schema(description = "鏈紑绁ㄩ噾棰�")
- private BigDecimal noInvoiceAmount;
-
- @Schema(description = "鍒涘缓鏃堕棿")
- @TableField(fill = FieldFill.INSERT)
- private LocalDateTime createTime;
-
- @Schema(description = "鍒涘缓鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT)
- private Integer createUser;
-
- @Schema(description = "淇敼鏃堕棿")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private LocalDateTime updateTime;
-
- @Schema(description = "淇敼鐢ㄦ埛")
- @TableField(fill = FieldFill.INSERT_UPDATE)
- private Integer updateUser;
-
- @Schema(description = "绉熸埛ID")
- @TableField(fill = FieldFill.INSERT)
- private Long tenantId;
-
- @TableField(fill = FieldFill.INSERT)
- private Long deptId;
-}
diff --git a/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java b/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
deleted file mode 100644
index e9335ca..0000000
--- a/src/main/java/com/ruoyi/sales/service/InvoiceLedgerService.java
+++ /dev/null
@@ -1,114 +0,0 @@
-package com.ruoyi.sales.service;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.vo.FileVo;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.pojo.InvoiceLedgerFile;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import org.springframework.web.multipart.MultipartFile;
-
-import jakarta.servlet.http.HttpServletResponse;
-import java.math.BigDecimal;
-import java.util.List;
-
-public interface InvoiceLedgerService {
-
- /**
- * 寮�绁ㄥ彴璐︽柊澧�
- * @param productDto
- * @return
- */
- int invoiceLedgerSaveOrUpdate( InvoiceRegistrationProductDto productDto);
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param ids
- * @return
- */
- int invoiceLedgerDel(List<Integer> ids);
-
- /**
- * 寮�绁ㄥ彴璐﹀垎椤垫煡璇�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- IPage<InvoiceLedgerDto> invoiceLedgerPage(Page page, InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠舵煡璇�
- * @param invoiceLedgerId
- * @return
- */
- List<InvoiceLedgerFile> invoiceLedgerFileList(Integer invoiceLedgerId);
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠朵笂浼�
- * @param file
- * @return
- */
- FileVo invoiceLedgerUploadFile(MultipartFile file);
-
- /**
- * 闄勪欢涓嬭浇
- * @param response
- * @param invoiceRegistrationProductDto
- * @return
- */
- void invoiceLedgerExport(HttpServletResponse response ,InvoiceRegistrationProductDto invoiceRegistrationProductDto);
-
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceLedgerDto invoiceLedgerDetail(Integer id);
-
- /**
- * 闄勪欢鎻愪氦
- * @param invoiceLedgerDto
- * @return
- */
- void invoiceLedgerCommitFile(InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 寮�绁ㄥ彴璐︽煡璇�
- * @param invoiceLedgerDto
- * @return
- */
- List<InvoiceLedgerDto> invoiceLedgerList(InvoiceLedgerDto invoiceLedgerDto);
-
- /**
- * 瀹㈡埛閿�鍞褰�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- IPage<InvoiceLedgerDto> invoiceLedgerSalesAccount(Page page, InvoiceLedgerDto invoiceLedgerDto);
-
- BigDecimal getInvoiceAmount();
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佸垎椤垫煡璇�
- * @param page
- * @param registrationProductDto
- * @return
- */
- IPage<InvoiceRegistrationProductDto> registrationProductPage(Page page, InvoiceRegistrationProductDto registrationProductDto);
-
- /**
- * 浜у搧寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceRegistrationProductDto invoiceLedgerProductDetail(Integer id);
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param invoiceRegistrationProductId
- * @return
- */
- void delInvoiceLedger(Integer invoiceRegistrationProductId);
-}
diff --git a/src/main/java/com/ruoyi/sales/service/InvoiceRegistrationService.java b/src/main/java/com/ruoyi/sales/service/InvoiceRegistrationService.java
deleted file mode 100644
index 4044a4e..0000000
--- a/src/main/java/com/ruoyi/sales/service/InvoiceRegistrationService.java
+++ /dev/null
@@ -1,65 +0,0 @@
-package com.ruoyi.sales.service;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.sales.dto.InvoiceRegistrationDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.dto.SalesLedgerDto;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import jakarta.servlet.http.HttpServletResponse;
-import java.util.List;
-
-public interface InvoiceRegistrationService {
-
- /**
- * 寮�绁ㄧ櫥璁拌褰曟柊澧�
- * @param salesLedgerDto
- * @return
- */
- void invoiceRegistrationSave(SalesLedgerDto salesLedgerDto);
-
- /**
- * 寮�绁ㄧ櫥璁板垹闄�
- * @param ids
- * @return
- */
- int invoiceRegistrationDel(List<Integer> ids);
-
-
- /**
- * 寮�绁ㄨ褰曚慨鏀�
- * @param invoiceRegistrationDto
- * @return
- */
- void invoiceRegistrationUpdate(InvoiceRegistrationDto invoiceRegistrationDto);
-
- /**
- * 寮�绁ㄧ櫥璁板垎椤垫煡璇�
- * @param page
- * @param invoiceRegistrationDto
- * @return
- */
- IPage<InvoiceRegistrationDto> invoiceRegistrationListPage(Page page, InvoiceRegistrationDto invoiceRegistrationDto);
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佹煡璇�
- * @param invoiceRegistrationProductDto
- * @return
- */
- List<InvoiceRegistrationProductDto> invoiceRegistrationProductList(InvoiceRegistrationProductDto invoiceRegistrationProductDto);
-
- /**
- * 寮�绁ㄧ櫥璁拌鎯�
- * @param id
- * @return
- */
- InvoiceRegistrationDto invoiceRegistrationDetail(Integer id);
-
- /**
- * 寮�绁ㄧ櫥璁板鍑�
- * @param response
- * @param invoiceRegistrationDto
- */
- void invoiceRegistrationExport(HttpServletResponse response, InvoiceRegistrationDto invoiceRegistrationDto);
-}
diff --git a/src/main/java/com/ruoyi/sales/service/ReceiptPaymentService.java b/src/main/java/com/ruoyi/sales/service/ReceiptPaymentService.java
index 49378c8..9c1d439 100644
--- a/src/main/java/com/ruoyi/sales/service/ReceiptPaymentService.java
+++ b/src/main/java/com/ruoyi/sales/service/ReceiptPaymentService.java
@@ -2,8 +2,6 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.sales.dto.CustomerInteractionDto;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.ReceiptPaymentDto;
import com.ruoyi.sales.pojo.ReceiptPayment;
@@ -60,12 +58,7 @@
*/
IPage<ReceiptPaymentDto> bindInvoiceNoRegPage(Page page, ReceiptPaymentDto receiptPaymentDto);
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- InvoiceLedgerDto invoiceInfo(Integer id);
+
Map<String,BigDecimal> getAmountMouth();
@@ -78,13 +71,6 @@
* 鏌ヨ鍥炴璁板綍鍒嗛〉
*/
IPage<ReceiptPaymentDto> receiptPaymentHistoryListPage(Page page, ReceiptPaymentDto receiptPaymentDto);
-
- /**
- * 瀹㈡埛寰�鏉ヨ褰曟煡璇�
- * @param receiptPaymentDto
- * @return
- */
- List<InvoiceLedgerDto> customerInteractions (InvoiceLedgerDto receiptPaymentDto);
/**
* 鏌ヨ鍥炴璁板綍鍒嗛〉
diff --git a/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
deleted file mode 100644
index d18a51a..0000000
--- a/src/main/java/com/ruoyi/sales/service/impl/InvoiceLedgerServiceImpl.java
+++ /dev/null
@@ -1,509 +0,0 @@
-package com.ruoyi.sales.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.common.vo.FileVo;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.excel.InvoiceLedgerExcelDto;
-import com.ruoyi.sales.mapper.*;
-import com.ruoyi.sales.pojo.*;
-import com.ruoyi.sales.service.InvoiceLedgerService;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.collections4.CollectionUtils;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.ObjectUtils;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.File;
-import java.math.BigDecimal;
-import java.time.LocalDate;
-import java.time.YearMonth;
-import java.util.List;
-import java.util.Objects;
-import java.util.UUID;
-import java.util.stream.Collectors;
-
-@Service
-@RequiredArgsConstructor
-public class InvoiceLedgerServiceImpl extends ServiceImpl<InvoiceLedgerMapper, InvoiceLedger> implements InvoiceLedgerService {
-
- @Value("${ruoyi.profile}")
- private String uploadFile;
-
- private final InvoiceLedgerMapper invoiceLedgerMapper;
- private final InvoiceLedgerFileMapper invoiceLedgerFileMapper;
- private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
- private final ReceiptPaymentMapper receiptPaymentMapper;
- private final SalesLedgerProductMapper salesLedgerProductMapper;
-
- /**
- * 寮�绁ㄥ彴璐︽柊澧�
- * @param productDto
- * @return
- */
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int invoiceLedgerSaveOrUpdate(InvoiceRegistrationProductDto productDto) {
- // 鍒ゆ柇鏄惁宸茬粡鏂板寮�绁ㄥ彴璐�
- QueryWrapper<InvoiceLedger> ledgerQueryWrapper = new QueryWrapper<>();
- ledgerQueryWrapper.eq("invoice_registration_product_id", productDto.getId());
- InvoiceLedger invoiceLedger = invoiceLedgerMapper.selectOne(ledgerQueryWrapper);
- int result;
- if(ObjectUtils.isEmpty(invoiceLedger)){
- invoiceLedger = new InvoiceLedger();
- invoiceLedger.setInvoiceRegistrationProductId(productDto.getId());
- invoiceLedger.setInvoiceNo(productDto.getInvoiceNo());
- invoiceLedger.setInvoiceTotal(productDto.getInvoiceTotal());
- invoiceLedger.setInvoiceDate(productDto.getInvoiceDate());
- invoiceLedger.setInvoicePerson(productDto.getInvoicePerson());
- result = invoiceLedgerMapper.insert(invoiceLedger);
- }else {
- // 淇敼sale_leger_product
- InvoiceRegistrationProduct invoiceRegistrationProduct = invoiceRegistrationProductMapper.selectById(productDto.getId());
- SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(invoiceRegistrationProduct.getSalesLedgerProductId());
-
- BigDecimal invoiceNum = productDto.getInvoiceTotal().divide(invoiceRegistrationProduct.getTaxInclusiveUnitPrice(), 2, BigDecimal.ROUND_HALF_UP);
- //璁$畻 鏈紑绁ㄦ暟/鏈紑绁ㄩ噾棰�
- BigDecimal noInvoiceAmount = salesLedgerProduct.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()).subtract(productDto.getInvoiceTotal());
- BigDecimal noInvoiceNum = salesLedgerProduct.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()).subtract(invoiceNum);
- salesLedgerProduct.setNoInvoiceAmount(noInvoiceAmount);
- salesLedgerProduct.setNoInvoiceNum(noInvoiceNum);
- salesLedgerProductMapper.updateById(salesLedgerProduct);
-
- // 淇敼褰撳墠浜у搧寮�绁ㄧ櫥璁拌褰曟暟鎹�
- BigDecimal currentNoInvoiceNum = invoiceRegistrationProduct.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()).subtract(invoiceNum);
- BigDecimal currentNoInvoiceAmount = invoiceRegistrationProduct.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()).subtract(productDto.getInvoiceTotal());
- invoiceRegistrationProduct.setInvoiceNum(invoiceNum);
- invoiceRegistrationProduct.setInvoiceAmount(productDto.getInvoiceTotal());
- invoiceRegistrationProduct.setNoInvoiceNum(currentNoInvoiceNum);
- invoiceRegistrationProduct.setNoInvoiceAmount(currentNoInvoiceAmount);
- invoiceRegistrationProductMapper.updateById(invoiceRegistrationProduct);
-
- invoiceLedger.setInvoiceNo(productDto.getInvoiceNo());
- invoiceLedger.setInvoiceTotal(productDto.getInvoiceTotal());
- invoiceLedger.setInvoiceDate(productDto.getInvoiceDate());
- invoiceLedger.setInvoicePerson(productDto.getInvoicePerson());
- result = invoiceLedgerMapper.updateById(invoiceLedger);
- //鍒犻櫎鎵�鏈夐檮浠跺叧鑱�
- LambdaQueryWrapper<InvoiceLedgerFile> delWrapper = new LambdaQueryWrapper<>();
- delWrapper.eq(InvoiceLedgerFile::getInvoiceLedgerId, invoiceLedger.getId());
- invoiceLedgerFileMapper.delete(delWrapper);
- }
- List<FileVo> fileList = productDto.getFileList();
- if(CollectionUtils.isNotEmpty(fileList)){
- for (FileVo fileVo : fileList) {
- InvoiceLedgerFile invoiceLedgerFile = new InvoiceLedgerFile();
- BeanUtils.copyProperties(fileVo, invoiceLedgerFile);
- invoiceLedgerFile.setInvoiceLedgerId(invoiceLedger.getId());
- invoiceLedgerFileMapper.insert(invoiceLedgerFile);
- }
- }
- return result;
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param ids
- * @return
- */
- @Override
- public int invoiceLedgerDel(List<Integer> ids) {
- LambdaQueryWrapper<InvoiceLedger> delWrapper = new LambdaQueryWrapper<>();
- delWrapper.in(InvoiceLedger::getId, ids);
- return invoiceLedgerMapper.delete(delWrapper);
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垎椤垫煡璇�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- @Override
- public IPage<InvoiceLedgerDto> invoiceLedgerPage(Page page, InvoiceLedgerDto invoiceLedgerDto) {
- return invoiceLedgerMapper.invoiceLedgerPage(page, invoiceLedgerDto);
- }
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠舵煡璇�
- * @param invoiceLedgerId
- * @return
- */
- @Override
- public List<InvoiceLedgerFile> invoiceLedgerFileList(Integer invoiceLedgerId) {
- LambdaQueryWrapper<InvoiceLedgerFile> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.eq(InvoiceLedgerFile::getInvoiceLedgerId, invoiceLedgerId);
- return invoiceLedgerFileMapper.selectList(queryWrapper);
- }
-
- /**
- * 寮�绁ㄥ彴璐︽枃浠朵笂浼�
- * @param file
- * @return
- */
- @Override
- public FileVo invoiceLedgerUploadFile(MultipartFile file) {
- FileVo fileVo = new FileVo();
- try {
- String baseDir = uploadFile + File.separatorChar + "invoiceLedger";
- File dirFile = new File(baseDir);
- if(!dirFile.exists()){
- dirFile.mkdirs();
- }
- String filePath = baseDir + File.separatorChar + UUID.randomUUID() + "_" + file.getOriginalFilename();
- file.transferTo(new File(filePath));
- fileVo.setName(file.getOriginalFilename());
- fileVo.setUrl(filePath);
- fileVo.setFileSize((int)file.getSize());
- }catch (Exception e){
- e.printStackTrace();
- throw new RuntimeException("鏂囦欢涓婁紶澶辫触");
- }
- return fileVo;
- }
-
- /**
- * 闄勪欢涓嬭浇
- * @param response
- * @param invoiceRegistrationProductDto
- * @return
- */
- @Override
- public void invoiceLedgerExport(HttpServletResponse response, InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
- List<InvoiceRegistrationProductDto> invoiceRegistrationProductList = invoiceRegistrationProductMapper.invoiceRegistrationProductList(invoiceRegistrationProductDto);
- List<InvoiceLedgerExcelDto> invoiceLedgerExcelDtoList = invoiceRegistrationProductList.stream().map(item -> {
- InvoiceLedgerExcelDto invoiceLedgerExcelDto = new InvoiceLedgerExcelDto();
- BeanUtils.copyProperties(item, invoiceLedgerExcelDto);
- return invoiceLedgerExcelDto;
- }).collect(Collectors.toList());
- ExcelUtil<InvoiceLedgerExcelDto> util = new ExcelUtil<InvoiceLedgerExcelDto>(InvoiceLedgerExcelDto.class);
- util.exportExcel(response, invoiceLedgerExcelDtoList, "渚涘簲鍟嗗鍑�");
- }
-
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- @Override
- public InvoiceLedgerDto invoiceLedgerDetail(Integer id) {
- InvoiceLedgerDto invoiceLedgerDto = invoiceLedgerMapper.invoiceLedgerInfo(id);
- if(ObjectUtils.isEmpty(invoiceLedgerDto)){
- throw new RuntimeException("寮�绁ㄥ彴璐︽煡鎵惧け璐�");
- }
- // 鏌ヨ闄勪欢
- QueryWrapper<InvoiceLedgerFile> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("invoice_ledger_id", id);
- List<InvoiceLedgerFile> invoiceLedgerFileList = invoiceLedgerFileMapper.selectList(queryWrapper);
- List<FileVo> fileList = invoiceLedgerFileList.stream().map(item -> {
- FileVo fileVo = new FileVo();
- BeanUtils.copyProperties(item, fileVo);
- return fileVo;
- }).collect(Collectors.toList());
- invoiceLedgerDto.setFileList(fileList);
- return invoiceLedgerDto;
- }
-
- /**
- * 闄勪欢鎻愪氦
- * @param invoiceLedgerDto
- * @return
- */
- @Override
- public void invoiceLedgerCommitFile(InvoiceLedgerDto invoiceLedgerDto) {
- if(null == invoiceLedgerDto.getId()){
- throw new RuntimeException("缂哄皯鍙戠エ鍙拌处涓婚敭");
- }
- if(CollectionUtils.isEmpty(invoiceLedgerDto.getFileList())){
- throw new RuntimeException("缂哄皯鏂囦欢淇℃伅");
- }
- QueryWrapper<InvoiceLedger> ledgerQueryWrapper = new QueryWrapper<>();
- ledgerQueryWrapper.eq("invoice_registration_product_id", invoiceLedgerDto.getId());
- InvoiceLedger invoiceLedger = invoiceLedgerMapper.selectOne(ledgerQueryWrapper);
- if(ObjectUtils.isEmpty(invoiceLedger)){
- throw new RuntimeException("寮�绁ㄥ彴璐︽湭鐧昏");
- }
- List<FileVo> fileList = invoiceLedgerDto.getFileList();
- fileList.forEach(fileVo -> {
- InvoiceLedgerFile invoiceLedgerFile = new InvoiceLedgerFile();
- BeanUtils.copyProperties(fileVo, invoiceLedgerFile);
- invoiceLedgerFile.setInvoiceLedgerId(invoiceLedger.getId());
- invoiceLedgerFileMapper.insert(invoiceLedgerFile);
- });
- }
-
- /**
- * 寮�绁ㄥ彴璐︽煡璇�
- * @param invoiceLedgerDto
- * @return
- */
- @Override
- public List<InvoiceLedgerDto> invoiceLedgerList(InvoiceLedgerDto invoiceLedgerDto) {
- return invoiceLedgerMapper.invoiceLedgerList(invoiceLedgerDto);
- }
-
- /**
- * 瀹㈡埛閿�鍞褰�
- * @param page
- * @param invoiceLedgerDto
- * @return
- */
- @Override
- public IPage<InvoiceLedgerDto> invoiceLedgerSalesAccount(Page page, InvoiceLedgerDto invoiceLedgerDto) {
- IPage<InvoiceLedgerDto> invoiceLedgerDtoIPage = invoiceLedgerMapper.invoiceLedgerSalesAccount(page, invoiceLedgerDto);
- return invoiceLedgerDtoIPage;
- }
-
- @Override
- public BigDecimal getInvoiceAmount() {
- LocalDate now = LocalDate.now();
- YearMonth currentMonth = YearMonth.from(now);
-
- // 鍒涘缓LambdaQueryWrapper
- LambdaQueryWrapper<InvoiceLedger> queryWrapper = new LambdaQueryWrapper<>();
- queryWrapper.ge(InvoiceLedger::getInvoiceDate, currentMonth.atDay(1).atStartOfDay()) // 澶т簬绛変簬鏈湀绗竴澶�
- .lt(InvoiceLedger::getInvoiceDate, currentMonth.plusMonths(1).atDay(1).atStartOfDay()); // 灏忎簬涓嬫湀绗竴澶�
-
- // 鎵ц鏌ヨ骞惰绠楁�诲拰
- List<InvoiceLedger> invoiceLedgers = invoiceLedgerMapper.selectList(queryWrapper);
-
- BigDecimal totalContractAmount = invoiceLedgers.stream()
- .map(InvoiceLedger::getInvoiceTotal)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
-
- return totalContractAmount;
- }
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佸垎椤垫煡璇�
- * @param page
- * @param registrationProductDto
- * @return
- */
- @Override
- public IPage<InvoiceRegistrationProductDto> registrationProductPage(Page page, InvoiceRegistrationProductDto registrationProductDto) {
- IPage<InvoiceRegistrationProductDto> invoiceRegistrationProductDtoIPage = invoiceRegistrationProductMapper.invoiceRegistrationProductPage(page, registrationProductDto);
- if (registrationProductDto.getStatus()) {
- invoiceRegistrationProductDtoIPage.getRecords().removeIf(invoiceRegistrationProduct -> !StringUtils.isEmpty(invoiceRegistrationProduct.getInvoiceNo()));
- }
- invoiceRegistrationProductDtoIPage.getRecords().forEach(invoiceRegistrationProductDto -> {
- invoiceRegistrationProductDto.setCommonFiles(invoiceLedgerFileMapper.selectList(new QueryWrapper<InvoiceLedgerFile>().lambda()
- .eq(InvoiceLedgerFile::getInvoiceLedgerId, invoiceRegistrationProductDto.getInvoiceLedgerId())));
- });
- return invoiceRegistrationProductDtoIPage;
- }
-
- /**
- * 浜у搧寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- @Override
- public InvoiceRegistrationProductDto invoiceLedgerProductDetail(Integer id) {
- InvoiceRegistrationProductDto invoiceRegistrationProductDto = invoiceLedgerMapper.invoiceLedgerProductInfo(id);
- if(ObjectUtils.isEmpty(invoiceRegistrationProductDto)){
- throw new RuntimeException("浜у搧寮�绁ㄥ彴璐︽煡鎵惧け璐�");
- }
- List<InvoiceRegistrationProduct> invoiceRegistrationProducts = invoiceRegistrationProductMapper.selectList(new LambdaQueryWrapper<InvoiceRegistrationProduct>()
- .eq(InvoiceRegistrationProduct::getSalesLedgerProductId, invoiceRegistrationProductDto.getSalesLedgerProductId()));
- if(CollectionUtils.isNotEmpty(invoiceRegistrationProducts)){
- invoiceRegistrationProductDto.setNoInvoiceNum(invoiceRegistrationProductDto.getQuantity()
- .subtract(invoiceRegistrationProducts.stream().map(InvoiceRegistrationProduct::getInvoiceNum).reduce(BigDecimal.ZERO, BigDecimal::add)));
- invoiceRegistrationProductDto.setNoInvoiceAmount(invoiceRegistrationProductDto.getTaxInclusiveTotalPrice()
- .subtract(invoiceRegistrationProducts.stream().map(InvoiceRegistrationProduct::getInvoiceAmount).reduce(BigDecimal.ZERO, BigDecimal::add)));
- }
- // 鏌ヨ闄勪欢
- QueryWrapper<InvoiceLedgerFile> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("invoice_ledger_id", invoiceRegistrationProductDto.getInvoiceLedgerId());
- List<InvoiceLedgerFile> invoiceLedgerFileList = invoiceLedgerFileMapper.selectList(queryWrapper);
- List<FileVo> fileList = invoiceLedgerFileList.stream().map(item -> {
- FileVo fileVo = new FileVo();
- BeanUtils.copyProperties(item, fileVo);
- return fileVo;
- }).collect(Collectors.toList());
- invoiceRegistrationProductDto.setFileList(fileList);
- return invoiceRegistrationProductDto;
- }
-
- /**
- * 寮�绁ㄥ彴璐﹀垹闄�
- * @param invoiceRegistrationProductId
- * @return
- */
- @Override
- @Transactional(rollbackFor = Exception.class)
- public void delInvoiceLedger(Integer invoiceRegistrationProductId) {
- // 鍒ゆ柇鏄惁鏈夊洖娆捐褰�
- List<ReceiptPayment> receiptPaymentList = receiptPaymentMapper.receiptPaymentListByProdRegId(invoiceRegistrationProductId);
- if(!CollectionUtils.isEmpty(receiptPaymentList)){
- throw new RuntimeException("璇峰厛鍒犻櫎鍥炴璁板綍");
- }
- // 鍒ゆ柇鏄惁鏈夊紑绁ㄧ櫥璁拌褰�
- InvoiceRegistrationProduct invoiceRegistrationProduct = invoiceRegistrationProductMapper.selectById(invoiceRegistrationProductId);
- if(ObjectUtils.isEmpty(invoiceRegistrationProduct)){
- throw new RuntimeException("寮�绁ㄧ櫥璁拌褰曟煡鎵惧け璐�");
- }
- // 鍒ゆ柇璇ュ紑绁ㄥ彴璐︽槸鍚︽湭褰撴湀锛屽鏋滀负褰撴湀鐩存帴鍒犻櫎鍚﹀垯鏂板涓�鏉$浉鍙嶈礋鏁版暟鎹�
- QueryWrapper<InvoiceLedger> ledgerQueryWrapper = new QueryWrapper<>();
- ledgerQueryWrapper.eq("invoice_registration_product_id", invoiceRegistrationProductId);
- InvoiceLedger invoiceLedger = invoiceLedgerMapper.selectOne(ledgerQueryWrapper);
- if(ObjectUtils.isEmpty(invoiceLedger)){
- throw new RuntimeException("寮�绁ㄥ彴璐︽煡鎵惧け璐�");
- }
- if( invoiceLedger.getInvoiceDate() == null){
- dealCurrentMonthDel(invoiceRegistrationProductId,invoiceRegistrationProduct);
- return;
- }
- // 鑾峰彇褰撳墠鏃ユ湡
- LocalDate today = LocalDate.now();
- // 浣跨敤YearMonth姣旇緝骞翠唤鍜屾湀浠芥槸鍚︾浉鍚�
- boolean equalsFlag = YearMonth.from(invoiceLedger.getInvoiceDate()).equals(YearMonth.from(today));
- if(equalsFlag){
- dealCurrentMonthDel(invoiceRegistrationProductId,invoiceRegistrationProduct);
- }else {
- dealOtherMonthDel(invoiceRegistrationProduct,invoiceLedger);
- }
- }
-
- /**
- * 澶勭悊褰撴湀寮�绁ㄥ彴璐﹀垹闄�
- *
- * @param invoiceRegistrationProductId
- * @param invoiceRegistrationProduct
- */
-
- private void dealCurrentMonthDel(Integer invoiceRegistrationProductId, InvoiceRegistrationProduct invoiceRegistrationProduct) {
-
- // 鍒犻櫎寮�绁ㄥ彴璐�
- QueryWrapper<InvoiceLedger> delLedgerWrapper = new QueryWrapper<>();
- delLedgerWrapper.eq("invoice_registration_product_id", invoiceRegistrationProductId);
- invoiceLedgerMapper.delete(delLedgerWrapper);
-
- // 鏌ヨ褰撳墠浜у搧涓嬬殑鎵�鏈夊紑绁ㄧ櫥璁�
- QueryWrapper<InvoiceRegistrationProduct> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("sales_ledger_id", invoiceRegistrationProduct.getSalesLedgerId());
- queryWrapper.eq("sales_ledger_product_id", invoiceRegistrationProduct.getSalesLedgerProductId());
- queryWrapper.orderByAsc("create_time");
- List<InvoiceRegistrationProduct> allList = invoiceRegistrationProductMapper.selectList(queryWrapper);
-
- int index = -1;
- for (int i = 0; i < allList.size(); i++) {
- if (invoiceRegistrationProductId.equals(allList.get(i).getId())) {
- index = i;
- break;
- }
- }
- if (index == -1) {
- return;
- }
-
- for (int i = index + 1; i < allList.size(); i++) {
- InvoiceRegistrationProduct current = allList.get(i);
-
- current.setNoInvoiceNum(current.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()));
- current.setNoInvoiceAmount(current.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()));
-
- invoiceRegistrationProductMapper.updateById(current);
- }
-
- // 鍒犻櫎褰撳墠寮�绁ㄧ櫥璁�
- invoiceRegistrationProductMapper.deleteById(invoiceRegistrationProductId);
-
- // 鏌ヨ鍒犻櫎鍚庣殑鍓╀綑寮�绁ㄧ櫥璁�
- QueryWrapper<InvoiceRegistrationProduct> newQueryWrapper = new QueryWrapper<>();
- newQueryWrapper.eq("sales_ledger_id", invoiceRegistrationProduct.getSalesLedgerId());
- newQueryWrapper.eq("sales_ledger_product_id", invoiceRegistrationProduct.getSalesLedgerProductId());
- newQueryWrapper.orderByAsc("create_time");
- List<InvoiceRegistrationProduct> remainList = invoiceRegistrationProductMapper.selectList(newQueryWrapper);
-
- // 鏌ヨ閿�鍞彴璐︿骇鍝�
- SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(invoiceRegistrationProduct.getSalesLedgerProductId());
-
- if (CollectionUtils.isEmpty(remainList)) {
- // 娌℃湁浠讳綍寮�绁ㄨ褰曪紝鎭㈠鍒濆鐘舵��
- salesLedgerProduct.setInvoiceNum(BigDecimal.ZERO);
- salesLedgerProduct.setInvoiceAmount(BigDecimal.ZERO);
- salesLedgerProduct.setNoInvoiceNum(salesLedgerProduct.getQuantity());
- salesLedgerProduct.setNoInvoiceAmount(salesLedgerProduct.getTaxInclusiveTotalPrice());
- } else {
- salesLedgerProduct.setInvoiceNum(salesLedgerProduct.getInvoiceNum().subtract(invoiceRegistrationProduct.getInvoiceNum()));
- salesLedgerProduct.setInvoiceAmount(salesLedgerProduct.getInvoiceAmount().subtract(invoiceRegistrationProduct.getInvoiceAmount()));
- salesLedgerProduct.setNoInvoiceNum(salesLedgerProduct.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()));
- salesLedgerProduct.setNoInvoiceAmount(salesLedgerProduct.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()));
- }
-
- salesLedgerProductMapper.updateById(salesLedgerProduct);
- }
-
- /**
- * 澶勭悊鍏朵粬鏈堜唤寮�绁ㄥ彴璐﹀垹闄�
- * @param invoiceRegistrationProduct
- * @param invoiceLedger
- */
- private void dealOtherMonthDel(InvoiceRegistrationProduct invoiceRegistrationProduct, InvoiceLedger invoiceLedger) {
- //鏌ヨ鍘嗗彶寮�绁ㄧ櫥璁�
- QueryWrapper<InvoiceRegistrationProduct> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("sales_ledger_id", invoiceRegistrationProduct.getSalesLedgerId());
- queryWrapper.eq("sales_ledger_product_id", invoiceRegistrationProduct.getSalesLedgerProductId());
- queryWrapper.orderByAsc("create_time");
- List<InvoiceRegistrationProduct> list = invoiceRegistrationProductMapper.selectList(queryWrapper);
-
- if (CollectionUtils.isEmpty(list)) {
- return;
- }
-
- InvoiceRegistrationProduct last = list.get(list.size() - 1);
-
- BigDecimal negateInvoiceNum = invoiceRegistrationProduct.getInvoiceNum().negate();
- BigDecimal negateInvoiceAmount = invoiceRegistrationProduct.getInvoiceAmount().negate();
-
- InvoiceRegistrationProduct copy = new InvoiceRegistrationProduct();
- BeanUtils.copyProperties(invoiceRegistrationProduct, copy);
-
- copy.setId(null);
- copy.setInvoiceNum(negateInvoiceNum);
- copy.setInvoiceAmount(negateInvoiceAmount);
-
- // 鏈紑绁� = 涓婁竴鏉� + 鏈鍐插洖鐨勬暟閲�
- copy.setNoInvoiceNum(last.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()));
- copy.setNoInvoiceAmount(last.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()));
-
- invoiceRegistrationProductMapper.insert(copy);
-
- // 澶嶅埗寮�绁ㄥ彴璐�
- InvoiceLedger ledgerCopy = new InvoiceLedger();
- BeanUtils.copyProperties(invoiceLedger, ledgerCopy);
-
- ledgerCopy.setId(null);
- ledgerCopy.setInvoiceRegistrationProductId(copy.getId());
- ledgerCopy.setInvoiceTotal(invoiceLedger.getInvoiceTotal().negate());
- ledgerCopy.setInvoiceDate(LocalDate.now());
-
- invoiceLedgerMapper.insert(ledgerCopy);
-
- // 鍥炴粴 sales_ledger_product
- SalesLedgerProduct salesLedgerProduct = salesLedgerProductMapper.selectById(invoiceRegistrationProduct.getSalesLedgerProductId());
-
- // 宸插紑绁�
- salesLedgerProduct.setInvoiceNum(salesLedgerProduct.getInvoiceNum().add(negateInvoiceNum));
- salesLedgerProduct.setInvoiceAmount(salesLedgerProduct.getInvoiceAmount().add(negateInvoiceAmount));
-
- // 鏈紑绁�
- salesLedgerProduct.setNoInvoiceNum(salesLedgerProduct.getNoInvoiceNum().add(invoiceRegistrationProduct.getInvoiceNum()));
- salesLedgerProduct.setNoInvoiceAmount(salesLedgerProduct.getNoInvoiceAmount().add(invoiceRegistrationProduct.getInvoiceAmount()));
-
- salesLedgerProductMapper.updateById(salesLedgerProduct);
- }
-
-}
diff --git a/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java
deleted file mode 100644
index fefe144..0000000
--- a/src/main/java/com/ruoyi/sales/service/impl/InvoiceRegistrationServiceImpl.java
+++ /dev/null
@@ -1,228 +0,0 @@
-package com.ruoyi.sales.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.common.utils.SecurityUtils;
-import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.sales.dto.InvoiceRegistrationDto;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
-import com.ruoyi.sales.dto.SalesLedgerDto;
-import com.ruoyi.sales.excel.InvoiceRegisAndProductExcelDto;
-import com.ruoyi.sales.mapper.InvoiceLedgerMapper;
-import com.ruoyi.sales.mapper.InvoiceRegistrationMapper;
-import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
-import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
-import com.ruoyi.sales.pojo.InvoiceLedger;
-import com.ruoyi.sales.pojo.InvoiceRegistration;
-import com.ruoyi.sales.pojo.InvoiceRegistrationProduct;
-import com.ruoyi.sales.pojo.SalesLedgerProduct;
-import com.ruoyi.sales.service.InvoiceRegistrationService;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.RequiredArgsConstructor;
-import org.apache.commons.collections4.CollectionUtils;
-import org.springframework.beans.BeanUtils;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.ObjectUtils;
-
-import java.math.BigDecimal;
-import java.util.List;
-import java.util.stream.Collectors;
-
-@Service
-@RequiredArgsConstructor
-public class InvoiceRegistrationServiceImpl extends ServiceImpl<InvoiceRegistrationMapper, InvoiceRegistration> implements InvoiceRegistrationService {
-
- private final InvoiceRegistrationMapper invoiceRegistrationMapper;
-
- private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
-
- private final SalesLedgerProductMapper salesLedgerProductMapper;
-
- private final InvoiceLedgerMapper invoiceLedgerMapper;
-
- /**
- * 寮�绁ㄧ櫥璁拌褰曟柊澧�
- * @param salesLedgerDto
- * @return
- */
- @Override
- @Transactional(rollbackFor = Exception.class)
- public void invoiceRegistrationSave(SalesLedgerDto salesLedgerDto) {
- // 鏂板寮�绁ㄧ櫥璁颁富琛�
- InvoiceRegistration invoiceRegistration = new InvoiceRegistration();
- BeanUtils.copyProperties(salesLedgerDto, invoiceRegistration);
- invoiceRegistration.setId(null);
- invoiceRegistration.setCustomerId(salesLedgerDto.getCustomerId().intValue());
- invoiceRegistration.setSalesLedgerId(salesLedgerDto.getId().intValue());
- invoiceRegistrationMapper.insert(invoiceRegistration);
-
- List<SalesLedgerProduct> productData = salesLedgerDto.getProductData();
- if (CollectionUtils.isEmpty(productData)) {
- return;
- }
-
- for (SalesLedgerProduct productDatum : productData) {
- // 鏈寮�绁ㄦ暟 / 閲戦
- BigDecimal currentInvoiceNum = productDatum.getCurrentInvoiceNum();
- BigDecimal currentInvoiceAmount = productDatum.getCurrentInvoiceAmount();
-
- if (currentInvoiceNum == null || BigDecimal.ZERO.compareTo(currentInvoiceNum) == 0) {
- continue;
- }
-
- LambdaQueryWrapper<SalesLedgerProduct> salesLedgerProductLambdaQueryWrapper = new LambdaQueryWrapper<SalesLedgerProduct>()
- .eq(SalesLedgerProduct::getId, productDatum.getId())
- .eq(SalesLedgerProduct::getSalesLedgerId, productDatum.getSalesLedgerId());
- SalesLedgerProduct dbProduct = salesLedgerProductMapper.selectOne(salesLedgerProductLambdaQueryWrapper);
-
- if (dbProduct == null) {
- throw new RuntimeException("閿�鍞彴璐︿骇鍝佷笉瀛樺湪锛孖D锛�" + productDatum.getId());
- }
-
- // 鏈紑绁�
- BigDecimal noInvoiceAmount = dbProduct.getNoInvoiceAmount();
- BigDecimal noInvoiceNum = dbProduct.getNoInvoiceNum();
-
- // 鍓╀綑鏈紑绁�
- BigDecimal newNoInvoiceNum = noInvoiceNum.subtract(currentInvoiceNum);
- BigDecimal newNoInvoiceAmount = noInvoiceAmount.subtract(currentInvoiceAmount);
-
-
- if (newNoInvoiceAmount.compareTo(BigDecimal.ZERO) < 0) {
- throw new RuntimeException("寮�绁ㄦ暟閲忔垨閲戦瓒呰繃鍚堝悓鎬婚噺");
- }
-
- // 鏇存柊 sales_ledger_product
- salesLedgerProductMapper.update(
- null,
- new LambdaUpdateWrapper<SalesLedgerProduct>()
- .eq(SalesLedgerProduct::getId, dbProduct.getId())
- .set(SalesLedgerProduct::getNoInvoiceNum, newNoInvoiceNum)
- .set(SalesLedgerProduct::getNoInvoiceAmount, newNoInvoiceAmount)
- );
-
- InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct();
- BeanUtils.copyProperties(dbProduct, invoiceRegistrationProduct);
-
- invoiceRegistrationProduct.setId(null);
- invoiceRegistrationProduct.setSalesLedgerId(salesLedgerDto.getId().intValue());
- invoiceRegistrationProduct.setInvoiceRegistrationId(invoiceRegistration.getId());
- invoiceRegistrationProduct.setSalesLedgerProductId(dbProduct.getId().intValue());
- invoiceRegistrationProduct.setInvoiceNum(currentInvoiceNum);
- invoiceRegistrationProduct.setInvoiceAmount(currentInvoiceAmount);
- invoiceRegistrationProduct.setNoInvoiceAmount(newNoInvoiceAmount);
-
- invoiceRegistrationProductMapper.insert(invoiceRegistrationProduct);
-
- InvoiceLedger invoiceLedger = new InvoiceLedger();
- invoiceLedger.setInvoiceDate(salesLedgerDto.getIssueDate());
- invoiceLedger.setInvoiceRegistrationProductId(invoiceRegistrationProduct.getId());
- invoiceLedger.setInvoiceTotal(currentInvoiceAmount);
- invoiceLedger.setInvoiceNo(salesLedgerDto.getInvoiceNo());
- invoiceLedger.setCreateUser(SecurityUtils.getUserId().intValue());
- invoiceLedger.setInvoicePerson(dbProduct.getRegister());
-
- invoiceLedgerMapper.insert(invoiceLedger);
- }
- }
-
- /**
- * 寮�绁ㄧ櫥璁板垹闄�
- * @param ids
- * @return
- */
- @Override
- @Transactional(rollbackFor = Exception.class)
- public int invoiceRegistrationDel(List<Integer> ids) {
- int excuteNum = invoiceRegistrationMapper.deleteBatchIds(ids);
- LambdaQueryWrapper<InvoiceRegistrationProduct> delWrapper = new LambdaQueryWrapper<>();
- delWrapper.in(InvoiceRegistrationProduct::getInvoiceRegistrationId, ids);
- invoiceRegistrationProductMapper.delete(delWrapper);
- return excuteNum;
- }
-
- /**
- * 寮�绁ㄨ褰曚慨鏀�
- * @param invoiceRegistrationDto
- * @return
- */
- @Override
- public void invoiceRegistrationUpdate(InvoiceRegistrationDto invoiceRegistrationDto) {
- InvoiceRegistration invoiceRegistration = new InvoiceRegistration();
- BeanUtils.copyProperties(invoiceRegistrationDto, invoiceRegistration);
- // 寮�绁ㄧ櫥璁颁慨鏀�
- invoiceRegistrationMapper.updateById(invoiceRegistration);
- List<InvoiceRegistrationProductDto> productDtoList = invoiceRegistrationDto.getProductDtoList();
- // 寮�绁ㄤ骇鍝佺櫥璁颁慨鏀�
- if(CollectionUtils.isNotEmpty(productDtoList)){
- for (InvoiceRegistrationProductDto invoiceRegistrationProductDto : productDtoList) {
- InvoiceRegistrationProduct invoiceRegistrationProduct = new InvoiceRegistrationProduct();
- BeanUtils.copyProperties(invoiceRegistrationProductDto, invoiceRegistrationProduct);
- invoiceRegistrationProductMapper.updateById(invoiceRegistrationProduct);
- }
- }
- }
-
- /**
- * 寮�绁ㄧ櫥璁板垎椤垫煡璇�
- * @param page
- * @param invoiceRegistrationDto
- * @return
- */
- @Override
- public IPage<InvoiceRegistrationDto> invoiceRegistrationListPage(Page page, InvoiceRegistrationDto invoiceRegistrationDto) {
- return invoiceRegistrationMapper.invoiceRegistrationListPage(page, invoiceRegistrationDto);
- }
-
- /**
- * 寮�绁ㄧ櫥璁颁骇鍝佹煡璇�
- * @param invoiceRegistrationProductDto
- * @return
- */
- @Override
- public List<InvoiceRegistrationProductDto> invoiceRegistrationProductList(InvoiceRegistrationProductDto invoiceRegistrationProductDto) {
- return invoiceRegistrationProductMapper.invoiceRegistrationProductList(invoiceRegistrationProductDto);
- }
-
- /**
- * 寮�绁ㄧ櫥璁拌鎯�
- * @param id
- * @return
- */
- @Override
- public InvoiceRegistrationDto invoiceRegistrationDetail(Integer id) {
- InvoiceRegistration invoiceRegistration = invoiceRegistrationMapper.selectById(id);
- if(ObjectUtils.isEmpty(invoiceRegistration)){
- throw new RuntimeException("寮�绁ㄧ櫥璁颁俊鎭煡鎵惧け璐�");
- }
- InvoiceRegistrationDto invoiceRegistrationDto = new InvoiceRegistrationDto();
- BeanUtils.copyProperties(invoiceRegistration, invoiceRegistrationDto);
- QueryWrapper<InvoiceRegistrationProduct> queryWrapper = new QueryWrapper<>();
- queryWrapper.eq("invoice_registration_id", id);
- List<InvoiceRegistrationProduct> invoiceRegistrationProductList = invoiceRegistrationProductMapper.selectList(queryWrapper);
- List<InvoiceRegistrationProductDto> invoiceRegistrationProductDtoList = invoiceRegistrationProductList.stream().map(item -> {
- InvoiceRegistrationProductDto invoiceRegistrationProductDto = new InvoiceRegistrationProductDto();
- BeanUtils.copyProperties(item, invoiceRegistrationProductDto);
- return invoiceRegistrationProductDto;
- }).collect(Collectors.toList());
- invoiceRegistrationDto.setProductDtoList(invoiceRegistrationProductDtoList);
- return invoiceRegistrationDto;
- }
-
- /**
- * 寮�绁ㄧ櫥璁板鍑�
- * @param response
- * @param invoiceRegistrationDto
- */
- @Override
- public void invoiceRegistrationExport(HttpServletResponse response, InvoiceRegistrationDto invoiceRegistrationDto) {
- List<InvoiceRegisAndProductExcelDto> invoiceRegisAndProductExcelDtoList = invoiceRegistrationMapper.invoiceRegisAndProductExcelDtoList();
- ExcelUtil<InvoiceRegisAndProductExcelDto> util = new ExcelUtil<InvoiceRegisAndProductExcelDto>(InvoiceRegisAndProductExcelDto.class);
- util.exportExcel(response, invoiceRegisAndProductExcelDtoList, "寮�绁ㄧ櫥璁颁俊鎭�");
- }
-}
diff --git a/src/main/java/com/ruoyi/sales/service/impl/ReceiptPaymentServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/ReceiptPaymentServiceImpl.java
index b3befc5..235f1e9 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/ReceiptPaymentServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/ReceiptPaymentServiceImpl.java
@@ -6,7 +6,6 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
-import com.ruoyi.sales.dto.InvoiceLedgerDto;
import com.ruoyi.sales.dto.ReceiptPaymentDto;
import com.ruoyi.sales.dto.ReceiptPaymentExeclDto;
import com.ruoyi.sales.mapper.ReceiptPaymentMapper;
@@ -212,16 +211,6 @@
return receiptPaymentDtoIPage;
}
- /**
- * 寮�绁ㄥ彴璐﹁鎯�
- * @param id
- * @return
- */
- @Override
- public InvoiceLedgerDto invoiceInfo(Integer id) {
- return receiptPaymentMapper.invoiceInfo(id);
- }
-
@Override
public Map<String,BigDecimal> getAmountMouth() {
List<SalesLedger> salesLedgers = salesLedgerMapper.selectList(null);
@@ -266,16 +255,6 @@
@Override
public IPage<ReceiptPaymentDto> receiptPaymentHistoryListPage(Page page, ReceiptPaymentDto receiptPaymentDto) {
return receiptPaymentMapper.receiptPaymentHistoryListPage(page, receiptPaymentDto);
- }
-
- /**
- * 瀹㈡埛寰�鏉ヨ褰曟煡璇�
- * @param receiptPaymentDto
- * @return
- */
- @Override
- public List<InvoiceLedgerDto> customerInteractions(InvoiceLedgerDto receiptPaymentDto) {
- return receiptPaymentMapper.invoiceLedgerSalesAccount(receiptPaymentDto);
}
/**
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
index a827cb8..daf5d88 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerProductServiceImpl.java
@@ -14,9 +14,7 @@
import com.ruoyi.purchase.mapper.PurchaseLedgerMapper;
import com.ruoyi.purchase.pojo.PurchaseLedger;
import com.ruoyi.quality.mapper.QualityInspectMapper;
-import com.ruoyi.sales.dto.InvoiceRegistrationProductDto;
import com.ruoyi.sales.dto.SalesLedgerProductDto;
-import com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper;
import com.ruoyi.sales.mapper.SalesLedgerMapper;
import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
import com.ruoyi.sales.mapper.ShippingInfoMapper;
@@ -76,8 +74,6 @@
@Autowired
private TechnologyBomStructureMapper technologyBomStructureMapper;
@Autowired
- private InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
- @Autowired
private ProductionProductMainMapper productionProductMainMapper;
@Autowired
private ProductionProductOutputMapper productionProductOutputMapper;
@@ -116,34 +112,6 @@
item.setExpressNumber(shippingInfo.getExpressNumber());
}
});
- // 寮�绁�
- InvoiceRegistrationProductDto invoiceRegistrationProductDto = new InvoiceRegistrationProductDto();
- invoiceRegistrationProductDto.setSalesLedgerId(salesLedgerProduct.getSalesLedgerId().intValue());
- List<InvoiceRegistrationProductDto> invoiceRegistrationProductDtoList = invoiceRegistrationProductMapper.invoiceRegistrationProductList(invoiceRegistrationProductDto);
- // 缁熻寮�绁ㄧ櫥璁颁骇鍝佺殑宸插紑绁ㄦ暟/宸插紑绁ㄩ噾棰�
- if (!CollectionUtils.isEmpty(invoiceRegistrationProductDtoList)) {
- for (SalesLedgerProduct ledgerProduct : salesLedgerProducts) {
- BigDecimal invoiceNum = BigDecimal.ZERO;
- BigDecimal invoiceAmount = BigDecimal.ZERO;
- BigDecimal noInvoiceNum = BigDecimal.ZERO;
- BigDecimal noInvoiceAmount = BigDecimal.ZERO;
- for (InvoiceRegistrationProductDto registrationProductDto : invoiceRegistrationProductDtoList) {
- if(ledgerProduct.getId().intValue() == registrationProductDto.getSalesLedgerProductId()){
- invoiceNum = invoiceNum.add(registrationProductDto.getInvoiceNum());
- invoiceAmount = invoiceAmount.add(registrationProductDto.getInvoiceAmount());
- }
- }
- noInvoiceNum = ledgerProduct.getQuantity().subtract(invoiceNum);
- noInvoiceAmount = ledgerProduct.getTaxInclusiveTotalPrice().subtract(invoiceAmount);
- ledgerProduct.setInvoiceNum(invoiceNum);
- ledgerProduct.setInvoiceAmount(invoiceAmount);
- ledgerProduct.setNoInvoiceNum(noInvoiceNum);
- ledgerProduct.setNoInvoiceAmount(noInvoiceAmount);
-
-
- }
- }
-
}
return salesLedgerProducts;
}
diff --git a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
index 3872bdf..1d46da8 100644
--- a/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
+++ b/src/main/java/com/ruoyi/sales/service/impl/SalesLedgerServiceImpl.java
@@ -88,9 +88,6 @@
private final ShippingInfoServiceImpl shippingInfoServiceImpl;
private final CommonFileServiceImpl commonFileService;
private final ShippingInfoMapper shippingInfoMapper;
- private final InvoiceLedgerMapper invoiceLedgerMapper;
- private final InvoiceRegistrationProductMapper invoiceRegistrationProductMapper;
- private final InvoiceRegistrationMapper invoiceRegistrationMapper;
private final ProductionProductMainMapper productionProductMainMapper;
private final ProductionProductOutputMapper productionProductOutputMapper;
private final ProductionProductInputMapper productionProductInputMapper;
@@ -294,24 +291,12 @@
.filter(Objects::nonNull)
.reduce(BigDecimal.ZERO, BigDecimal::add);
- // 寮�绁ㄩ噾棰�
- LambdaQueryWrapper<InvoiceLedger> invoiceLedgerQuery = new LambdaQueryWrapper<>();
- invoiceLedgerQuery
- .ge(InvoiceLedger::getCreateTime, startTime)
- .le(InvoiceLedger::getCreateTime, endTime);
- List<InvoiceLedger> invoiceLedgers =
- invoiceLedgerMapper.selectList(invoiceLedgerQuery);
-
- BigDecimal invoiceAmount = invoiceLedgers.stream()
- .map(InvoiceLedger::getInvoiceTotal)
- .filter(Objects::nonNull)
- .reduce(BigDecimal.ZERO, BigDecimal::add);
MonthlyAmountDto dto = new MonthlyAmountDto();
dto.setMonth(yearMonth.format(DateTimeFormatter.ofPattern("yyyy-MM")));
dto.setReceiptAmount(receiptAmount);
- dto.setInvoiceAmount(invoiceAmount);
+ dto.setInvoiceAmount(BigDecimal.ZERO);
result.add(dto);
}
@@ -533,23 +518,7 @@
salesLedgerProductMapper.deleteBatchIds(productIds);
}
- LambdaQueryWrapper<InvoiceRegistrationProduct> wrapper = new LambdaQueryWrapper<>();
- wrapper.in(InvoiceRegistrationProduct::getSalesLedgerId, idList);
- List<InvoiceRegistrationProduct> invoiceRegistrationProducts = invoiceRegistrationProductMapper.selectList(wrapper);
List<Integer> invoiceLedgerIds = new ArrayList<>();
- if (CollectionUtils.isNotEmpty(invoiceRegistrationProducts)) {
- LambdaQueryWrapper<InvoiceLedger> wrapperOne = new LambdaQueryWrapper<>();
- wrapperOne.in(InvoiceLedger::getInvoiceRegistrationProductId, invoiceRegistrationProducts.stream().map(InvoiceRegistrationProduct::getId).collect(Collectors.toList()));
- List<InvoiceLedger> invoiceLedgers = invoiceLedgerMapper.selectList(wrapperOne);
- if (CollectionUtils.isNotEmpty(invoiceLedgers)) {
- invoiceLedgerIds = invoiceLedgers.stream().map(InvoiceLedger::getId).collect(Collectors.toList());
- }
- invoiceLedgerMapper.delete(wrapperOne);
- }
- invoiceRegistrationProductMapper.delete(wrapper);
- LambdaQueryWrapper<InvoiceRegistration> wrapperTwo = new LambdaQueryWrapper<>();
- wrapperTwo.in(InvoiceRegistration::getSalesLedgerId, idList);
- invoiceRegistrationMapper.delete(wrapperTwo);
if (CollectionUtils.isNotEmpty(invoiceLedgerIds)) {
LambdaQueryWrapper<ReceiptPayment> wrapperTree = new LambdaQueryWrapper<>();
diff --git a/src/main/resources/mapper/purchase/InvoicePurchaseMapper.xml b/src/main/resources/mapper/purchase/InvoicePurchaseMapper.xml
index c5a99f9..53ba9bc 100644
--- a/src/main/resources/mapper/purchase/InvoicePurchaseMapper.xml
+++ b/src/main/resources/mapper/purchase/InvoicePurchaseMapper.xml
@@ -117,30 +117,5 @@
</where>
</select>
- <select id="listVat1" resultType="com.ruoyi.purchase.dto.VatDto">
- # SELECT
-# DATE_FORMAT(il.invoice_date, '%Y-%m') AS month,
-# ROUND(SUM(pr.invoice_amount - pr.invoice_amount / (1 + pr.tax_rate / 100)), 2) AS tax_amount
-# FROM invoice_ledger il
-# LEFT JOIN invoice_registration_product pr ON pr.id = il.invoice_registration_product_id
-# WHERE il.invoice_no IS NOT NULL
-# AND invoice_type = '澧炰笓绁�'
-# GROUP BY DATE_FORMAT(il.invoice_date, '%Y-%m')
-# ORDER BY month;
-# select DATE_FORMAT(a.issue_date, '%Y-%m'), sum(a.invoice_amount) as xTaxAmount
-# from (SELECT distinct pr.id,
-# tr.issue_date,
-# ROUND(pr.tickets_amount / (1 + pr.tax_rate / 100), 2) AS un_tickets_price,
-# ROUND(pr.tickets_amount - pr.tickets_amount / (1 + pr.tax_rate / 100),
-# 2) AS invoice_amount
-# FROM product_record pr
-# LEFT JOIN purchase_ledger pl ON pl.id = pr.purchase_ledger_id
-# LEFT JOIN sales_ledger sl ON sl.id = pl.sales_ledger_id
-# LEFT JOIN ticket_registration tr ON tr.purchase_ledger_id = pl.id
-# LEFT JOIN product_model pm ON pm.id = pr.product_model_id
-# WHERE type = 2
-# and tr.invoice_number is not null) a
-# GROUP BY DATE_FORMAT(a.issue_date, '%Y-%m')
- </select>
</mapper>
diff --git a/src/main/resources/mapper/sales/InvoiceLedgerMapper.xml b/src/main/resources/mapper/sales/InvoiceLedgerMapper.xml
deleted file mode 100644
index 5454640..0000000
--- a/src/main/resources/mapper/sales/InvoiceLedgerMapper.xml
+++ /dev/null
@@ -1,185 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.sales.mapper.InvoiceLedgerMapper">
- <select id="invoiceLedgerPage" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_contract_no ,
- T1.customer_id ,
- T1.invoice_no ,
- T1.invoice_amount ,
- T1.tax_rate ,
- T1.invoice_person ,
- T1.invoice_date ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id ,
- T2.customer_name,
- T3.customer_contract_no,
- T3.salesman,
- T4.invoiceFileName
- FROM invoice_ledger T1
- LEFT JOIN customer T2 ON T1.customer_id = T2.id
- LEFT JOIN sales_ledger T3 ON T1.sales_ledger_id = T3.id
- LEFT JOIN (
- SELECT
- invoice_ledger_id,
- GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
- FROM invoice_ledger_file GROUP BY invoice_ledger_id
- ) T4 ON T4.invoice_ledger_id = T1.id
- <where>
- <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != ''">
- AND (
- T2.customer_name LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%')
- OR T1.sales_contract_no LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%')
- )
- </if>
- <if test="invoiceLedgerDto.invoiceDate != null">
- AND DATE_FORMAT(T1.invoice_date,'%Y-%m-%d') = DATE_FORMAT(#{invoiceLedgerDto.invoiceDate},'%Y-%m-%d')
- </if>
- </where>
- </select>
-
- <select id="invoiceLedgerList" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_contract_no ,
- T1.customer_id ,
- T1.invoice_no ,
- T1.invoice_amount ,
- T1.tax_rate ,
- T1.invoice_person ,
- T1.invoice_date ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id ,
- T2.customer_name,
- T3.salesman,
- T3.customer_contract_no,
- T4.invoiceFileName
- FROM invoice_ledger T1
- LEFT JOIN customer T2 ON T1.customer_id = T2.id
- LEFT JOIN sales_ledger T3 ON T1.sales_ledger_id = T3.id
- LEFT JOIN (
- SELECT
- invoice_ledger_id,
- GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
- FROM invoice_ledger_file GROUP BY invoice_ledger_id
- ) T4 ON T4.invoice_ledger_id = T1.id
- <where>
- <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != ''">
- AND (
- T2.customer_name LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%')
- OR T1.sales_contract_no LIKE CONCAT('%',#{invoiceLedgerDto.searchText},'%')
- )
- </if>
- <if test="invoiceLedgerDto.invoiceDate != null">
- AND DATE_FORMAT(T1.invoice_date,'%Y-%m-%d') = DATE_FORMAT(#{invoiceLedgerDto.invoiceDate},'%Y-%m-%d')
- </if>
- </where>
- </select>
-
- <select id="invoiceLedgerInfo" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_contract_no ,
- T1.customer_id ,
- T1.invoice_no ,
- T1.invoice_amount ,
- T1.tax_rate ,
- T1.invoice_person ,
- T1.invoice_date ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id ,
- T2.customer_name
- FROM invoice_ledger T1
- LEFT JOIN customer T2 ON T1.customer_id = T2.id
- WHERE T1.id = #{id}
- </select>
-
- <select id="invoiceLedgerSalesAccount" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.customer_id as id,
- T1.customer_name,
- SUM(contract_amount) AS invoice_total,
- IFNULL( SUM(T2.receipt_payment_amount) , 0 ) AS receipt_payment_amount,
- IFNULL((IFNULL(SUM(contract_amount),0) - IFNULL(SUM(T2.receipt_payment_amount),0)),0) AS unReceipt_payment_amount
- FROM sales_ledger T1
- LEFT JOIN receipt_payment T2 ON T1.id = T2.sales_ledger_id
- <where>
- <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != '' ">
- T1.customer_name LIKE CONCAT ('%',#{invoiceLedgerDto.searchText},'%')
- </if>
- </where>
- GROUP BY T1.customer_name,t1.customer_id
- </select>
-
- <select id="invoiceLedgerProductInfo" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_ledger_product_id ,
- T1.invoice_registration_id ,
- T1.product_category ,
- T1.specification_model ,
- T1.unit ,
- T1.quantity ,
- T1.tax_rate ,
- T1.tax_inclusive_unit_price ,
- T1.tax_inclusive_total_price ,
- T1.tax_exclusive_total_price ,
- T1.invoice_type ,
- T1.invoice_num ,
- T1.invoice_amount ,
- T1.no_invoice_num ,
- T1.no_invoice_amount ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id,
- T2.sales_contract_no,
- T2.customer_contract_no,
- T2.customer_name,
- T3.invoice_no,
- T3.invoice_total,
- T3.invoice_person,
- T3.invoice_date,
- T3.id AS invoice_ledger_id
- FROM invoice_registration_product T1
- LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
- LEFT JOIN invoice_ledger T3 ON T1.id = T3.invoice_registration_product_id
- WHERE T1.id = #{id}
- </select>
-
- <select id="invoicedTotal" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- IFNULL(SUM(T1.invoice_total),0) AS invoice_total,
- T2.sales_ledger_id
- FROM
- invoice_ledger T1
- LEFT JOIN invoice_registration_product T2 ON T1.invoice_registration_product_id = T2.id
- <where>
- AND T2.sales_ledger_id IN
- <foreach collection="salesLedgerIds" item="item" open="(" close=")" separator=",">
- #{item}
- </foreach>
- </where>
- GROUP BY
- T2.sales_ledger_id
- </select>
-
-
-</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/sales/InvoiceRegistrationMapper.xml b/src/main/resources/mapper/sales/InvoiceRegistrationMapper.xml
deleted file mode 100644
index 9edbea4..0000000
--- a/src/main/resources/mapper/sales/InvoiceRegistrationMapper.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.sales.mapper.InvoiceRegistrationMapper">
- <select id="invoiceRegistrationListPage" resultType="com.ruoyi.sales.dto.InvoiceRegistrationDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_contract_no ,
- T1.customer_id ,
- T1.salesman ,
- T1.project_name ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id,
- T2.customer_contract_no,
- T3.customer_name,
- T2.contract_amount,
- CASE WHEN T4.noInvoiceAmountTotal IS NULL THEN 0 ELSE T4.noInvoiceAmountTotal END AS noInvoiceAmountTotal
- FROM invoice_registration T1
- LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
- LEFT JOIN customer T3 ON T1.customer_id = T3.id
- LEFT JOIN (
- SELECT
- SUM( no_invoice_amount ) AS noInvoiceAmountTotal ,
- invoice_registration_id
- FROM
- invoice_registration_product
- GROUP BY
- invoice_registration_id
- ) T4 ON T1.id = T4.invoice_registration_id
- </select>
-
- <select id="invoiceRegisAndProductExcelDtoList" resultType="com.ruoyi.sales.excel.InvoiceRegisAndProductExcelDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_contract_no ,
- T1.customer_id ,
- T1.salesman ,
- T1.project_name ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id,
- T2.customer_contract_no,
- T3.customer_name,
- T2.contract_amount,
- T4.product_category,
- T4.specification_model,
- T4.unit,
- T4.quantity,
- T4.tax_rate,
- T4.tax_inclusive_unit_price,
- T4.tax_inclusive_total_price,
- T4.tax_exclusive_total_price,
- T4.invoice_type,
- T4.invoice_num,
- T4.invoice_amount,
- T4.no_invoice_num,
- T4.no_invoice_amount
- FROM invoice_registration T1
- JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
- JOIN customer T3 ON T1.customer_id = T3.id
- JOIN invoice_registration_product T4 ON T1.id = T4.invoice_registration_id
- ORDER BY T1.id ASC
- </select>
-</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml b/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
deleted file mode 100644
index ba790b1..0000000
--- a/src/main/resources/mapper/sales/InvoiceRegistrationProductMapper.xml
+++ /dev/null
@@ -1,132 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper
- PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
- "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.ruoyi.sales.mapper.InvoiceRegistrationProductMapper">
-
- <select id="invoiceRegistrationProductList" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_ledger_product_id ,
- T1.invoice_registration_id ,
- T1.product_category ,
- T1.specification_model ,
- T1.unit ,
- T1.quantity ,
- T1.tax_rate ,
- T1.tax_inclusive_unit_price ,
- T1.tax_inclusive_total_price ,
- T1.tax_exclusive_total_price ,
- T1.invoice_type ,
- T1.invoice_num ,
- T1.invoice_amount ,
- T1.no_invoice_num ,
- T1.no_invoice_amount ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id,
- T2.sales_contract_no,
- T2.customer_contract_no,
- T2.customer_name,
- T3.invoice_no,
- T3.invoice_total,
- T3.invoice_person,
- T3.invoice_date,
- T4.invoiceFileName
- FROM invoice_registration_product T1
- LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
- LEFT JOIN invoice_ledger T3 ON T1.id = T3.invoice_registration_product_id
- LEFT JOIN (
- SELECT
- invoice_ledger_id,
- GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
- FROM invoice_ledger_file GROUP BY invoice_ledger_id
- ) T4 ON T4.invoice_ledger_id = T3.id
- <where>
- <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
- AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
- OR
- T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
- )
- </if>
- <if test="invoiceRegistrationProductDto.invoiceDate != null">
- AND T3.invoice_date = #{invoiceRegistrationProductDto.invoiceDate}
- </if>
- </where>
- ORDER BY T1.create_time DESC, T1.id DESC
- </select>
-
- <select id="invoiceRegistrationProductPage" resultType="com.ruoyi.sales.dto.InvoiceRegistrationProductDto">
- SELECT
- T1.id ,
- T1.sales_ledger_id ,
- T1.sales_ledger_product_id ,
- T1.invoice_registration_id ,
- T1.product_category ,
- T1.specification_model ,
- T1.unit ,
- T1.quantity ,
- T1.tax_rate ,
- T1.tax_inclusive_unit_price ,
- T1.tax_inclusive_total_price ,
- T1.tax_exclusive_total_price ,
- T1.invoice_type ,
- T1.invoice_num ,
- T1.invoice_amount ,
- T1.no_invoice_num ,
- T1.no_invoice_amount ,
- T1.create_time ,
- T1.create_user ,
- T1.update_time ,
- T1.update_user ,
- T1.tenant_id,
- T2.sales_contract_no,
- T2.customer_contract_no,
- T2.customer_name,
- T3.invoice_no,
- T3.id as invoice_ledger_id,
- IFNULL(T3.invoice_total,0) AS invoice_total,
- T3.invoice_person,
- T3.invoice_date,
- T4.invoiceFileName,
- T2.project_name,
- u.nick_name as invoicePerson
- FROM invoice_registration_product T1
- LEFT JOIN sales_ledger T2 ON T1.sales_ledger_id = T2.id
- LEFT JOIN sys_user u ON u.user_id = T1.create_user
- RIGHT JOIN invoice_ledger T3 ON T1.id = T3.invoice_registration_product_id
- LEFT JOIN (
- SELECT
- invoice_ledger_id,
- GROUP_CONCAT( name ORDER BY id ASC SEPARATOR ' | ') AS invoiceFileName
- FROM invoice_ledger_file GROUP BY invoice_ledger_id
- ) T4 ON T4.invoice_ledger_id = T3.id
- <where>
- <if test="invoiceRegistrationProductDto.searchText != null and invoiceRegistrationProductDto.searchText != '' ">
- AND (T2.sales_contract_no LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
- OR
- T2.customer_name LIKE CONCAT('%',#{invoiceRegistrationProductDto.searchText},'%')
- )
- </if>
- <if test="invoiceRegistrationProductDto.invoiceDateStart != null and invoiceRegistrationProductDto.invoiceDateStart != ''">
- AND T3.invoice_date >= str_to_date(#{invoiceRegistrationProductDto.invoiceDateStart}, '%Y-%m-%d')
- </if>
- <if test="invoiceRegistrationProductDto.invoiceDateEnd != null and invoiceRegistrationProductDto.invoiceDateEnd != ''">
- AND T3.invoice_date < date_add(str_to_date(#{invoiceRegistrationProductDto.invoiceDateEnd},
- '%Y-%m-%d'), interval 1 day)
- </if>
- <if test="invoiceRegistrationProductDto.createTimeStart != null ">
- AND T1.create_time >= date_format(#{invoiceRegistrationProductDto.createTimeStart}, '%Y-%m-%d
- %H:%i:%s')
- </if>
- <if test="invoiceRegistrationProductDto.createTimeEnd != null ">
- AND T1.create_time <= date_format(#{invoiceRegistrationProductDto.createTimeStart}, '%Y-%m-%d
- %H:%i:%s')+interval 1 day
- </if>
- </where>
- ORDER BY T1.create_time DESC, T1.id DESC
- </select>
-</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
index 975d120..cfe232a 100644
--- a/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
+++ b/src/main/resources/mapper/sales/ReceiptPaymentMapper.xml
@@ -126,22 +126,6 @@
</select>
- <select id="invoiceInfo" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.id,
- T1.invoice_no,
- T1.invoice_total ,
- T2.tax_rate,
- T3.customer_name,
- T3.sales_contract_no
- FROM
- invoice_ledger T1
- LEFT JOIN
- invoice_registration_product T2 ON T1.invoice_registration_product_id = T2.id
- LEFT JOIN sales_ledger T3 ON T3.id = T2.sales_ledger_id
- WHERE T1.id = #{id}
- </select>
-
<select id="getReceiptAmount" resultType="java.math.BigDecimal">
SELECT
SUM( receipt_payment_amount ) AS total_amount
@@ -433,22 +417,4 @@
</select>
- <select id="invoiceLedgerSalesAccount" resultType="com.ruoyi.sales.dto.InvoiceLedgerDto">
- SELECT
- T1.sales_contract_no,
- T1.contract_amount AS invoice_total,
- IFNULL(SUM(T2.receipt_payment_amount), 0) AS receipt_payment_amount,
- IFNULL((T1.contract_amount - IFNULL(SUM(T2.receipt_payment_amount), 0)), 0) AS unReceipt_payment_amount,
- T2.receipt_payment_date
- FROM sales_ledger T1
- INNER JOIN receipt_payment T2 ON T1.id = T2.sales_ledger_id
- <where>
- T1.customer_id = #{invoiceLedgerDto.customerId}
- <if test="invoiceLedgerDto.searchText != null and invoiceLedgerDto.searchText != '' ">
- AND T1.customer_name LIKE CONCAT ('%', #{invoiceLedgerDto.searchText}, '%')
- </if>
- </where>
- GROUP BY T1.id, T1.sales_contract_no, T1.contract_amount, T2.receipt_payment_date
- </select>
-
-</mapper>
\ No newline at end of file
+</mapper>
--
Gitblit v1.9.3