From 7b8b2456bb15aa733b8599fce2ada5d9549ba881 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期四, 11 六月 2026 13:21:20 +0800
Subject: [PATCH] 销售台账,工艺路线配置设置是否完成;导出工艺路线
---
src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java | 128 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 120 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java b/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java
index 7ee8c1f..751856d 100644
--- a/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java
+++ b/src/main/java/com/ruoyi/sales/service/ISalesLedgerService.java
@@ -1,10 +1,23 @@
package com.ruoyi.sales.service;
-import java.util.List;
-
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
-import com.ruoyi.sales.dto.SalesLedgerDto;
+import com.ruoyi.approve.pojo.ApproveProcess;
+import com.ruoyi.basic.pojo.Customer;
+import com.ruoyi.common.enums.SaleEnum;
+import com.ruoyi.sales.dto.*;
import com.ruoyi.sales.pojo.SalesLedger;
+import com.ruoyi.sales.pojo.SalesLedgerProcessRoute;
+import com.ruoyi.sales.pojo.SalesLedgerProduct;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.annotation.Nullable;
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Map;
/**
* 閿�鍞彴璐ervice鎺ュ彛
@@ -14,13 +27,112 @@
*/
public interface ISalesLedgerService extends IService<SalesLedger> {
- List<SalesLedger> selectSalesLedgerList(SalesLedger salesLedger);
-
- SalesLedger selectSalesLedgerById(Long id);
+ List<SalesLedger> selectSalesLedgerList(SalesLedgerDto salesLedgerDto);
int deleteSalesLedgerByIds(Long[] ids);
- int addOrUpdateSalesLedger(SalesLedger salesLedger);
+ int addOrUpdateSalesLedger(SalesLedgerDto salesLedgerDto);
- List<SalesLedgerDto> getSalesLedgerWithProducts();
+ List<SalesLedgerProduct> getSalesLedgerProductListByRelateId(@NotNull Long relateId, @NotNull SaleEnum type);
+
+ List<SalesLedgerProduct> getSalesLedgerProductListByIds(@Nullable List<Long> relateIds, @NotNull SaleEnum type);
+
+ void handleSalesLedgerProducts(Long salesLedgerId, List<SalesLedgerProduct> products, SaleEnum type);
+
+ SalesLedgerDto getSalesLedgerWithProducts(SalesLedgerDto salesLedgerDto);
+
+ List getSalesNo();
+
+ BigDecimal getContractAmount();
+
+ List getTopFiveList();
+
+ List<MonthlyAmountDto> getAmountHalfYear(Integer type);
+
+ IPage<SalesLedger> selectSalesLedgerListPage(Page page, SalesLedgerDto salesLedgerDto);
+
+ void importData(MultipartFile file);
+
+ List<LossProductModelDto> getSalesLedgerWithProductsLoss(Long salesLedgerId);
+
+ IPage<SalesLedgerDto> listSalesLedger(SalesLedgerDto salesLedgerDto, Page page);
+
+ void saleProcessBind(SalesLedgerProcessRouteDto salesLedgerProcessRouteDto);
+
+ SalesProcessCardDto processCard(Long salesLedgerId);
+
+ SalesLedgerProcessRouteDto salesProcess(Long salesLedgerId);
+
+ SalesOrdersDto salesOrders(Long salesLedgerId);
+
+ SalesInvoicesDto salesInvoices(List<Long> salesLedgerIds);
+
+ List<SalesLabelDto> salesLabel(Long salesLedgerId);
+
+ void salesStock(SalesProductStockDto dto);
+
+ void executeSalesStockApproved(Long salesLedgerId, List<Long> salesLedgerProductIds);
+
+ void executeSalesScanInboundApproved(Long salesLedgerId, Map<Long, BigDecimal> inboundQtyByLineId);
+
+ void executeSalesScanInboundUnqualifiedApproved(Long salesLedgerId, Map<Long, BigDecimal> inboundQtyByLineId);
+
+ List<Customer> shippedCustomers();
+
+ void scanInbound(SalesScanInboundDto dto);
+
+ void scanInboundUnqualified(SalesScanInboundDto dto);
+
+ void scanOutbound(SalesScanInboundDto dto);
+
+ void scanOutboundUnqualified(SalesScanInboundDto dto);
+
+ /**
+ * APP 鎵爜鍙戣揣锛氬彂璧峰彂璐у鎵癸紙瀹℃壒閫氳繃鍚庤嚜鍔ㄦ墸搴撳瓨銆佸彂璐у彴璐︿笌璁㈠崟鐘舵�佷负宸插彂璐э級
+ */
+ void scanShipApply(SalesScanShipDto dto);
+
+ /**
+ * 鍙戣揣瀹℃壒锛堢被鍨� 7锛夎妭鐐圭姸鎬佸彉鏇达細鎵爜鍙戣揣娴佺▼ {@code approveRemark} 浠� {@code SCAN_SHIP_DELIVERY_JSON:} 寮�澶存椂鍥炶皟銆�
+ *
+ * @param outcomeStatus 瀹℃壒娴佺姸鎬侊細1 瀹℃牳涓� 2 閫氳繃 3 鎷掔粷
+ */
+ void onScanShipDeliveryApproveOutcome(ApproveProcess approveProcess, Integer outcomeStatus);
+
+ void shippingImport(MultipartFile file);
+
+ void notShippingImport(MultipartFile file);
+
+ /**
+ * 鍙嶅鏍告搷浣滐細浣滃簾鎴栭噸鏂扮敓鎴�
+ */
+ List<Long> counterReview(CounterReviewDto dto);
+
+ /**
+ * 鏍囪璁㈠崟瀹屾垚
+ */
+ void markOrderCompleted(List<Long> ids);
+
+ /**
+ * 閫掑鎵撳嵃娆℃暟
+ * @param id 閿�鍞彴璐D
+ * @param printType 鎵撳嵃绫诲瀷锛歭abel=鏍囩鎵撳嵃锛宒ocument=鍗曟嵁鎵撳嵃
+ */
+ void incrementPrintCount(Long id, String printType);
+
+ /**
+ * 瀵煎嚭閿�鍞彴璐﹀強浜у搧鏄庣粏锛堜袱涓猻heet椤碉級
+ * @param response HttpServletResponse
+ * @param salesLedgerDto 鏌ヨ鏉′欢
+ */
+ void exportWithProducts(HttpServletResponse response, SalesLedgerDto salesLedgerDto);
+
+ /**
+ * 瀵煎嚭鍞悗鍙拌处宸ヨ壓璺嚎
+ * @param response HttpServletResponse
+ * @param salesLedgerIds 閿�鍞彴璐D鍒楄〃
+ * @param completedTimeStart 瀹屾垚鏃堕棿寮�濮�
+ * @param completedTimeEnd 瀹屾垚鏃堕棿缁撴潫
+ */
+ void exportProcessRoute(HttpServletResponse response, List<Long> salesLedgerIds, String completedTimeStart, String completedTimeEnd);
}
--
Gitblit v1.9.3