From 4445ae4de0cd4f21709b843c52fef80c0037d782 Mon Sep 17 00:00:00 2001
From: gongchunyi <deslre0381@gmail.com>
Date: 星期六, 09 五月 2026 20:53:49 +0800
Subject: [PATCH] fix: 销售订单已发货但是产品状态显示错误问题
---
src/main/java/com/ruoyi/sales/pojo/SalesLedgerProduct.java | 86 +++++++++++++++++++++++++++++++++++++++++-
1 files changed, 83 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/ruoyi/sales/pojo/SalesLedgerProduct.java b/src/main/java/com/ruoyi/sales/pojo/SalesLedgerProduct.java
index f984e38..12b54a5 100644
--- a/src/main/java/com/ruoyi/sales/pojo/SalesLedgerProduct.java
+++ b/src/main/java/com/ruoyi/sales/pojo/SalesLedgerProduct.java
@@ -72,8 +72,43 @@
*/
@Excel(name = "鏁伴噺")
private BigDecimal quantity;
+
+ /**
+ * 宸插叆搴撴暟閲�
+ */
+ private BigDecimal stockedQuantity;
+
+ /**
+ * 宸插嚭搴撴暟閲�
+ */
+ private BigDecimal shippedQuantity;
+
@Excel(name = "鏈�浣庡簱瀛樻暟閲�")
private BigDecimal minStock;
+
+ /**
+ * 鍓╀綑寰呭叆搴撴暟閲忥紙璁㈠崟鏁伴噺 鈭� 鍚堟牸宸插叆搴撴暟閲忥紝澶氬叆鏃惰涓� 0锛�
+ */
+ @Excel(name = "鍓╀綑鏁伴噺")
+ @ApiModelProperty("鍓╀綑寰呭叆搴撴暟閲�(璁㈠崟鏁伴噺-鍚堟牸宸插叆搴�)")
+ private BigDecimal remainingQuantity;
+
+ /**
+ * 鍓╀綑鍑哄簱鏁伴噺
+ */
+ private BigDecimal remainingShippedQuantity;
+
+ /**
+ * 涓嶅悎鏍煎叆搴撴暟閲�
+ */
+ private BigDecimal unqualifiedStockedQuantity;
+
+
+ /**
+ * 涓嶅悎鏍煎嚭搴撴暟閲�
+ */
+ private BigDecimal unqualifiedShippedQuantity;
+
/**
* 绋庣巼
*/
@@ -213,10 +248,9 @@
@ApiModelProperty(value = "鍙戣揣鐘舵��")
private String shippingStatus = "寰呭彂璐�";
/**
- * 浜у搧鐘舵��
+ * 0-鏈嚭搴擄紝1-宸插嚭搴擄紝2-寰呭鏍革紝3-瀹℃牳瀹屾垚锛�4-瀹℃牳澶辫触锛堥攢鍞彴璐﹀垪琛ㄥ睍绀鸿鍒欒鍓嶇锛�
*/
-// @TableField(exist = false)
- @ApiModelProperty(value = "浜у搧鐘舵�侊細1-鍏呰冻")
+ @ApiModelProperty(value = "浜у搧鍑哄簱瀹℃壒鐘舵�侊細0-鏈嚭搴擄紝1-宸插嚭搴擄紝2-寰呭鏍革紝3-瀹℃牳瀹屾垚锛�4-瀹℃牳澶辫触")
private Integer approveStatus;
@ApiModelProperty(value = "寰呭洖娆炬�婚噾棰�")
@@ -233,6 +267,10 @@
@ApiModelProperty(value = "鏄惁璐ㄦ")
private Boolean isChecked;
+
+ @TableField(exist = false)
+ @ApiModelProperty("閲嶇")
+ private BigDecimal thickness;
@ApiModelProperty("瀹�")
private BigDecimal width;
@@ -270,12 +308,40 @@
@ApiModelProperty("缁撶畻鎬婚潰绉�(銕�)")
private BigDecimal settleTotalArea;
+ /**
+ * 鍛ㄩ暱
+ */
+ @ApiModelProperty("鍛ㄩ暱(cm)")
+ private BigDecimal perimeter;
+
+ /**
+ * 閲嶇
+ */
+ @ApiModelProperty("閲嶇")
+ private BigDecimal heavyBox;
+
+ /**
+ * 妤煎眰缂栧彿
+ */
+ @ApiModelProperty("妤煎眰缂栧彿")
+ private String floorCode;
+
+ /**
+ * 浜у搧鍏ュ簱鐘舵�侊細0-鏈叆搴擄紝1-閮ㄥ垎鍏ュ簱锛�2-宸插叆搴�
+ */
+ @ApiModelProperty("浜у搧鍏ュ簱鐘舵�侊細0-鏈叆搴擄紝1-閮ㄥ垎鍏ュ簱锛�2-宸插叆搴�")
+ private Integer productStockStatus;
+
@TableField(exist = false)
@ApiModelProperty("閿�鍞骇鍝侀澶栧姞宸�")
private List<SalesLedgerProductProcess> salesProductProcessList;
@TableField(exist = false)
private Integer hasSufficientStock;
+
+ @TableField(exist = false)
+ @ApiModelProperty("閲囪喘璁㈠崟鍏ュ簱鐘舵�侊細0-鏈叆搴擄紝1-閮ㄥ垎鍏ュ簱锛�2-宸插叆搴�")
+ private Integer purchaseStockStatus;
// 閫�璐ф暟閲�
@TableField(exist = false)
@@ -284,4 +350,18 @@
// 鍙敤鏁伴噺 quantity - returnQuality
@TableField(exist = false)
private BigDecimal availableQuality;
+
+
+ public void fillRemainingQuantity() {
+ BigDecimal q = this.quantity == null ? BigDecimal.ZERO : this.quantity;
+
+ BigDecimal stocked = this.stockedQuantity == null ? BigDecimal.ZERO : this.stockedQuantity;
+ BigDecimal remIn = q.subtract(stocked);
+ this.remainingQuantity = remIn.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : remIn;
+
+ BigDecimal shipped = this.shippedQuantity == null ? BigDecimal.ZERO : this.shippedQuantity;
+ // 鍓╀綑鍑哄簱鏁伴噺锛氫互鈥滃凡鍏ュ簱鏁伴噺鈥濅负鍩哄噯锛堝嚭搴撳彧鑳戒粠宸插叆搴撲腑鎵e噺锛�
+ BigDecimal remOut = stocked.subtract(shipped);
+ this.remainingShippedQuantity = remOut.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : remOut;
+ }
}
--
Gitblit v1.9.3