From a372d79cd899979322d950e91044fc21171f7fd0 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期一, 11 五月 2026 16:49:50 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev_New_pro' into dev_New_pro

---
 src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java             |    4 
 src/main/java/com/ruoyi/account/service/impl/AccountSalesServiceImpl.java               |   16 
 src/main/java/com/ruoyi/stock/controller/StockUninventoryController.java                |   12 
 src/main/java/com/ruoyi/account/service/AccountPurchaseService.java                     |   27 ++
 src/main/java/com/ruoyi/stock/mapper/StockOutRecordMapper.java                          |    3 
 src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java                 |    4 
 src/main/java/com/ruoyi/account/service/AccountSalesService.java                        |    4 
 src/main/java/com/ruoyi/account/bean/vo/PurchaseInboundVo.java                          |   48 ++++
 src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java                |    6 
 src/main/java/com/ruoyi/account/controller/AccounPurchaseController.java                |   68 ++++++
 src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml                       |   25 ++
 src/main/java/com/ruoyi/account/bean/dto/PurchaseInboundDto.java                        |   26 ++
 src/main/java/com/ruoyi/stock/mapper/StockInRecordMapper.java                           |    4 
 src/main/java/com/ruoyi/common/enums/StockOutQualifiedRecordTypeEnum.java               |    1 
 src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java               |    3 
 src/main/java/com/ruoyi/common/enums/StockInQualifiedRecordTypeEnum.java                |   10 
 src/main/resources/mapper/stock/StockOutRecordMapper.xml                                |   29 ++
 src/main/java/com/ruoyi/account/bean/vo/SalesOutboundVo.java                            |    6 
 src/main/java/com/ruoyi/account/controller/AccountSalesController.java                  |   12 
 src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java   |    9 
 src/main/java/com/ruoyi/account/service/impl/AccountPurchaseServiceImpl.java            |   59 +++++
 src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java               |    8 
 src/main/java/com/ruoyi/procurementrecord/mapper/ReturnManagementMapper.java            |    2 
 src/main/java/com/ruoyi/account/bean/vo/PurchaseReturnVo.java                           |   48 ++++
 src/main/resources/mapper/sales/ShippingInfoMapper.xml                                  |   29 --
 src/main/resources/mapper/stock/StockInRecordMapper.xml                                 |   34 +++
 src/main/java/com/ruoyi/account/bean/dto/PurchaseReturnDto.java                         |   26 ++
 /dev/null                                                                               |   34 ---
 src/main/java/com/ruoyi/procurementrecord/service/impl/ReturnManagementServiceImpl.java |    3 
 src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java         |    5 
 src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java                            |    4 
 src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java                                 |    4 
 32 files changed, 445 insertions(+), 128 deletions(-)

diff --git a/src/main/java/com/ruoyi/account/bean/dto/PurchaseInboundDto.java b/src/main/java/com/ruoyi/account/bean/dto/PurchaseInboundDto.java
new file mode 100644
index 0000000..6ca07a4
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/bean/dto/PurchaseInboundDto.java
@@ -0,0 +1,26 @@
+package com.ruoyi.account.bean.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@Schema(name = "PurchaseInboundDto", description = "璐㈠姟绠$悊--閲囪喘鍏ュ簱鍙拌处(浼犲弬)")
+public class PurchaseInboundDto {
+
+    @Schema(description = "鍏ュ簱鍗曞彿")
+    private String inboundBatches;
+
+    @Schema(description = "渚涘簲鍟�")
+    private String supplierName;
+
+    @Schema(description = "寮�濮嬫棩鏈�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date startDate;
+
+    @Schema(description = "缁撴潫鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endDate;
+}
diff --git a/src/main/java/com/ruoyi/account/bean/dto/PurchaseReturnDto.java b/src/main/java/com/ruoyi/account/bean/dto/PurchaseReturnDto.java
new file mode 100644
index 0000000..d521422
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/bean/dto/PurchaseReturnDto.java
@@ -0,0 +1,26 @@
+package com.ruoyi.account.bean.dto;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@Schema(name = "PurchaseReturnDto", description = "璐㈠姟绠$悊--閲囪喘閫�璐у彴璐�(浼犲弬)")
+public class PurchaseReturnDto {
+
+    @Schema(description = "閫�璐у崟鍙�")
+    private String returnNo;
+
+    @Schema(description = "渚涘簲鍟�")
+    private String supplierName;
+
+    @Schema(description = "寮�濮嬫棩鏈�")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date startDate;
+
+    @Schema(description = "缁撴潫鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date endDate;
+}
diff --git a/src/main/java/com/ruoyi/account/bean/vo/PurchaseInboundVo.java b/src/main/java/com/ruoyi/account/bean/vo/PurchaseInboundVo.java
new file mode 100644
index 0000000..934502a
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/bean/vo/PurchaseInboundVo.java
@@ -0,0 +1,48 @@
+package com.ruoyi.account.bean.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+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 java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@Schema(name = "PurchaseInboundVo", description = "璐㈠姟绠$悊--閲囪喘鍏ュ簱鍙拌处(杩斿洖)")
+@ExcelIgnoreUnannotated
+public class PurchaseInboundVo {
+
+    @Schema(description = "鍏ュ簱鍗昳d")
+    private Long id;
+
+    @Schema(description = "鍏ュ簱鍗曞彿")
+    @Excel(name = "鍏ュ簱鍗曞彿")
+    private String inboundBatches;
+
+    @Schema(description = "渚涘簲鍟�")
+    @Excel(name = "渚涘簲鍟�")
+    private String supplierName;
+
+    @Schema(description = "鍏ュ簱鏃ユ湡")
+    @Excel(name = "鍏ュ簱鏃ユ湡")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    private Date InboundDate;
+
+    @Schema(description = "浜у搧鍚嶇О")
+    @Excel(name = "浜у搧鍚嶇О")
+    private String productName;
+
+    @Schema(description = "浜у搧瑙勬牸")
+    @Excel(name = "浜у搧瑙勬牸")
+    private String  specificationModel;
+
+    @Schema(description = "閲戦")
+    @Excel(name = "閲戦")
+    private BigDecimal InboundAmount;
+
+    @Schema(description = "閲囪喘璁㈠崟鍙�")
+    @Excel(name = "閲囪喘璁㈠崟鍙�")
+    private String purchaseContractNumber;
+}
diff --git a/src/main/java/com/ruoyi/account/bean/vo/PurchaseReturnVo.java b/src/main/java/com/ruoyi/account/bean/vo/PurchaseReturnVo.java
new file mode 100644
index 0000000..e912993
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/bean/vo/PurchaseReturnVo.java
@@ -0,0 +1,48 @@
+package com.ruoyi.account.bean.vo;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+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 java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Data
+@Schema(name = "PurchaseReturnVo", description = "璐㈠姟绠$悊--閲囪喘閫�璐у彴璐�(杩斿洖)")
+@ExcelIgnoreUnannotated
+public class PurchaseReturnVo {
+
+    @Schema(description = "閫�璐у崟id")
+    private Long id;
+
+    @Excel(name = "閫�璐у崟鍙�")
+    @Schema(description = "閫�璐у崟鍙�")
+    private String returnNo;
+
+    @Schema(description = "渚涘簲鍟�")
+    @Excel(name = "渚涘簲鍟�")
+    private String supplierName;
+
+    @Schema(description = "鍏宠仈鍏ュ簱鍗曞彿")
+    @Excel(name = "鍏宠仈鍏ュ簱鍗曞彿")
+    private String inboundBatches;
+
+    @Schema(description = "閫�璐ф棩鏈�")
+    @Excel(name = "閫�璐ф棩鏈�")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private LocalDateTime preparedAt;
+
+    @Schema(description = "閫�娆炬�婚")
+    @Excel(name = "閫�娆炬�婚")
+    private BigDecimal totalAmount;
+
+    @Schema(description = "閫�璐ф柟寮�")
+    @Excel(name = "閫�璐ф柟寮�")
+    private String returnType;
+
+    @Schema(description = "閲囪喘璁㈠崟鍙�")
+    @Excel(name = "閲囪喘璁㈠崟鍙�")
+    private String purchaseContractNumber;
+}
diff --git a/src/main/java/com/ruoyi/account/bean/vo/SalesOutboundVo.java b/src/main/java/com/ruoyi/account/bean/vo/SalesOutboundVo.java
index cfc0a68..5ccdb5b 100644
--- a/src/main/java/com/ruoyi/account/bean/vo/SalesOutboundVo.java
+++ b/src/main/java/com/ruoyi/account/bean/vo/SalesOutboundVo.java
@@ -38,9 +38,9 @@
     @Excel(name = "浜у搧瑙勬牸")
     private String  specificationModel;
 
-    @Schema(description = "鍑哄簱鏁伴噺")
-    @Excel(name = "鍑哄簱鏁伴噺")
-    private BigDecimal stockOutNum;
+    @Schema(description = "閲戦")
+    @Excel(name = "閲戦")
+    private BigDecimal outboundAmount;
 
     @Schema(description = "鍙戣揣缂栧彿")
     @Excel(name = "鍙戣揣缂栧彿")
diff --git a/src/main/java/com/ruoyi/account/controller/AccounPurchaseController.java b/src/main/java/com/ruoyi/account/controller/AccounPurchaseController.java
new file mode 100644
index 0000000..d1993ea
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/controller/AccounPurchaseController.java
@@ -0,0 +1,68 @@
+package com.ruoyi.account.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.bean.dto.PurchaseInboundDto;
+import com.ruoyi.account.bean.dto.PurchaseReturnDto;
+import com.ruoyi.account.bean.vo.PurchaseInboundVo;
+import com.ruoyi.account.bean.vo.PurchaseReturnVo;
+import com.ruoyi.account.service.AccountPurchaseService;
+import com.ruoyi.framework.aspectj.lang.annotation.Log;
+import com.ruoyi.framework.aspectj.lang.enums.BusinessType;
+import com.ruoyi.framework.web.domain.R;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 璐㈠姟绠$悊鐨勯噰璐儴鍒� 鍓嶇鎺у埗鍣�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-07 04:45:30
+ */
+@RestController
+@RequestMapping("/accountPurchase")
+@RequiredArgsConstructor
+@Tag(name = "璐㈠姟绠$悊鐨勯噰璐儴鍒�")
+public class AccounPurchaseController {
+
+    private final AccountPurchaseService accountPurchaseService;
+
+    @GetMapping("/listPageAccountPurchase")
+    @Log(title = "閲囪喘鍏ュ簱鍙拌处", businessType = BusinessType.OTHER)
+    @Operation(summary = "璐㈠姟绠$悊--閲囪喘鍏ュ簱鍙拌处")
+    public R<IPage<PurchaseInboundVo>> listPageAccountPurchase(Page page, PurchaseInboundDto purchaseInboundDto) {
+        IPage<PurchaseInboundVo> listPage = accountPurchaseService.listPageAccountPurchase(page,purchaseInboundDto);
+        return R.ok(listPage);
+    }
+
+    @PostMapping("/exportAccountPurchaseInbound")
+    @Operation(summary = "瀵煎嚭閲囪喘鍏ュ簱鏂囦欢")
+    @Log(title = "瀵煎嚭閲囪喘鍏ュ簱鏂囦欢", businessType = BusinessType.EXPORT)
+    public void exportAccountPurchaseInbound(HttpServletResponse response, PurchaseInboundDto purchaseInboundDto) {
+        accountPurchaseService.exportAccountPurchaseInbound(response,purchaseInboundDto);
+    }
+
+    @GetMapping("/listPageAccountPurchaseReturn")
+    @Log(title = "閲囪喘閫�璐у彴璐�", businessType = BusinessType.OTHER)
+    @Operation(summary = "璐㈠姟绠$悊--閲囪喘閫�璐у彴璐�")
+    public R<IPage<PurchaseReturnVo>> listPageAccountPurchaseReturn(Page page, PurchaseReturnDto purchaseReturnDto) {
+        IPage<PurchaseReturnVo> listPage = accountPurchaseService.listPageAccountPurchaseReturn(page,purchaseReturnDto);
+        return R.ok(listPage);
+    }
+
+    @PostMapping("/exportAccountPurchaseReturn")
+    @Operation(summary = "瀵煎嚭閲囪喘閫�璐ф枃浠�")
+    @Log(title = "瀵煎嚭閲囪喘閫�璐ф枃浠�", businessType = BusinessType.EXPORT)
+    public void exportAccountPurchaseReturn(HttpServletResponse response,PurchaseReturnDto purchaseReturnDto) {
+        accountPurchaseService.exportAccountPurchaseReturn(response,purchaseReturnDto);
+    }
+
+}
diff --git a/src/main/java/com/ruoyi/account/controller/AccountSalesController.java b/src/main/java/com/ruoyi/account/controller/AccountSalesController.java
index 5fb5e4f..bca90db 100644
--- a/src/main/java/com/ruoyi/account/controller/AccountSalesController.java
+++ b/src/main/java/com/ruoyi/account/controller/AccountSalesController.java
@@ -35,11 +35,11 @@
 
     private final AccountSalesService accountSalesService;
 
-    @GetMapping("/listPageByOutbound")
+    @GetMapping("/listPageAccountSales")
     @Log(title = "閿�鍞嚭搴撳彴璐�", businessType = BusinessType.OTHER)
     @Operation(summary = "璐㈠姟绠$悊--閿�鍞嚭搴撳彴璐�")
-    public R<IPage<SalesOutboundVo>> listPageByOutbound(Page page, SalesOutboundDto salesOutboundDto) {
-        IPage<SalesOutboundVo> listPage = accountSalesService.listPageByOutbound(page,salesOutboundDto);
+    public R<IPage<SalesOutboundVo>> listPageAccountSales(Page page, SalesOutboundDto salesOutboundDto) {
+        IPage<SalesOutboundVo> listPage = accountSalesService.listPageAccountSales(page,salesOutboundDto);
         return R.ok(listPage);
     }
 
@@ -50,11 +50,11 @@
         accountSalesService.exportAccountSalesOutbound(response,salesOutboundDto);
     }
 
-    @GetMapping("/listPageByReturn")
+    @GetMapping("/listPageAccountSalesReturn")
     @Log(title = "閿�鍞��璐у彴璐�", businessType = BusinessType.OTHER)
     @Operation(summary = "璐㈠姟绠$悊--閿�鍞��璐у彴璐�")
-    public R<IPage<SalesReturnVo>> listPageBySalesReturn(Page page, SalesReturnDto salesReturnDto) {
-        IPage<SalesReturnVo> listPage = accountSalesService.listPageBySalesReturn(page,salesReturnDto);
+    public R<IPage<SalesReturnVo>> listPageAccountSalesReturn(Page page, SalesReturnDto salesReturnDto) {
+        IPage<SalesReturnVo> listPage = accountSalesService.listPageAccountSalesReturn(page,salesReturnDto);
         return R.ok(listPage);
     }
 
diff --git a/src/main/java/com/ruoyi/account/service/AccountPurchaseService.java b/src/main/java/com/ruoyi/account/service/AccountPurchaseService.java
new file mode 100644
index 0000000..386f921
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/AccountPurchaseService.java
@@ -0,0 +1,27 @@
+package com.ruoyi.account.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.bean.dto.PurchaseInboundDto;
+import com.ruoyi.account.bean.dto.PurchaseReturnDto;
+import com.ruoyi.account.bean.vo.PurchaseInboundVo;
+import com.ruoyi.account.bean.vo.PurchaseReturnVo;
+import jakarta.servlet.http.HttpServletResponse;
+
+/**
+ * <p>
+ * 璐㈠姟绠$悊鐨勯攢鍞儴鍒� 鏈嶅姟绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-07 04:45:30
+ */
+public interface AccountPurchaseService {
+    IPage<PurchaseInboundVo> listPageAccountPurchase(Page page, PurchaseInboundDto purchaseInboundDto);
+
+    void exportAccountPurchaseInbound(HttpServletResponse response, PurchaseInboundDto purchaseInboundDto);
+
+    IPage<PurchaseReturnVo> listPageAccountPurchaseReturn(Page page, PurchaseReturnDto purchaseReturnDto);
+
+    void exportAccountPurchaseReturn(HttpServletResponse response, PurchaseReturnDto purchaseReturnDto);
+}
diff --git a/src/main/java/com/ruoyi/account/service/AccountSalesService.java b/src/main/java/com/ruoyi/account/service/AccountSalesService.java
index 930c5dd..7db5416 100644
--- a/src/main/java/com/ruoyi/account/service/AccountSalesService.java
+++ b/src/main/java/com/ruoyi/account/service/AccountSalesService.java
@@ -18,11 +18,11 @@
  */
 public interface AccountSalesService  {
 
-    IPage<SalesOutboundVo> listPageByOutbound(Page page, SalesOutboundDto salesOutboundDto);
+    IPage<SalesOutboundVo> listPageAccountSales(Page page, SalesOutboundDto salesOutboundDto);
 
     void exportAccountSalesOutbound(HttpServletResponse response, SalesOutboundDto salesOutboundDto);
 
-    IPage<SalesReturnVo> listPageBySalesReturn(Page page, SalesReturnDto salesReturnDto);
+    IPage<SalesReturnVo> listPageAccountSalesReturn(Page page, SalesReturnDto salesReturnDto);
 
     void exportAccountSalesReturn(HttpServletResponse response, SalesReturnDto salesReturnDto);
 }
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountPurchaseServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountPurchaseServiceImpl.java
new file mode 100644
index 0000000..747f6cf
--- /dev/null
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountPurchaseServiceImpl.java
@@ -0,0 +1,59 @@
+package com.ruoyi.account.service.impl;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.bean.dto.PurchaseInboundDto;
+import com.ruoyi.account.bean.dto.PurchaseReturnDto;
+import com.ruoyi.account.bean.vo.PurchaseInboundVo;
+import com.ruoyi.account.bean.vo.PurchaseReturnVo;
+import com.ruoyi.account.service.AccountPurchaseService;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.purchase.mapper.PurchaseReturnOrdersMapper;
+import com.ruoyi.stock.mapper.StockInRecordMapper;
+import jakarta.servlet.http.HttpServletResponse;
+import lombok.RequiredArgsConstructor;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * <p>
+ * 璐㈠姟绠$悊鐨勯攢鍞儴鍒� 鏈嶅姟瀹炵幇绫�
+ * </p>
+ *
+ * @author 鑺杞欢锛堟睙鑻忥級鏈夐檺鍏徃
+ * @since 2026-05-07 04:45:30
+ */
+@Service
+@RequiredArgsConstructor
+public class AccountPurchaseServiceImpl implements AccountPurchaseService {
+
+    private final StockInRecordMapper stockInRecordMapper;
+
+    private final PurchaseReturnOrdersMapper purchaseReturnOrdersMapper;
+
+
+    @Override
+    public IPage<PurchaseInboundVo> listPageAccountPurchase(Page page, PurchaseInboundDto purchaseInboundDto) {
+        return stockInRecordMapper.listPageAccountPurchase(page,purchaseInboundDto);
+    }
+
+    @Override
+    public void exportAccountPurchaseInbound(HttpServletResponse response, PurchaseInboundDto purchaseInboundDto) {
+        List<PurchaseInboundVo> list = stockInRecordMapper.listPageAccountPurchase(new Page(1,-1),purchaseInboundDto).getRecords();
+        ExcelUtil<PurchaseInboundVo> util = new ExcelUtil<>(PurchaseInboundVo.class);
+        util.exportExcel(response, list , "閲囪喘鍏ュ簱");
+    }
+
+    @Override
+    public IPage<PurchaseReturnVo> listPageAccountPurchaseReturn(Page page, PurchaseReturnDto purchaseReturnDto) {
+        return purchaseReturnOrdersMapper.listPageAccountPurchaseReturn(page,purchaseReturnDto);
+    }
+
+    @Override
+    public void exportAccountPurchaseReturn(HttpServletResponse response, PurchaseReturnDto purchaseReturnDto) {
+        List<PurchaseReturnVo> list = purchaseReturnOrdersMapper.listPageAccountPurchaseReturn(new Page(1,-1),purchaseReturnDto).getRecords();
+        ExcelUtil<PurchaseReturnVo> util = new ExcelUtil<>(PurchaseReturnVo.class);
+        util.exportExcel(response, list , "閲囪喘閫�璐�");
+    }
+}
diff --git a/src/main/java/com/ruoyi/account/service/impl/AccountSalesServiceImpl.java b/src/main/java/com/ruoyi/account/service/impl/AccountSalesServiceImpl.java
index 8ad55fe..ddf4a57 100644
--- a/src/main/java/com/ruoyi/account/service/impl/AccountSalesServiceImpl.java
+++ b/src/main/java/com/ruoyi/account/service/impl/AccountSalesServiceImpl.java
@@ -9,7 +9,7 @@
 import com.ruoyi.account.service.AccountSalesService;
 import com.ruoyi.common.utils.poi.ExcelUtil;
 import com.ruoyi.procurementrecord.mapper.ReturnManagementMapper;
-import com.ruoyi.sales.mapper.ShippingInfoMapper;
+import com.ruoyi.stock.mapper.StockOutRecordMapper;
 import jakarta.servlet.http.HttpServletResponse;
 import lombok.RequiredArgsConstructor;
 import org.springframework.stereotype.Service;
@@ -28,30 +28,30 @@
 @RequiredArgsConstructor
 public class AccountSalesServiceImpl  implements AccountSalesService {
 
-    private final ShippingInfoMapper shippingInfoMapper;
+    private final StockOutRecordMapper stockOutRecordMapper;
 
     private final ReturnManagementMapper returnManagementMapper;
 
     @Override
-    public IPage<SalesOutboundVo> listPageByOutbound(Page page, SalesOutboundDto salesOutboundDto) {
-        return shippingInfoMapper.listPageByOutbound(page,salesOutboundDto);
+    public IPage<SalesOutboundVo> listPageAccountSales(Page page, SalesOutboundDto salesOutboundDto) {
+        return stockOutRecordMapper.listPageAccountSales(page,salesOutboundDto);
     }
 
     @Override
     public void exportAccountSalesOutbound(HttpServletResponse response, SalesOutboundDto salesOutboundDto) {
-        List<SalesOutboundVo> list = shippingInfoMapper.listPageByOutbound(new Page(1,-1),salesOutboundDto).getRecords();
+        List<SalesOutboundVo> list = stockOutRecordMapper.listPageAccountSales(new Page(1,-1),salesOutboundDto).getRecords();
         ExcelUtil<SalesOutboundVo> util = new ExcelUtil<>(SalesOutboundVo.class);
         util.exportExcel(response, list , "閿�鍞嚭搴�");
     }
 
     @Override
-    public IPage<SalesReturnVo> listPageBySalesReturn(Page page, SalesReturnDto salesReturnDto) {
-        return returnManagementMapper.listPageBySalesReturn(page,salesReturnDto);
+    public IPage<SalesReturnVo> listPageAccountSalesReturn(Page page, SalesReturnDto salesReturnDto) {
+        return returnManagementMapper.listPageAccountSalesReturn(page,salesReturnDto);
     }
 
     @Override
     public void exportAccountSalesReturn(HttpServletResponse response, SalesReturnDto salesReturnDto) {
-        List<SalesReturnVo> list = returnManagementMapper.listPageBySalesReturn(new Page(1,-1),salesReturnDto).getRecords();
+        List<SalesReturnVo> list = returnManagementMapper.listPageAccountSalesReturn(new Page(1,-1),salesReturnDto).getRecords();
         ExcelUtil<SalesReturnVo> util = new ExcelUtil<>(SalesReturnVo.class);
         util.exportExcel(response, list , "閿�鍞��璐�");
     }
diff --git a/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java b/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
index d7d0649..9c63efb 100644
--- a/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
+++ b/src/main/java/com/ruoyi/basic/enums/RecordTypeEnum.java
@@ -132,10 +132,6 @@
     INBOUND_MANAGEMENT("inbound_management"),
     // Office Supplies
     OFFICE_SUPPLIES("office_supplies"),
-    // OA
-    OA_PROJECT_PHASE_TASK("oa_project_phase_task"),
-    OA_PROJECT("oa_project"),
-    OA_PROJECT_PHASE("oa_project_phase"),
     // Measuring Instrument Ledger
     SPARE_PARTS("spare_parts"),
     MEASURING_INSTRUMENT_LEDGER_RECORD("measuring_instrument_ledger_record"),
diff --git a/src/main/java/com/ruoyi/common/enums/StockInQualifiedRecordTypeEnum.java b/src/main/java/com/ruoyi/common/enums/StockInQualifiedRecordTypeEnum.java
index 01c4d7e..7c149bc 100644
--- a/src/main/java/com/ruoyi/common/enums/StockInQualifiedRecordTypeEnum.java
+++ b/src/main/java/com/ruoyi/common/enums/StockInQualifiedRecordTypeEnum.java
@@ -2,29 +2,23 @@
 
 import lombok.Getter;
 
-
+//鍏ュ簱鏋氫妇
 @Getter
 public enum StockInQualifiedRecordTypeEnum implements BaseEnum<String> {
 
 
     CUSTOMIZATION_STOCK_IN("0", "鍚堟牸鑷畾涔夊叆搴�"),
-    CUSTOMIZATION_STOCK_OUT("1", "鍚堟牸鑷畾涔夊嚭搴�"),
     PRODUCTION_REPORT_STOCK_IN("2", "鐢熶骇鎶ュ伐-鍏ュ簱"),
-    PRODUCTION_REPORT_STOCK_OUT("3", "鐢熶骇鎶ュ伐-鍑哄簱"),
     DEFECTIVE_SCRAP("4", "涓嶅悎鏍煎鐞�-鎶ュ簾"),
     PRODUCTION_SCRAP("5", "鐢熶骇鎶ュ伐-鎶ュ簾"),
     QUALITYINSPECT_STOCK_IN("6", "璐ㄦ-鍚堟牸鍏ュ簱"),
     PURCHASE_STOCK_IN("7", "閲囪喘-鍏ュ簱"),
-    SALE_STOCK_OUT("8", "閿�鍞�-鍑哄簱"),
     CUSTOMIZATION_UNSTOCK_IN("9", "涓嶅悎鏍艰嚜瀹氫箟鍏ュ簱"),
-    CUSTOMIZATION_UNSTOCK_OUT("10", "涓嶅悎鏍艰嚜瀹氫箟鍑哄簱"),
+    CUSTOMIZATION_UNSTOCK_OUT("10", "閲囪喘-璐ㄦ-鍚堟牸鍏ュ簱"),
     DEFECTIVE_PASS("11", "涓嶅悎鏍�-璁╂鏀捐"),
-    QUALITYINSPECT_UNSTOCK_IN("12", "璐ㄦ-涓嶅悎鏍煎叆搴�"),
-    SALE_SHIP_STOCK_OUT("13", "閿�鍞�-鍙戣揣鍑哄簱"),
     RETURN_HE_IN("14", "閿�鍞��璐�-鍚堟牸鍏ュ簱"),
     RETURN_UNSTOCK_IN("15", "閿�鍞��璐�-涓嶅悎鏍煎叆搴�"),
     PICK_RETURN_IN("20", "棰嗘枡閫�鏂�-鍚堟牸鍏ュ簱"),
-    PURCHASE_RETURN_STOCK_OUT("21", "閲囪喘閫�璐�"),
     FEED_RETURN_IN("22", "鐢熶骇閫�鏂�-鍚堟牸鍏ュ簱");
 
 
diff --git a/src/main/java/com/ruoyi/common/enums/StockInUnQualifiedRecordTypeEnum.java b/src/main/java/com/ruoyi/common/enums/StockInUnQualifiedRecordTypeEnum.java
deleted file mode 100644
index a03e6bd..0000000
--- a/src/main/java/com/ruoyi/common/enums/StockInUnQualifiedRecordTypeEnum.java
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.ruoyi.common.enums;
-
-import lombok.Getter;
-
-
-@Getter
-public enum StockInUnQualifiedRecordTypeEnum implements BaseEnum<String> {
-
-
-    DEFECTIVE_SCRAP("4", "涓嶅悎鏍煎鐞�-鎶ュ簾"),
-    PRODUCTION_SCRAP("5", "鐢熶骇鎶ュ伐-鎶ュ簾"),
-    CUSTOMIZATION_UNSTOCK_IN("9", "涓嶅悎鏍艰嚜瀹氫箟鍏ュ簱"),
-    QUALITYINSPECT_UNSTOCK_IN("12", "璐ㄦ-涓嶅悎鏍煎叆搴�"),
-    RETURN_UNSTOCK_IN("15", "閿�鍞��璐�-涓嶅悎鏍煎叆搴�");
-
-
-    private final String code;
-    private final String value;
-
-    StockInUnQualifiedRecordTypeEnum(String code, String value) {
-        this.code = code;
-        this.value = value;
-    }
-
-}
diff --git a/src/main/java/com/ruoyi/common/enums/StockOutQualifiedRecordTypeEnum.java b/src/main/java/com/ruoyi/common/enums/StockOutQualifiedRecordTypeEnum.java
index 4fe1f6e..ccc6d78 100644
--- a/src/main/java/com/ruoyi/common/enums/StockOutQualifiedRecordTypeEnum.java
+++ b/src/main/java/com/ruoyi/common/enums/StockOutQualifiedRecordTypeEnum.java
@@ -9,6 +9,7 @@
     PRODUCTION_REPORT_STOCK_OUT("3", "鐢熶骇鎶ュ伐-鍑哄簱"),
     SALE_STOCK_OUT("8", "閿�鍞�-鍑哄簱"),
     PURCHASE_RETURN_STOCK_OUT("9", "閲囪喘閫�璐�"),
+    CUSTOMIZATION_UNSTOCK_OUT("10", "涓嶅悎鏍艰嚜瀹氫箟鍑哄簱"),
     SALE_SHIP_STOCK_OUT("13", "閿�鍞�-鍙戣揣鍑哄簱"),
     PICK_STOCK_OUT("14", "鐢熶骇棰嗘枡鍑哄簱"),
     FEED_STOCK_OUT("15", "鐢熶骇琛ユ枡鍑哄簱");
diff --git a/src/main/java/com/ruoyi/common/enums/StockOutUnQualifiedRecordTypeEnum.java b/src/main/java/com/ruoyi/common/enums/StockOutUnQualifiedRecordTypeEnum.java
deleted file mode 100644
index 2ee40bd..0000000
--- a/src/main/java/com/ruoyi/common/enums/StockOutUnQualifiedRecordTypeEnum.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.ruoyi.common.enums;
-
-import lombok.Getter;
-
-
-@Getter
-public enum StockOutUnQualifiedRecordTypeEnum implements BaseEnum<String> {
-
-
-    CUSTOMIZATION_UNSTOCK_OUT("10", "涓嶅悎鏍艰嚜瀹氫箟鍑哄簱");
-
-
-    private final String code;
-    private final String value;
-
-    StockOutUnQualifiedRecordTypeEnum(String code, String value) {
-        this.code = code;
-        this.value = value;
-    }
-
-}
diff --git a/src/main/java/com/ruoyi/oA/controller/OaProjectController.java b/src/main/java/com/ruoyi/oA/controller/OaProjectController.java
deleted file mode 100644
index b7ecc7a..0000000
--- a/src/main/java/com/ruoyi/oA/controller/OaProjectController.java
+++ /dev/null
@@ -1,75 +0,0 @@
-package com.ruoyi.oA.controller;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.oA.dto.OaProjectDto;
-import com.ruoyi.oA.pojo.OaProject;
-import com.ruoyi.oA.service.OaProjectService;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.Operation;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.AllArgsConstructor;
-import org.apache.commons.collections4.CollectionUtils;
-import org.springframework.web.bind.annotation.*;
-
-import java.util.HashMap;
-import java.util.List;
-
-@Tag(name = "oA椤圭洰绠$悊")
-@RestController
-@AllArgsConstructor
-@RequestMapping("/oA/project")
-public class OaProjectController {
-    private final OaProjectService oaProjectService;
-
-    @Operation(summary = "鑾峰彇椤圭洰鍒楄〃")
-    @GetMapping("/listPage")
-    public AjaxResult listPage(Page page, OaProjectDto oaProjectDto) {
-        IPage<OaProjectDto> listPage = oaProjectService.listPage(page, oaProjectDto);
-        return AjaxResult.success(listPage);
-    }
-    @Operation(summary = "鑾峰彇椤圭洰鍒楄〃璇︽儏")
-    @GetMapping("/getList")
-    public AjaxResult getList(Page page, OaProjectDto oaProjectDto) {
-        IPage<OaProjectDto> listPage = oaProjectService.listPage(page, oaProjectDto);
-        HashMap<Object, Object> Map = new HashMap<>();
-        listPage.getRecords().forEach(item -> {
-            Map.put(item.getProjectId(), item);
-        });
-        return AjaxResult.success(Map);
-    }
-    @Operation(summary = "澧炴坊椤圭洰")
-    @PostMapping("/add")
-    public AjaxResult add(@RequestBody OaProject oaProject) {
-        boolean save = oaProjectService.save(oaProject);
-        return AjaxResult.success(save);
-    }
-    @Operation(summary = "鍒犻櫎椤圭洰")
-    @DeleteMapping("/delete/{id}")
-    public AjaxResult delete(@PathVariable Long id) {
-        boolean remove = oaProjectService.deleteById(id);
-        return AjaxResult.success(remove);
-    }
-    @Operation(summary = "鏇存柊椤圭洰")
-    @PostMapping("/update")
-    public AjaxResult update(@RequestBody OaProject oaProject) {
-        boolean update = oaProjectService.updateById(oaProject);
-        return AjaxResult.success(update);
-    }
-//    @Operation(summary = "鏍规嵁ID鑾峰彇椤圭洰璇︽儏")
-//    @GetMapping("/getById")
-//    public AjaxResult getById(Long id) {
-//        OaProject oaProject = oaProjectService.getById(id);
-//        return AjaxResult.success(oaProject);
-//    }
-    @Operation(summary = "瀵煎嚭鎵�閫夐」鐩�")
-    @PostMapping("/export/{ids}")
-    public void export(HttpServletResponse response, @PathVariable("ids") List<Long> ids) {
-        if (CollectionUtils.isEmpty(ids)) {
-            throw new IllegalArgumentException("瀵煎嚭椤圭洰鍒楄〃涓嶈兘涓虹┖");
-        }
-        oaProjectService.export(response, ids);
-    }
-
-}
diff --git a/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseController.java b/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseController.java
deleted file mode 100644
index a4a05bb..0000000
--- a/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseController.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.ruoyi.oA.controller;
-
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.ruoyi.oA.service.OaProjectPhaseService;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.Operation;
-import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.*;
-
-@Tag(name = "oA椤圭洰闃舵绠$悊")
-@RestController
-@RequestMapping("/oA/projectPhase")
-@AllArgsConstructor
-public class OaProjectPhaseController {
-    private final OaProjectPhaseService oaProjectPhaseService;
-
-    @Operation(summary = "鏂板椤圭洰闃舵")
-    @PostMapping("/add")
-    public AjaxResult add(@RequestBody OaProjectPhase oaProjectPhase) {
-        return AjaxResult.success(oaProjectPhaseService.save(oaProjectPhase));
-    }
-
-    @Operation(summary = "鍒犻櫎椤圭洰闃舵")
-    @DeleteMapping("/delete/{phaseId}")
-    public AjaxResult delete(@PathVariable Integer phaseId) {
-        return AjaxResult.success(oaProjectPhaseService.deleteById(phaseId));
-    }
-
-    @Operation(summary = "鏇存柊椤圭洰闃舵")
-    @PostMapping("/update")
-    public AjaxResult update(@RequestBody OaProjectPhase oaProjectPhase) {
-        return AjaxResult.success(oaProjectPhaseService.updateById(oaProjectPhase));
-    }
-
-    @Operation(summary = "鏍规嵁椤圭洰id鏌ヨ椤圭洰闃舵鍒楄〃")
-    @GetMapping("/listByProjectId/{projectId}")
-    public AjaxResult listByProjectId(@PathVariable Integer projectId) {
-        return AjaxResult.success(oaProjectPhaseService.listByProjectId(projectId));
-    }
-}
diff --git a/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseTaskController.java b/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseTaskController.java
deleted file mode 100644
index 91a846e..0000000
--- a/src/main/java/com/ruoyi/oA/controller/OaProjectPhaseTaskController.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package com.ruoyi.oA.controller;
-
-import com.ruoyi.framework.web.domain.AjaxResult;
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import com.ruoyi.oA.service.OaProjectPhaseTaskService;
-import io.swagger.v3.oas.annotations.tags.Tag;
-import io.swagger.v3.oas.annotations.Operation;
-import lombok.AllArgsConstructor;
-import org.springframework.web.bind.annotation.*;
-
-@Tag(name = "oA椤圭洰闃舵浠诲姟绠$悊")
-@RestController
-@RequestMapping("/oA/projectPhaseTask")
-@AllArgsConstructor
-public class OaProjectPhaseTaskController {
-    private final OaProjectPhaseTaskService oaProjectPhaseTaskService;
-
-    @Operation(summary = "鏂板椤圭洰闃舵浠诲姟")
-    @PostMapping("/add")
-    public AjaxResult add(@RequestBody OaProjectPhaseTask oaProjectPhaseTask) {
-        return AjaxResult.success(oaProjectPhaseTaskService.save(oaProjectPhaseTask));
-    }
-
-    @Operation(summary = "鏍规嵁椤圭洰闃舵id鏌ヨ椤圭洰闃舵浠诲姟鍒楄〃")
-    @GetMapping("/listByPhaseId/{phaseId}")
-    public AjaxResult listByPhaseId(@PathVariable Integer phaseId) {
-        return AjaxResult.success(oaProjectPhaseTaskService.listByPhaseId(phaseId));
-    }
-
-    @Operation(summary = "鍒犻櫎椤圭洰闃舵浠诲姟")
-    @DeleteMapping("/delete/{taskId}")
-    public AjaxResult delete(@PathVariable Integer taskId) {
-        return AjaxResult.success(oaProjectPhaseTaskService.removeById(taskId));
-    }
-
-    @Operation(summary = "鏇存柊椤圭洰闃舵浠诲姟")
-    @PostMapping("/update")
-    public AjaxResult update(@RequestBody OaProjectPhaseTask oaProjectPhaseTask) {
-        return AjaxResult.success(oaProjectPhaseTaskService.updateById(oaProjectPhaseTask));
-    }
-}
diff --git a/src/main/java/com/ruoyi/oA/dto/OaProjectDto.java b/src/main/java/com/ruoyi/oA/dto/OaProjectDto.java
deleted file mode 100644
index 0f90faf..0000000
--- a/src/main/java/com/ruoyi/oA/dto/OaProjectDto.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.ruoyi.oA.dto;
-
-import com.ruoyi.framework.aspectj.lang.annotation.Excel;
-import com.ruoyi.oA.pojo.OaProject;
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import lombok.Data;
-
-import java.util.List;
-
-@Data
-public class OaProjectDto extends OaProject {
-    /**
-     * 璐熻矗浜哄悕绉�
-     */
-    @Excel(name = "璐熻矗浜哄悕绉�")
-    private String managerName;
-    /**
-     * 椤圭洰闃舵鍒楄〃
-     */
-    private List<OaProjectPhaseDto> oaProjectPhasesDto;
-//    /**
-//     * 椤圭洰闃舵浠诲姟鍒楄〃
-//     */
-//    private List<OaProjectPhaseTask> oaProjectPhaseTasks;
-}
diff --git a/src/main/java/com/ruoyi/oA/dto/OaProjectPhaseDto.java b/src/main/java/com/ruoyi/oA/dto/OaProjectPhaseDto.java
deleted file mode 100644
index 4ef163e..0000000
--- a/src/main/java/com/ruoyi/oA/dto/OaProjectPhaseDto.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.ruoyi.oA.dto;
-
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import lombok.Data;
-
-import java.util.List;
-
-@Data
-public class OaProjectPhaseDto extends OaProjectPhase {
-    private List<OaProjectPhaseTask> oaProjectPhaseTasks;
-}
diff --git a/src/main/java/com/ruoyi/oA/mapper/OaProjectMapper.java b/src/main/java/com/ruoyi/oA/mapper/OaProjectMapper.java
deleted file mode 100644
index 2114cef..0000000
--- a/src/main/java/com/ruoyi/oA/mapper/OaProjectMapper.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.ruoyi.oA.mapper;
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.oA.dto.OaProjectDto;
-import com.ruoyi.oA.pojo.OaProject;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project(OA绯荤粺-椤圭洰浠诲姟鍗忓悓-椤圭洰琛�)銆戠殑鏁版嵁搴撴搷浣淢apper
-* @createDate 2025-09-24 09:18:46
-* @Entity com.ruoyi.oA.pojo.OaProject
-*/
-public interface OaProjectMapper extends BaseMapper<OaProject> {
-
-    IPage<OaProjectDto> listPage(Page page,@Param("req") OaProjectDto oaProjectDto);
-
-    List<OaProjectDto> selectByIds(List<Long> ids);
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseMapper.java b/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseMapper.java
deleted file mode 100644
index 41f6ab0..0000000
--- a/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseMapper.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.ruoyi.oA.mapper;
-
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase(OA绯荤粺-椤圭洰闃舵琛�)銆戠殑鏁版嵁搴撴搷浣淢apper
-* @createDate 2025-09-24 09:18:46
-* @Entity com.ruoyi.oA.pojo.OaProjectPhase
-*/
-public interface OaProjectPhaseMapper extends BaseMapper<OaProjectPhase> {
-
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseTaskMapper.java b/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseTaskMapper.java
deleted file mode 100644
index b357c76..0000000
--- a/src/main/java/com/ruoyi/oA/mapper/OaProjectPhaseTaskMapper.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.ruoyi.oA.mapper;
-
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase_task(OA绯荤粺-椤圭洰闃舵-浠诲姟琛�)銆戠殑鏁版嵁搴撴搷浣淢apper
-* @createDate 2025-09-24 09:18:46
-* @Entity com.ruoyi.oA.pojo.OaProjectPhaseTask
-*/
-public interface OaProjectPhaseTaskMapper extends BaseMapper<OaProjectPhaseTask> {
-
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/oA/pojo/OaProject.java b/src/main/java/com/ruoyi/oA/pojo/OaProject.java
deleted file mode 100644
index 4a5af5b..0000000
--- a/src/main/java/com/ruoyi/oA/pojo/OaProject.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package com.ruoyi.oA.pojo;
-
-import com.baomidou.mybatisplus.annotation.*;
-
-import java.io.Serializable;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.Date;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.ruoyi.framework.aspectj.lang.annotation.Excel;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-/**
- * OA绯荤粺-椤圭洰浠诲姟鍗忓悓-椤圭洰琛�
- * @TableName oa_project
- */
-@TableName(value ="oa_project")
-@Data
-public class OaProject implements Serializable {
-    /**
-     * 
-     */
-    @TableId(type = IdType.AUTO)
-    private Integer projectId;
-
-    /**
-     * 椤圭洰鍚嶇О
-     */
-    @Excel(name = "椤圭洰鍚嶇О")
-    private String projectName;
-
-    /**
-     * 椤圭洰鎻忚堪
-     */
-    @Excel(name = "椤圭洰鎻忚堪")
-    private String description;
-
-    /**
-     * 寮�濮嬫椂闂�
-     */
-    @Excel(name = "寮�濮嬫椂闂�")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate startDate;
-
-    /**
-     * 缁撴潫鏃堕棿
-     */
-    @Excel(name = "缁撴潫鏃堕棿")
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate endDate;
-
-    /**
-     * 鐘舵��
-     */
-    @Excel(name = "鐘舵��")
-    private String status;
-
-    /**
-     * 瀹屾垚搴�
-     */
-    @Excel(name = "瀹屾垚搴�")
-    private Integer completionRate;
-
-    /**
-     * 璐熻矗浜篿d
-     */
-    private Long managerId;
-
-    /**
-     * 鍒涘缓鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Integer createUser;
-
-    /**
-     * 鍒涘缓鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime createTime;
-
-    /**
-     * 淇敼鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Integer updateUser;
-
-    /**
-     * 淇敼鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime updateTime;
-
-    /**
-     * 绉熸埛ID
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Long tenantId;
-
-
-    @TableField(fill = FieldFill.INSERT)
-    private Long deptId;
-}
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/oA/pojo/OaProjectPhase.java b/src/main/java/com/ruoyi/oA/pojo/OaProjectPhase.java
deleted file mode 100644
index b26bb9d..0000000
--- a/src/main/java/com/ruoyi/oA/pojo/OaProjectPhase.java
+++ /dev/null
@@ -1,95 +0,0 @@
-package com.ruoyi.oA.pojo;
-
-
-import com.baomidou.mybatisplus.annotation.*;
-
-import java.io.Serializable;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.Date;
-
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-/**
- * OA绯荤粺-椤圭洰闃舵琛�
- * @TableName oa_project_phase
- */
-@TableName(value ="oa_project_phase")
-@Data
-public class OaProjectPhase implements Serializable {
-    /**
-     * 
-     */
-    @TableId(type = IdType.AUTO)
-    private Integer phaseId;
-
-    /**
-     * 椤圭洰闃舵鍚嶇О
-     */
-    private String phaseName;
-
-    /**
-     * oa_project琛╥d
-     */
-    private Integer oaProjectId;
-
-    /**
-     * 寮�濮嬫椂闂�
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate startDate;
-
-    /**
-     * 缁撴潫鏃堕棿
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate endDate;
-
-    /**
-     * 鐘舵��
-     */
-    private String status;
-
-    /**
-     * 鍒涘缓鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Integer createUser;
-
-    /**
-     * 鍒涘缓鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime createTime;
-
-    /**
-     * 淇敼鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Integer updateUser;
-
-    /**
-     * 淇敼鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime updateTime;
-
-    /**
-     * 绉熸埛ID
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Long tenantId;
-
-
-    @TableField(fill = FieldFill.INSERT)
-    private Long deptId;
-}
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/oA/pojo/OaProjectPhaseTask.java b/src/main/java/com/ruoyi/oA/pojo/OaProjectPhaseTask.java
deleted file mode 100644
index 1b81069..0000000
--- a/src/main/java/com/ruoyi/oA/pojo/OaProjectPhaseTask.java
+++ /dev/null
@@ -1,120 +0,0 @@
-package com.ruoyi.oA.pojo;
-
-import com.baomidou.mybatisplus.annotation.*;
-
-import java.io.Serializable;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
-import java.util.Date;
-
-import com.fasterxml.jackson.annotation.JsonFormat;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-
-/**
- * OA绯荤粺-椤圭洰闃舵-浠诲姟琛�
- * @TableName oa_project_phase_task
- */
-@TableName(value ="oa_project_phase_task")
-@Data
-public class OaProjectPhaseTask implements Serializable {
-    /**
-     * 
-     */
-    @TableId(type = IdType.AUTO)
-    private Integer taskId;
-
-    /**
-     * 椤圭洰闃舵浠诲姟鍚嶇О
-     */
-    private String taskName;
-
-    /**
-     * oa_project_phase琛╥d
-     */
-    private Integer phaseId;
-
-    /**
-     * 寮�濮嬫椂闂�
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate startDate;
-
-    /**
-     * 缁撴潫鏃堕棿
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate endDate;
-
-    /**
-     * 鐩爣浠诲姟瀹屾垚鏃ユ湡
-     */
-    @JsonFormat(pattern = "yyyy-MM-dd")
-    @DateTimeFormat(pattern = "yyyy-MM-dd")
-    private LocalDate targetDate;
-
-    /**
-     * 鐩爣鍊�
-     */
-    private Integer targetValue;
-
-    /**
-     * 褰撳墠鍊�
-     */
-    private Integer currentValue;
-
-    /**
-     * 鍗曚綅
-     */
-    private String unit;
-
-    /**
-     * 鐘舵��
-     */
-    private String status;
-
-    /**
-     * 瀹屾垚搴�
-     */
-    private Integer completionRate;
-
-    /**
-     * 鍒涘缓鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Integer createUser;
-
-    /**
-     * 鍒涘缓鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime createTime;
-
-    /**
-     * 淇敼鐢ㄦ埛
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    private Integer updateUser;
-
-    /**
-     * 淇敼鏃堕棿
-     */
-    @TableField(fill = FieldFill.INSERT_UPDATE)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-    private LocalDateTime updateTime;
-
-    /**
-     * 绉熸埛ID
-     */
-    @TableField(fill = FieldFill.INSERT)
-    private Long tenantId;
-
-
-    @TableField(fill = FieldFill.INSERT)
-    private Long deptId;
-}
\ No newline at end of file
diff --git a/src/main/java/com/ruoyi/oA/service/OaProjectPhaseService.java b/src/main/java/com/ruoyi/oA/service/OaProjectPhaseService.java
deleted file mode 100644
index 7914080..0000000
--- a/src/main/java/com/ruoyi/oA/service/OaProjectPhaseService.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.ruoyi.oA.service;
-
-import com.ruoyi.oA.dto.OaProjectPhaseDto;
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase(OA绯荤粺-椤圭洰闃舵琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice
-* @createDate 2025-09-24 09:18:46
-*/
-public interface OaProjectPhaseService extends IService<OaProjectPhase> {
-
-    List<OaProjectPhaseDto> listByProjectId(Integer oaProjectId);
-
-    boolean deleteById(Integer phaseId);
-}
diff --git a/src/main/java/com/ruoyi/oA/service/OaProjectPhaseTaskService.java b/src/main/java/com/ruoyi/oA/service/OaProjectPhaseTaskService.java
deleted file mode 100644
index 225d12e..0000000
--- a/src/main/java/com/ruoyi/oA/service/OaProjectPhaseTaskService.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.ruoyi.oA.service;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import com.baomidou.mybatisplus.extension.service.IService;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase_task(OA绯荤粺-椤圭洰闃舵-浠诲姟琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice
-* @createDate 2025-09-24 09:18:46
-*/
-public interface OaProjectPhaseTaskService extends IService<OaProjectPhaseTask> {
-
-    List<OaProjectPhaseTask> listByPhaseId(Integer phaseId);
-}
diff --git a/src/main/java/com/ruoyi/oA/service/OaProjectService.java b/src/main/java/com/ruoyi/oA/service/OaProjectService.java
deleted file mode 100644
index 9f8e474..0000000
--- a/src/main/java/com/ruoyi/oA/service/OaProjectService.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.ruoyi.oA.service;
-
-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.oA.dto.OaProjectDto;
-import com.ruoyi.oA.pojo.OaProject;
-import jakarta.servlet.http.HttpServletResponse;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project(OA绯荤粺-椤圭洰浠诲姟鍗忓悓-椤圭洰琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice
-* @createDate 2025-09-24 09:18:46
-*/
-public interface OaProjectService extends IService<OaProject> {
-
-    IPage<OaProjectDto> listPage(Page page, OaProjectDto oaProjectDto);
-
-    void export(HttpServletResponse response, List<Long> ids);
-
-    boolean deleteById(Long id);
-}
diff --git a/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseServiceImpl.java b/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseServiceImpl.java
deleted file mode 100644
index 640ec42..0000000
--- a/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseServiceImpl.java
+++ /dev/null
@@ -1,57 +0,0 @@
-package com.ruoyi.oA.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.common.utils.bean.BeanUtils;
-import com.ruoyi.oA.dto.OaProjectPhaseDto;
-import com.ruoyi.oA.mapper.OaProjectPhaseMapper;
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.ruoyi.oA.pojo.OaProjectPhaseTask;
-import com.ruoyi.oA.service.OaProjectPhaseService;
-import com.ruoyi.oA.service.OaProjectPhaseTaskService;
-import lombok.RequiredArgsConstructor;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase(OA绯荤粺-椤圭洰闃舵琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
-* @createDate 2025-09-24 09:18:46
-*/
-@Service
-@RequiredArgsConstructor
-@Transactional(rollbackFor = Exception.class)
-public class OaProjectPhaseServiceImpl extends ServiceImpl<OaProjectPhaseMapper, OaProjectPhase>
-    implements OaProjectPhaseService{
-    private final OaProjectPhaseMapper oaProjectPhaseMapper;
-    private final OaProjectPhaseTaskService oaProjectPhaseTaskService;
-
-    @Override
-    public List<OaProjectPhaseDto> listByProjectId(Integer oaProjectId) {
-        List<OaProjectPhase> oaProjectPhases = oaProjectPhaseMapper.selectList(new LambdaQueryWrapper<OaProjectPhase>()
-                .eq(OaProjectPhase::getOaProjectId, oaProjectId));
-        List<OaProjectPhaseDto> collect = oaProjectPhases.stream().map(oaProjectPhase -> {
-            OaProjectPhaseDto oaProjectPhaseDto = new OaProjectPhaseDto();
-            BeanUtils.copyProperties(oaProjectPhase, oaProjectPhaseDto);
-//            List<OaProjectPhaseTask> oaProjectPhaseTasks = oaProjectPhaseTaskService.listByPhaseId(oaProjectPhaseDto.getPhaseId());
-            oaProjectPhaseDto.setOaProjectPhaseTasks(oaProjectPhaseTaskService.listByPhaseId(oaProjectPhaseDto.getPhaseId()));
-            return oaProjectPhaseDto;
-        }).collect(Collectors.toList());
-        return collect;
-    }
-
-    @Override
-    public boolean deleteById(Integer phaseId) {
-        // 鍏堝垹闄ら」鐩樁娈典笅鐨勪换鍔�
-        oaProjectPhaseTaskService.remove(new LambdaQueryWrapper<OaProjectPhaseTask>()
-                .eq(OaProjectPhaseTask::getPhaseId, phaseId));
-        return oaProjectPhaseMapper.deleteById(phaseId) > 0;
-    }
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseTaskServiceImpl.java b/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseTaskServiceImpl.java
deleted file mode 100644
index 625e8d8..0000000
--- a/src/main/java/com/ruoyi/oA/service/impl/OaProjectPhaseTaskServiceImpl.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.ruoyi.oA.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-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.oA.pojo.OaProjectPhaseTask;
-import com.ruoyi.oA.service.OaProjectPhaseTaskService;
-import com.ruoyi.oA.mapper.OaProjectPhaseTaskMapper;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project_phase_task(OA绯荤粺-椤圭洰闃舵-浠诲姟琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
-* @createDate 2025-09-24 09:18:46
-*/
-@Service
-public class OaProjectPhaseTaskServiceImpl extends ServiceImpl<OaProjectPhaseTaskMapper, OaProjectPhaseTask>
-    implements OaProjectPhaseTaskService{
-
-
-    @Override
-    public List<OaProjectPhaseTask> listByPhaseId(Integer phaseId) {
-        return baseMapper.selectList(new LambdaQueryWrapper<OaProjectPhaseTask>()
-                .eq(OaProjectPhaseTask::getPhaseId, phaseId));
-    }
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/oA/service/impl/OaProjectServiceImpl.java b/src/main/java/com/ruoyi/oA/service/impl/OaProjectServiceImpl.java
deleted file mode 100644
index afe125a..0000000
--- a/src/main/java/com/ruoyi/oA/service/impl/OaProjectServiceImpl.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package com.ruoyi.oA.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-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.poi.ExcelUtil;
-import com.ruoyi.oA.dto.OaProjectDto;
-import com.ruoyi.oA.mapper.OaProjectMapper;
-import com.ruoyi.oA.pojo.OaProject;
-import com.ruoyi.oA.pojo.OaProjectPhase;
-import com.ruoyi.oA.service.OaProjectPhaseService;
-import com.ruoyi.oA.service.OaProjectService;
-import jakarta.servlet.http.HttpServletResponse;
-import lombok.RequiredArgsConstructor;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.List;
-
-/**
-* @author ywx
-* @description 閽堝琛ㄣ�恛a_project(OA绯荤粺-椤圭洰浠诲姟鍗忓悓-椤圭洰琛�)銆戠殑鏁版嵁搴撴搷浣淪ervice瀹炵幇
-* @createDate 2025-09-24 09:18:45
-*/
-@Service
-@Transactional(rollbackFor = Exception.class)
-@RequiredArgsConstructor
-public class OaProjectServiceImpl extends ServiceImpl<OaProjectMapper, OaProject>
-    implements OaProjectService{
-    private final OaProjectMapper oaProjectMapper;
-    private final OaProjectPhaseService oaProjectPhaseService;
-
-    @Override
-    public IPage<OaProjectDto> listPage(Page page, OaProjectDto oaProjectDto) {
-        IPage<OaProjectDto> iPage = oaProjectMapper.listPage(page, oaProjectDto);
-        // 椤圭洰闃舵鍒楄〃
-        for (OaProjectDto projectDto : iPage.getRecords()) {
-            projectDto.setOaProjectPhasesDto(oaProjectPhaseService.listByProjectId(projectDto.getProjectId()));
-        }
-        return iPage;
-    }
-
-    @Override
-    public void export(HttpServletResponse response, List<Long> ids) {
-        List<OaProjectDto> list = oaProjectMapper.selectByIds(ids);
-        ExcelUtil<OaProjectDto> util = new ExcelUtil<OaProjectDto>(OaProjectDto.class);
-        util.exportExcel(response, list , "椤圭洰鏁版嵁");
-    }
-
-    @Override
-    public boolean deleteById(Long id) {
-        // 鍏堝垹闄ら」鐩笅鐨勯樁娈�
-        List<OaProjectPhase> oaProjectPhases = oaProjectPhaseService.list(new LambdaQueryWrapper<OaProjectPhase>()
-                .eq(OaProjectPhase::getOaProjectId, id));
-        if (!oaProjectPhases.isEmpty()) {
-            oaProjectPhases.forEach(oaProjectPhase -> {
-                oaProjectPhaseService.deleteById(oaProjectPhase.getPhaseId());
-            });
-        }
-        return oaProjectMapper.deleteById(id) > 0;
-    }
-}
-
-
-
-
diff --git a/src/main/java/com/ruoyi/procurementrecord/mapper/ReturnManagementMapper.java b/src/main/java/com/ruoyi/procurementrecord/mapper/ReturnManagementMapper.java
index ec1693e..5c6504b 100644
--- a/src/main/java/com/ruoyi/procurementrecord/mapper/ReturnManagementMapper.java
+++ b/src/main/java/com/ruoyi/procurementrecord/mapper/ReturnManagementMapper.java
@@ -25,5 +25,5 @@
 
     ReturnManagementDto getReturnManagementDtoById(Long id);
 
-    IPage<SalesReturnVo> listPageBySalesReturn(Page page, @Param("req") SalesReturnDto salesReturnDto);
+    IPage<SalesReturnVo> listPageAccountSalesReturn(Page page, @Param("req") SalesReturnDto salesReturnDto);
 }
diff --git a/src/main/java/com/ruoyi/procurementrecord/service/impl/ReturnManagementServiceImpl.java b/src/main/java/com/ruoyi/procurementrecord/service/impl/ReturnManagementServiceImpl.java
index b22d63d..e34ca05 100644
--- a/src/main/java/com/ruoyi/procurementrecord/service/impl/ReturnManagementServiceImpl.java
+++ b/src/main/java/com/ruoyi/procurementrecord/service/impl/ReturnManagementServiceImpl.java
@@ -8,7 +8,6 @@
 import com.ruoyi.account.pojo.AccountExpense;
 import com.ruoyi.account.service.SalesRefundAmountOrderService;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.utils.OrderUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.procurementrecord.dto.ReturnManagementDto;
@@ -119,7 +118,7 @@
             // 鏄惁鏈夎川閲忛棶棰�
             if (returnSaleProduct.getIsQuality() == 1) {
                 // 鏈夎川閲忛棶棰橈紝鍏ヤ笉鍚堟牸搴�
-                stockUtils.addUnStock(returnSaleProduct.getProductModelId(),returnSaleProduct.getNum(), StockInUnQualifiedRecordTypeEnum.RETURN_UNSTOCK_IN.getCode(),returnSaleProduct.getId());
+                stockUtils.addUnStock(returnSaleProduct.getProductModelId(),returnSaleProduct.getNum(), StockInQualifiedRecordTypeEnum.RETURN_UNSTOCK_IN.getCode(),returnSaleProduct.getId());
             }else{
                 // 鏃犺川閲忛棶棰橈紝鍏ュ悎鏍煎簱
                 stockUtils.addStock(returnSaleProduct.getProductModelId(),returnSaleProduct.getNum(), StockInQualifiedRecordTypeEnum.RETURN_HE_IN.getCode(),returnSaleProduct.getId());
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index 808e75d..20f4bfc 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -12,7 +12,6 @@
 import com.ruoyi.basic.pojo.Product;
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.bean.BeanUtils;
@@ -391,8 +390,6 @@
             }
             ProductionAccount productionAccount = new ProductionAccount();
             productionAccount.setProductionProductMainId(productionProductMain.getId());
-//            productionAccount.setSalesLedgerId(productionOrder.getSalesLedgerId());
-//            productionAccount.setSalesLedgerProductId(productionOrder.getSalesLedgerProductId() == null ? null : productionOrder.getSalesLedgerProductId().longValue());
             productionAccount.setSchedulingUserId(user == null ? null : user.getUserId());
             productionAccount.setSchedulingUserName(user == null ? dto.getUserName() : user.getNickName());
             productionAccount.setFinishedNum(productQty);
@@ -401,10 +398,6 @@
             productionAccount.setSchedulingDate(LocalDateTime.now());
             productionAccountMapper.insert(productionAccount);
         }
-//        if (defaultDecimal(dto.getScrapQty()).compareTo(BigDecimal.ZERO) > 0) {
-//            stockUtils.addUnStock(productModel.getId(), dto.getScrapQty(),
-//                    StockInUnQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode(), productionProductMain.getId());
-//        }
         return true;
     }
 
@@ -605,7 +598,7 @@
         productionOrderRoutingOperationParamMapper.delete(
                 Wrappers.<ProductionOrderRoutingOperationParam>lambdaQuery()
                         .eq(ProductionOrderRoutingOperationParam::getProductionProductMainId, productionProductMain.getId()));
-        stockUtils.deleteStockInRecord(productionProductMain.getId(), StockInUnQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode());
+        stockUtils.deleteStockInRecord(productionProductMain.getId(), StockInQualifiedRecordTypeEnum.PRODUCTION_SCRAP.getCode());
         stockUtils.deleteStockInRecord(productionProductMain.getId(), StockInQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_IN.getCode());
         stockUtils.deleteStockOutRecord(productionProductMain.getId(), StockOutQualifiedRecordTypeEnum.PRODUCTION_REPORT_STOCK_OUT.getCode());
         productionProductMainMapper.deleteById(productionProductMain.getId());
diff --git a/src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java b/src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java
index c6f55b7..f3a5fdf 100644
--- a/src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java
+++ b/src/main/java/com/ruoyi/purchase/mapper/PurchaseReturnOrdersMapper.java
@@ -2,6 +2,8 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.account.bean.dto.PurchaseReturnDto;
+import com.ruoyi.account.bean.vo.PurchaseReturnVo;
 import com.ruoyi.purchase.dto.PurchaseReturnOrderDto;
 import com.ruoyi.purchase.pojo.PurchaseReturnOrders;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -23,4 +25,6 @@
     IPage<PurchaseReturnOrderHasAllInfoDto> listPage(Page page, @Param("params") PurchaseReturnOrderDto purchaseReturnOrder);
 
     PurchaseReturnOrderHasAllInfoDto getPurchaseReturnOrderHasAllInfoById(@Param("id") @NotNull Long id);
+
+    IPage<PurchaseReturnVo> listPageAccountPurchaseReturn(Page page, @Param("req") PurchaseReturnDto purchaseReturnDto);
 }
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
index 8c53500..86eb0ab 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityInspectServiceImpl.java
@@ -103,7 +103,11 @@
             // stockUtils.addStock(qualityInspect.getProductModelId(), qualityInspect.getQuantity(), StockInQualifiedRecordTypeEnum.QUALITYINSPECT_STOCK_IN.getCode(), qualityInspect.getId());
             //浠呮坊鍔犲叆搴撹褰�
             StockInventoryDto stockInventoryDto = new StockInventoryDto();
+            //濡傛灉鏄噰璐川妫�鍚堟牸鍏ュ簱閫夌敤CUSTOMIZATION_UNSTOCK_OUT,鍏朵綑鍚堟牸鍏ュ簱閫夌敤QUALITYINSPECT_STOCK_IN
             stockInventoryDto.setRecordType(String.valueOf(StockInQualifiedRecordTypeEnum.QUALITYINSPECT_STOCK_IN.getCode()));
+            if (ObjectUtils.isNotEmpty(qualityInspect.getPurchaseLedgerId())){
+                stockInventoryDto.setRecordType(String.valueOf(StockInQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_OUT.getCode()));
+            }
             stockInventoryDto.setRecordId(qualityInspect.getId());
             stockInventoryDto.setProductModelId(qualityInspect.getProductModelId());
             stockInventoryDto.setQualitity(qualityInspect.getQuantity());
diff --git a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
index 0296ef4..c82886e 100644
--- a/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
+++ b/src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
@@ -6,7 +6,6 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -82,7 +81,7 @@
                     break;
                 case "鎶ュ簾":
                     stockUtils.addUnStock(qualityInspect.getProductModelId(), unqualified.getQuantity(),
-                            StockInUnQualifiedRecordTypeEnum.DEFECTIVE_SCRAP.getCode(), unqualified.getId());
+                            StockInQualifiedRecordTypeEnum.DEFECTIVE_SCRAP.getCode(), unqualified.getId());
                     break;
                 case "璁╂鏀捐":
                     stockUtils.addStock(qualityInspect.getProductModelId(), unqualified.getQuantity(),
@@ -96,7 +95,7 @@
             switch (qualityUnqualified.getDealResult()) {
                 case "鎶ュ簾":
                     stockUtils.addUnStock(modelId, unqualified.getQuantity(),
-                            StockInUnQualifiedRecordTypeEnum.DEFECTIVE_SCRAP.getCode(), unqualified.getId());
+                            StockInQualifiedRecordTypeEnum.DEFECTIVE_SCRAP.getCode(), unqualified.getId());
                     break;
                 case "璁╂鏀捐":
                     stockUtils.addStock(modelId, unqualified.getQuantity(),
diff --git a/src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java b/src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java
index 57b142d..7f3c701 100644
--- a/src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java
+++ b/src/main/java/com/ruoyi/sales/mapper/ShippingInfoMapper.java
@@ -3,8 +3,6 @@
 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.account.bean.dto.SalesOutboundDto;
-import com.ruoyi.account.bean.vo.SalesOutboundVo;
 import com.ruoyi.sales.dto.SalesLedgerProductDto;
 import com.ruoyi.sales.dto.ShippingInfoDto;
 import com.ruoyi.sales.pojo.ShippingInfo;
@@ -24,6 +22,4 @@
     List<SalesLedgerProductDto> getReturnManagementDtoById(@Param("shippingId")Long shippingId);
 
     List<ShippingInfo> getShippingInfoByCustomerName(String customerName);
-
-    IPage<SalesOutboundVo> listPageByOutbound(Page page, @Param("req") SalesOutboundDto salesOutboundDto);
 }
diff --git a/src/main/java/com/ruoyi/stock/controller/StockUninventoryController.java b/src/main/java/com/ruoyi/stock/controller/StockUninventoryController.java
index 477a68d..3a002e0 100644
--- a/src/main/java/com/ruoyi/stock/controller/StockUninventoryController.java
+++ b/src/main/java/com/ruoyi/stock/controller/StockUninventoryController.java
@@ -2,8 +2,8 @@
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockOutUnQualifiedRecordTypeEnum;
+import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
+import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
 import com.ruoyi.framework.web.domain.R;
 import com.ruoyi.stock.dto.StockInventoryDto;
 import com.ruoyi.stock.dto.StockUninventoryDto;
@@ -37,7 +37,7 @@
     @PostMapping("/addstockUninventory")
     @Operation(summary = "鏂板搴撳瓨")
     public R addstockUninventory(@RequestBody StockUninventoryDto stockUninventoryDto) {
-        stockUninventoryDto.setRecordType(String.valueOf(StockInUnQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode()));
+        stockUninventoryDto.setRecordType(String.valueOf(StockInQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode()));
         stockUninventoryDto.setRecordId(0L);
         return R.ok(stockUninventoryService.addStockUninventory(stockUninventoryDto));
     }
@@ -46,7 +46,7 @@
     @PostMapping("/subtractstockUninventory")
     @Operation(summary = "鎵e噺搴撳瓨")
     public R subtractstockUninventory(@RequestBody StockUninventoryDto stockUninventoryDto) {
-        stockUninventoryDto.setRecordType(String.valueOf(StockOutUnQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_OUT.getCode()));
+        stockUninventoryDto.setRecordType(String.valueOf(StockOutQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_OUT.getCode()));
         stockUninventoryDto.setRecordId(0L);
         return R.ok(stockUninventoryService.subtractStockUninventory(stockUninventoryDto));
     }
@@ -54,7 +54,7 @@
     @PostMapping("/addStockInRecordOnly")
     @Operation(summary = "鏂板鍏ュ簱璁板綍锛堜粎鍒涘缓璁板綍锛屼笉璋冩暣搴撳瓨锛�")
     public R addStockInRecordOnly(@RequestBody StockUninventoryDto stockUninventoryDto) {
-        stockUninventoryDto.setRecordType(String.valueOf(StockInUnQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode()));
+        stockUninventoryDto.setRecordType(String.valueOf(StockInQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode()));
         stockUninventoryDto.setRecordId(0L);
         return R.ok(stockUninventoryService.addStockInRecordOnly(stockUninventoryDto));
     }
@@ -62,7 +62,7 @@
     @PostMapping("/addStockOutRecordOnly")
     @Operation(summary = "鏂板鍑哄簱璁板綍锛堜粎鍒涘缓璁板綍锛屼笉璋冩暣搴撳瓨锛�")
     public R addStockOutRecordOnly(@RequestBody StockUninventoryDto stockUninventoryDto) {
-        stockUninventoryDto.setRecordType(String.valueOf(StockOutUnQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_OUT.getCode()));
+        stockUninventoryDto.setRecordType(String.valueOf(StockOutQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_OUT.getCode()));
         stockUninventoryDto.setRecordId(0L);
         return R.ok(stockUninventoryService.addStockOutRecordOnly(stockUninventoryDto));
     }
diff --git a/src/main/java/com/ruoyi/stock/mapper/StockInRecordMapper.java b/src/main/java/com/ruoyi/stock/mapper/StockInRecordMapper.java
index afc30ae..4dd64c7 100644
--- a/src/main/java/com/ruoyi/stock/mapper/StockInRecordMapper.java
+++ b/src/main/java/com/ruoyi/stock/mapper/StockInRecordMapper.java
@@ -3,6 +3,8 @@
 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.account.bean.dto.PurchaseInboundDto;
+import com.ruoyi.account.bean.vo.PurchaseInboundVo;
 import com.ruoyi.stock.dto.StockInRecordDto;
 import com.ruoyi.stock.execl.StockInRecordExportData;
 import com.ruoyi.stock.pojo.StockInRecord;
@@ -14,4 +16,6 @@
     IPage<StockInRecordDto> listPage(Page page, @Param("params") StockInRecordDto stockInRecordDto);
 
     List<StockInRecordExportData> listStockInRecordExportData(@Param("params") StockInRecordDto stockInRecordDto);
+
+    IPage<PurchaseInboundVo> listPageAccountPurchase(Page page, @Param("req") PurchaseInboundDto purchaseInboundDto);
 }
diff --git a/src/main/java/com/ruoyi/stock/mapper/StockOutRecordMapper.java b/src/main/java/com/ruoyi/stock/mapper/StockOutRecordMapper.java
index d180ef9..eb05e8c 100644
--- a/src/main/java/com/ruoyi/stock/mapper/StockOutRecordMapper.java
+++ b/src/main/java/com/ruoyi/stock/mapper/StockOutRecordMapper.java
@@ -3,6 +3,8 @@
 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.account.bean.dto.SalesOutboundDto;
+import com.ruoyi.account.bean.vo.SalesOutboundVo;
 import com.ruoyi.stock.dto.StockOutRecordDto;
 import com.ruoyi.stock.execl.StockOutRecordExportData;
 import com.ruoyi.stock.pojo.StockOutRecord;
@@ -25,4 +27,5 @@
 
     List<StockOutRecordExportData> listStockOutRecordExportData(@Param("params") StockOutRecordDto stockOutRecordDto);
 
+    IPage<SalesOutboundVo> listPageAccountSales(Page page, @Param("req") SalesOutboundDto salesOutboundDto);
 }
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
index f84a9d8..ab34aa8 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInRecordServiceImpl.java
@@ -5,8 +5,8 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.enums.ReviewStatusEnum;
+import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
 import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.EnumUtil;
 import com.ruoyi.common.utils.OrderUtils;
@@ -24,12 +24,12 @@
 import com.ruoyi.stock.pojo.StockInventory;
 import com.ruoyi.stock.pojo.StockUninventory;
 import com.ruoyi.stock.service.StockInRecordService;
+import jakarta.servlet.http.HttpServletResponse;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
-import jakarta.servlet.http.HttpServletResponse;
 import java.util.List;
 
 @Service
@@ -123,7 +123,7 @@
             if (stockInRecordExportData.getType().equals("0")) {
                 stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockOutQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
             }else {
-                stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockInUnQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
+                stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockInQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
             }
         }
         ExcelUtil<StockInRecordExportData> util = new ExcelUtil<>(StockInRecordExportData.class);
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
index d712518..3808916 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockInventoryServiceImpl.java
@@ -10,7 +10,6 @@
 import com.ruoyi.basic.mapper.ProductModelMapper;
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -345,7 +344,7 @@
                     if (dto.getUnQualifiedQuantity() != null && dto.getUnQualifiedQuantity().compareTo(BigDecimal.ZERO) > 0) {
                         StockUninventoryDto stockUninventoryDto = new StockUninventoryDto();
                         stockUninventoryDto.setRecordId(0L);
-                        stockUninventoryDto.setRecordType(StockInUnQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode());
+                        stockUninventoryDto.setRecordType(StockInQualifiedRecordTypeEnum.CUSTOMIZATION_UNSTOCK_IN.getCode());
                         stockUninventoryDto.setQualitity(dto.getUnQualifiedQuantity());
                         stockUninventoryDto.setRemark(dto.getRemark());
 
diff --git a/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java b/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
index cead7fc..c968af6 100644
--- a/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
+++ b/src/main/java/com/ruoyi/stock/service/impl/StockOutRecordServiceImpl.java
@@ -5,8 +5,8 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.common.enums.ReviewStatusEnum;
+import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum;
 import com.ruoyi.common.enums.StockOutQualifiedRecordTypeEnum;
-import com.ruoyi.common.enums.StockInUnQualifiedRecordTypeEnum;
 import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.common.utils.EnumUtil;
 import com.ruoyi.common.utils.OrderUtils;
@@ -25,14 +25,12 @@
 import com.ruoyi.stock.pojo.StockOutRecord;
 import com.ruoyi.stock.pojo.StockUninventory;
 import com.ruoyi.stock.service.StockOutRecordService;
-import lombok.AllArgsConstructor;
+import jakarta.servlet.http.HttpServletResponse;
 import lombok.RequiredArgsConstructor;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
-import jakarta.servlet.http.HttpServletResponse;
 import java.util.List;
 
 /**
@@ -129,7 +127,7 @@
             if (stockInRecordExportData.getType().equals("0")) {
                 stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockOutQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
             }else {
-                stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockInUnQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
+                stockInRecordExportData.setRecordType(EnumUtil.fromCode(StockInQualifiedRecordTypeEnum.class, Integer.parseInt(stockInRecordExportData.getRecordType())).getValue());
             }
         }
         ExcelUtil<StockOutRecordExportData> util = new ExcelUtil<>(StockOutRecordExportData.class);
diff --git a/src/main/resources/mapper/oA/OaProjectMapper.xml b/src/main/resources/mapper/oA/OaProjectMapper.xml
deleted file mode 100644
index c245a39..0000000
--- a/src/main/resources/mapper/oA/OaProjectMapper.xml
+++ /dev/null
@@ -1,32 +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.oA.mapper.OaProjectMapper">
-
-
-    <select id="listPage" resultType="com.ruoyi.oA.dto.OaProjectDto">
-        select op.*,su.nick_name as managerName from oa_project op
-        LEFT JOIN sys_user su ON op.manager_id=su.user_id
-        <where>
-        1=1
-            <if test="req.projectName != null and req.projectName != ''">
-                and op.project_name like concat('%',#{req.projectName},'%')
-            </if>
-            <if test="req.managerName != null and req.managerName != ''">
-                and su.nick_name like concat('%',#{req.managerName},'%')
-            </if>
-            <if test="req.status != null and req.status != ''">
-                and op.status = #{req.status}
-            </if>
-        </where>
-    </select>
-    <select id="selectByIds" resultType="com.ruoyi.oA.dto.OaProjectDto">
-        select op.*,su.nick_name as managerName from oa_project op
-        LEFT JOIN sys_user su ON op.manager_id=su.user_id
-        where op.project_id in
-        <foreach collection="ids" item="id" open="(" close=")" separator=",">
-            #{id}
-        </foreach>
-    </select>
-</mapper>
diff --git a/src/main/resources/mapper/oA/OaProjectPhaseMapper.xml b/src/main/resources/mapper/oA/OaProjectPhaseMapper.xml
deleted file mode 100644
index 2f52fe9..0000000
--- a/src/main/resources/mapper/oA/OaProjectPhaseMapper.xml
+++ /dev/null
@@ -1,27 +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.oA.mapper.OaProjectPhaseMapper">
-
-    <resultMap id="BaseResultMap" type="com.ruoyi.oA.pojo.OaProjectPhase">
-            <id property="phaseId" column="phase_id" jdbcType="INTEGER"/>
-            <result property="phaseName" column="phase_name" jdbcType="VARCHAR"/>
-            <result property="oaProjectId" column="oa_project_id" jdbcType="INTEGER"/>
-            <result property="startDate" column="start_date" jdbcType="TIMESTAMP"/>
-            <result property="endDate" column="end_date" jdbcType="TIMESTAMP"/>
-            <result property="status" column="status" jdbcType="VARCHAR"/>
-            <result property="createUser" column="create_user" jdbcType="BIGINT"/>
-            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
-            <result property="updateUser" column="update_user" jdbcType="BIGINT"/>
-            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
-            <result property="tenantId" column="tenant_id" jdbcType="BIGINT"/>
-    </resultMap>
-
-    <sql id="Base_Column_List">
-        phase_id,phase_name,oa_project_id,
-        start_date,end_date,status,
-        create_user,create_time,update_user,
-        update_time,tenant_id
-    </sql>
-</mapper>
diff --git a/src/main/resources/mapper/oA/OaProjectPhaseTaskMapper.xml b/src/main/resources/mapper/oA/OaProjectPhaseTaskMapper.xml
deleted file mode 100644
index cc029d9..0000000
--- a/src/main/resources/mapper/oA/OaProjectPhaseTaskMapper.xml
+++ /dev/null
@@ -1,34 +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.oA.mapper.OaProjectPhaseTaskMapper">
-
-    <resultMap id="BaseResultMap" type="com.ruoyi.oA.pojo.OaProjectPhaseTask">
-            <id property="taskId" column="task_id" jdbcType="INTEGER"/>
-            <result property="taskName" column="task_name" jdbcType="VARCHAR"/>
-            <result property="phaseId" column="phase_id" jdbcType="INTEGER"/>
-            <result property="startDate" column="start_date" jdbcType="TIMESTAMP"/>
-            <result property="endDate" column="end_date" jdbcType="TIMESTAMP"/>
-            <result property="targetDate" column="target_date" jdbcType="TIMESTAMP"/>
-            <result property="targetValue" column="target_value" jdbcType="INTEGER"/>
-            <result property="currentValue" column="current_value" jdbcType="INTEGER"/>
-            <result property="unit" column="unit" jdbcType="VARCHAR"/>
-            <result property="status" column="status" jdbcType="VARCHAR"/>
-            <result property="completionRate" column="completion_rate" jdbcType="INTEGER"/>
-            <result property="createUser" column="create_user" jdbcType="BIGINT"/>
-            <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
-            <result property="updateUser" column="update_user" jdbcType="BIGINT"/>
-            <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
-            <result property="tenantId" column="tenant_id" jdbcType="BIGINT"/>
-    </resultMap>
-
-    <sql id="Base_Column_List">
-        task_id,task_name,phase_id,
-        start_date,end_date,target_date,
-        target_value,current_value,unit,
-        status,completion_rate,create_user,
-        create_time,update_user,update_time,
-        tenant_id
-    </sql>
-</mapper>
diff --git a/src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml b/src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml
index 77435ad..dca2c47 100644
--- a/src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml
+++ b/src/main/resources/mapper/purchase/PurchaseReturnOrdersMapper.xml
@@ -53,4 +53,29 @@
         <include refid="getPurchaseReturnOrderHasAllInfoFormAndColumn"/>
         where pro.id = #{id}
     </select>
+    <select id="listPageAccountPurchaseReturn"
+            resultType="com.ruoyi.account.bean.vo.PurchaseReturnVo">
+         select pro.id,
+                pro.no returnNo,
+                sm.supplier_name,
+
+                pro.prepared_at,
+                pro.total_amount,
+                CASE pro.return_type WHEN 0 THEN '閫�璐ч��娆�' WHEN 1 THEN '鎷掓敹' END AS returnType,
+                pl.purchase_contract_number
+        from purchase_return_orders pro
+                 left join supplier_manage sm on pro.supplier_id = sm.id
+                 left join purchase_ledger pl on pro.purchase_ledger_id = pl.id
+        where rm.status=1
+            <if test="req.returnNo != null and req.returnNo != ''">
+                and pro.no like concat('%',#{req.returnNo},'%')
+            </if>
+            <if test="req.supplierName != null and req.supplierName != ''">
+                and sm.supplier_name like concat('%',#{req.supplierName},'%')
+            </if>
+            <if test="req.startDate != null and req.endDate != null">
+                AND DATE_FORMAT(pro.prepared_at, '%Y-%m-%d') BETWEEN #{startDate} AND #{endDate}
+            </if>
+         order by pro.id DESC
+    </select>
 </mapper>
diff --git a/src/main/resources/mapper/sales/ShippingInfoMapper.xml b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
index cd7dc3e..048bb23 100644
--- a/src/main/resources/mapper/sales/ShippingInfoMapper.xml
+++ b/src/main/resources/mapper/sales/ShippingInfoMapper.xml
@@ -87,33 +87,4 @@
         left join sales_ledger sl on si.sales_ledger_id = sl.id
         where si.status = '宸插彂璐�' and sl.customer_name = #{customerName}
     </select>
-    <select id="listPageByOutbound" resultType="com.ruoyi.account.bean.vo.SalesOutboundVo">
-         SELECT
-        sor.id,
-        sor.outbound_batches,
-        sl.customer_name,
-        s.shipping_date,
-        p.product_name,
-        slp.specification_model,
-        slp.stock_out_num,
-        s.shipping_no,
-        sl.sales_contract_no
-        FROM shipping_info s
-        LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
-        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id and slp.type = 1
-        left join product_model pm on slp.product_model_id = pm.id
-        left join product p on pm.product_id = p.id
-        left join stock_out_record sor on sor.record_id = s.id and sor.record_type='13'
-        WHERE s.status='宸插彂璐�'
-        <if test="req.outboundBatches != null and req.outboundBatches != ''">
-            AND sor.outbound_batches LIKE CONCAT('%',#{req.outboundBatches},'%')
-        </if>
-        <if test="req.customerName != null and req.customerName != ''">
-            AND sl.customer_name LIKE CONCAT('%',#{req.customerName},'%')
-        </if>
-        <if test="req.startDate != null and req.endDate != null">
-            AND s.shipping_date BETWEEN #{startDate} AND #{endDate}
-        </if>
-        order by sor.id DESC
-    </select>
 </mapper>
diff --git a/src/main/resources/mapper/stock/StockInRecordMapper.xml b/src/main/resources/mapper/stock/StockInRecordMapper.xml
index 62f1d19..ec25d21 100644
--- a/src/main/resources/mapper/stock/StockInRecordMapper.xml
+++ b/src/main/resources/mapper/stock/StockInRecordMapper.xml
@@ -70,4 +70,38 @@
         </where>
         order by sir.id desc
     </select>
+    <select id="listPageAccountPurchase" resultType="com.ruoyi.account.bean.vo.PurchaseInboundVo">
+        SELECT
+            sir.id,
+            sir.inbound_batches,
+            pl.supplier_name,
+            DATE(sir.create_time) AS inboundDate,
+            p.product_name,
+            slp.specification_model,
+            sor.stock_in_num * slp.tax_inclusive_unit_price AS InboundAmount,
+            pl.purchase_contract_number
+            FROM stock_in_record sir
+            -- 10 绫诲瀷鎵嶅叧鑱旇川妫�琛�
+            LEFT JOIN quality_inspect qi ON sir.record_type = 10 AND sir.record_id = qi.id
+            -- 鍔ㄦ�佸叧鑱旈噰璐紙鑷姩閫傞厤 7 鍜� 10锛�
+            LEFT JOIN purchase_ledger pl
+            ON pl.id = IF(sir.record_type = 7, sir.record_id, qi.purchase_ledger_id)
+            -- 浜у搧鍏宠仈涓嶅姩
+            LEFT JOIN sales_ledger_product slp ON slp.type = 2 AND pl.id = slp.product_id
+            LEFT JOIN product_model pm ON slp.product_model_id = pm.id
+            LEFT JOIN product p ON pm.product_id = p.id
+            -- 鏉′欢
+        WHERE sir.approval_status = 1
+        AND sir.record_type IN ('7','10')
+        <if test="req.inboundBatches != null and req.inboundBatches != ''">
+            AND sir.inbound_batches LIKE CONCAT('%',#{req.inboundBatches},'%')
+        </if>
+        <if test="req.supplierName != null and req.supplierName != ''">
+            AND pl.supplier_name LIKE CONCAT('%',#{req.supplierName},'%')
+        </if>
+        <if test="req.startDate != null and req.endDate != null">
+            AND DATE(sir.create_time) BETWEEN #{startDate} AND #{endDate}
+        </if>
+        order by sir.id DESC
+    </select>
 </mapper>
diff --git a/src/main/resources/mapper/stock/StockOutRecordMapper.xml b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
index 8615294..b4619d8 100644
--- a/src/main/resources/mapper/stock/StockOutRecordMapper.xml
+++ b/src/main/resources/mapper/stock/StockOutRecordMapper.xml
@@ -86,4 +86,33 @@
         order by sor.id desc
     </select>
 
+    <select id="listPageAccountSales" resultType="com.ruoyi.account.bean.vo.SalesOutboundVo">
+    SELECT
+        sor.id,
+        sor.outbound_batches,
+        sl.customer_name,
+        s.shipping_date,
+        p.product_name,
+        slp.specification_model,
+        sor.stock_out_num * slp.tax_inclusive_unit_price as outboundAmount,
+        s.shipping_no,
+        sl.sales_contract_no
+        FROM stock_out_record sor
+        left join shipping_info s on sor.record_id = s.id
+        LEFT JOIN sales_ledger sl ON s.sales_ledger_id = sl.id
+        LEFT JOIN sales_ledger_product slp ON s.sales_ledger_product_id = slp.id and slp.type = 1
+        left join product_model pm on slp.product_model_id = pm.id
+        left join product p on pm.product_id = p.id
+        WHERE s.status='宸插彂璐�' and sor.record_type='13'
+        <if test="req.outboundBatches != null and req.outboundBatches != ''">
+            AND sor.outbound_batches LIKE CONCAT('%',#{req.outboundBatches},'%')
+        </if>
+        <if test="req.customerName != null and req.customerName != ''">
+            AND sl.customer_name LIKE CONCAT('%',#{req.customerName},'%')
+        </if>
+        <if test="req.startDate != null and req.endDate != null">
+            AND s.shipping_date BETWEEN #{startDate} AND #{endDate}
+        </if>
+        order by sor.id DESC
+    </select>
 </mapper>

--
Gitblit v1.9.3