From 8344f9ceac01f8dd87c22efecf2b20bdcb6b0a56 Mon Sep 17 00:00:00 2001
From: yanjinhui <3306209981@qq.com>
Date: 星期五, 14 十一月 2025 23:27:49 +0800
Subject: [PATCH] 优化盘点以及人工入库进行校正
---
新建文件夹/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs | 20 ++++++++++++++++++++
1 files changed, 20 insertions(+), 0 deletions(-)
diff --git "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs" "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
index 4e97b26..3745236 100644
--- "a/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
+++ "b/\346\226\260\345\273\272\346\226\207\344\273\266\345\244\271/WIDESEA_WMSServer/WIDESEA_SquareCabinServices/CabinOrderServices.cs"
@@ -142,6 +142,15 @@
cabinOrderDetail.Order_Inqty += Inqty;
if (cabinOrderDetail.Order_Inqty > cabinOrderDetail.Order_qty)
return WebResponseContent.Instance.Error($"鍏ュ簱鏁伴噺涓嶅彲瓒呭嚭鍗曟嵁鏁伴噺");
+ //澶т欢搴撴暣绠辨牎楠�
+ if (warehouseCode == WarehouseEnum.澶т欢搴�.ObjToInt().ToString("000"))
+ {
+ var BoxRule = materielInfo.BoxQty;
+ if (BoxRule > 0 && Inqty % BoxRule != 0)
+ {
+ return WebResponseContent.Instance.Error($"澶т欢搴撳彧鍏佽瀛樻斁鏁寸璐х墿锛佸綋鍓嶅叆搴撴暟閲� {Convert.ToInt32(Inqty)} 涓嶆槸绠辫 {Convert.ToInt32(BoxRule)} 鐨勬暣鏁板��");
+ }
+ }
#region 澶勭悊鍏ュ簱鍗曪紝璐т綅锛屽簱瀛橈紝搴撳瓨鎵规淇℃伅
_unitOfWorkManage.BeginTran();
@@ -162,6 +171,7 @@
#region 璐т綅
var location = _locationInfoService.Repository.QueryFirst(x => x.LocationCode == LocationCode);
if (location == null) return WebResponseContent.Instance.Error($"璇风淮鎶よ揣浣嶇紪鍙枫�恵LocationCode}銆戠殑璐т綅淇℃伅");
+
//if (location.EnableStatus == EnableStatusEnum.Disable.ObjToInt())
// return WebResponseContent.Instance.Error($"璐т綅缂栧彿銆恵LocationCode}銆戝凡绂佺敤锛岃鎭㈠姝e父鍐嶄娇鐢�");
if (location.WarehouseCode != cabinOrderDetail.Reservoirarea)
@@ -321,6 +331,16 @@
{
string WareCodeMJ = WarehouseEnum.楹荤簿搴�.ObjToInt().ToString("000");
string WareCodeLD = WarehouseEnum.鍐峰喕搴�.ObjToInt().ToString("000");
+ #region 妫�鏌ユ槸鍚︽湁鏈畬鎴愮殑鐩樼偣浠诲姟
+ var dt_bath = _inventory_BatchServices.Repository.QueryData(x => order.details.Select(d => d.goods_no).Contains(x.MaterielCode)).ToList();
+ if (dt_bath.Count>=1)
+ {
+ foreach (var item in dt_bath)
+ {
+ if (item.SupplyQuantity > 0) throw new Exception($"鍏ュ簱鍗曘�恵order.order_no}銆戠墿鏂欑紪鍙枫�恵dt_bath[0].MaterielCode}銆戝瓨鍦ㄦ湭瀹屾垚鐨勭洏鐩堝叆搴撲换鍔★紝璇峰鐞嗗畬鎴愬悗鍐嶈繘琛屾甯稿叆搴撴搷浣�");
+ }
+ }
+ #endregion
List<Dt_CabinOrder> dt_CabinOrders = new List<Dt_CabinOrder>();
#region 鐗规畩鑽搧鍏ョ壒娈婂簱鎴�
if (order.warehouse_no == WareCodeMJ || order.warehouse_no == WareCodeLD)
--
Gitblit v1.9.3