From 24ea35cb1a3a43dc137d15009cbbcb0904759c85 Mon Sep 17 00:00:00 2001
From: Demo <Demo@DESKTOP-CPA90BF>
Date: 星期六, 16 三月 2024 16:57:08 +0800
Subject: [PATCH] 修改BUG问题
---
Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs | 2
HTML/views/SOSetting/ExportAllot.html | 46 ++++++----
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 74 ++++++++++++------
Wms/WMS.BLL/Logic/AllotSku.cs | 54 +++++++++++++
Wms/Model/ModelDto/DataDto/StockDetailDto.cs | 5 +
Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs | 8 ++
6 files changed, 141 insertions(+), 48 deletions(-)
diff --git a/HTML/views/SOSetting/ExportAllot.html b/HTML/views/SOSetting/ExportAllot.html
index 7651448..611e0be 100644
--- a/HTML/views/SOSetting/ExportAllot.html
+++ b/HTML/views/SOSetting/ExportAllot.html
@@ -829,25 +829,33 @@
console.log(obj);
if (obj.event === 'del') {
layer.confirm('纭畾鎾ら攢閫変腑鐨勫垎閰嶄俊鎭悧锛�', function (index) {
- var param = {
- Id: parseInt(obj.data.Id)
- };
- sendData(IP + "/BllSo/DelExportAllot", param, 'post', function (res) {
- console.log(res);
- if (res.code == 0) { //鎴愬姛
- layer.msg(res.msg, {
- icon: 1,
- time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
- }, function () {
- refreshTable();
- });
- } else { //涓嶆垚鍔�
- layer.msg(res.msg, {
- icon: 2,
- time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
- }, function () { });
- }
- });
+ if (doing) {
+ doing = false;
+
+ var param = {
+ Id: parseInt(obj.data.Id)
+ };
+ sendData(IP + "/BllSo/DelExportAllot", param, 'post', function (res) {
+ console.log(res);
+ if (res.code == 0) { //鎴愬姛
+ layer.msg(res.msg, {
+ icon: 1,
+ time: 1000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () {
+ refreshTable();
+ doing = true;
+ });
+ } else { //涓嶆垚鍔�
+ layer.msg(res.msg, {
+ icon: 2,
+ time: 2000 //2绉掑叧闂紙濡傛灉涓嶉厤缃紝榛樿鏄�3绉掞級
+ }, function () {
+ doing = true;
+ });
+ }
+ });
+ }
+
});
}
});
diff --git a/Wms/Model/ModelDto/DataDto/StockDetailDto.cs b/Wms/Model/ModelDto/DataDto/StockDetailDto.cs
index e2b0d12..fff1025 100644
--- a/Wms/Model/ModelDto/DataDto/StockDetailDto.cs
+++ b/Wms/Model/ModelDto/DataDto/StockDetailDto.cs
@@ -199,5 +199,10 @@
/// Nullable:True
/// </summary>
public string Demo { get; set; }
+
+ /// <summary>
+ /// 鍌ㄤ綅娣卞害
+ /// </summary>
+ public int Dept { get; set; }
}
}
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 9b74c1f..8a69d15 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -768,7 +768,7 @@
SupplierLot = supplierLot,
InspectMark = "0",
BitBoxMark = bNum > boxQty ? "1":"0",
- InspectStatus = "",
+ InspectStatus = "0",
ProductionTime = DateTime.Parse(productionTime),
StoreTime = DateTime.Parse(storeTime),
diff --git a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
index c340e8b..6d8448d 100644
--- a/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
+++ b/Wms/WMS.BLL/BllPdaServer/PdaSoServer.cs
@@ -469,6 +469,7 @@
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += pickQty;
allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ allot.UpdateTime = DateTime.Now;
Db.Updateable(allot).ExecuteCommand();
//鍒犻櫎搴撳瓨鏄庣粏
Db.Deleteable(stockDetail).ExecuteCommand();
@@ -642,6 +643,7 @@
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += pickQty;
allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ allot.UpdateTime = DateTime.Now;
if (allot.Status == "5")
{
//鍒ゆ柇璇ユ墭鐩樻槸鍚﹁繕瀛樺湪鐗╂枡 瀛樺湪鏀逛负寰呭洖搴� 寰呭洖搴撳畬鎴愬悗鏀逛负宸插畬鎴�
@@ -841,6 +843,7 @@
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += int.Parse(PickQty);
allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ allot.UpdateTime = DateTime.Now;
Db.Updateable(allot).ExecuteCommand();
int isDel = 0;
@@ -1503,6 +1506,7 @@
OutMode = "",//鍑哄簱鍙�
CreateUser = userId,
+ UpdateTime = DateTime.Now
};
var fp = Db.Insertable(addAllot).ExecuteReturnEntity();
@@ -1887,6 +1891,7 @@
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += pickQty;
allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+ allot.UpdateTime = DateTime.Now;
if (allot.Status == "5")
{
//鍒ゆ柇璇ユ墭鐩樻槸鍚﹁繕瀛樺湪鐗╂枡 瀛樺湪鏀逛负寰呭洖搴� 寰呭洖搴撳畬鎴愬悗鏀逛负宸插畬鎴�
@@ -2108,6 +2113,7 @@
OutMode = "",//鍑哄簱鍙�
CreateUser = userId,
+ UpdateTime = DateTime.Now
};
var fp = Db.Insertable(addAllot).ExecuteReturnEntity();
@@ -2351,6 +2357,8 @@
//淇敼鍑哄簱鍒嗛厤淇℃伅
allot.CompleteQty += int.Parse(PickQty);
allot.Status = allot.Qty == allot.CompleteQty ? "5" : "3";
+
+ allot.UpdateTime = DateTime.Now;
Db.Updateable(allot).ExecuteCommand();
int isDel = 0;
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index e49379c..6cf26c6 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -392,6 +392,15 @@
{
throw new Exception("鏈煡鍒板搴斿嚭搴撶被鍨嬬殑鐗╂枡");
}
+
+ if (type!="8")
+ {
+ skuList = skuList.Where(m => m != "100088").ToList();
+ }
+ else
+ {
+ skuList = skuList.Where(m => m == "100088").ToList();
+ }
//skuList = sku.Select(m => m.SkuNo).ToList();
var stockRst = new StockServer();
var stockDetailRst = new StockDetailServer();
@@ -3013,6 +3022,8 @@
//搴撳瓨鏄庣粏
var stockList = Db.Queryable<DataStockDetail>().Where(a => stockIds.Contains(a.Id)).ToList();
+ //鍒嗛厤淇℃伅
+ var allots = Db.Queryable<BllExportAllot>().Where(m => m.IsDel == "0" && m.SODetailNo == detail.Id && m.Status == "0").ToList();
//搴撳瓨鎬昏〃
//var stockz = Db.Queryable<DataStock>().First(d => d.IsDel == "0" && d.SkuNo == detail.SkuNo && d.LotNo == detail.LotNo);
@@ -3030,33 +3041,44 @@
{
throw new Exception("鎿嶄綔澶辫触锛屽嚭搴撴暟閲忚秴鍑哄簱瀛樻暟閲忥紒");
}
- //娣诲姞鍒嗛厤琛ㄤ俊鎭�
- var allot = new BllExportAllot
- {
- SONo = notice.SONo,
- WaveNo = "",
- SODetailNo = detail.Id,
- StockId = st.StockId,
- LotNo = stock.LotNo,
- LotText = stock.LotText,
- SupplierLot = stock.SupplierLot,
- SkuNo = stock.SkuNo,
- SkuName = stock.SkuName,
- Standard = stock.Standard,
- PalletNo = stock.PalletNo,
- IsBale = stock.IsBale,
- IsBelt = stock.IsBelt,
- Qty = st.Qty,
- CompleteQty = 0,
- Status = "0",
- LogisticsId = notice.LogisticsId,
- IsAdvance = "0",
- OutMode = "",//鍑哄簱鍙�
- CreateUser = userId,
- CreateTime = DateTime.Now
- };
- allotList.Add(allot);
+ var bl = allots.FirstOrDefault(m => m.StockId == st.StockId);
+ if (bl == null)
+ {
+ //娣诲姞鍒嗛厤琛ㄤ俊鎭�
+ var allot = new BllExportAllot
+ {
+ SONo = notice.SONo,
+ WaveNo = "",
+ SODetailNo = detail.Id,
+ StockId = st.StockId,
+ LotNo = stock.LotNo,
+ LotText = stock.LotText,
+ SupplierLot = stock.SupplierLot,
+ SkuNo = stock.SkuNo,
+ SkuName = stock.SkuName,
+ Standard = stock.Standard,
+ PalletNo = stock.PalletNo,
+ IsBale = stock.IsBale,
+ IsBelt = stock.IsBelt,
+ Qty = st.Qty,
+ CompleteQty = 0,
+ Status = "0",
+ LogisticsId = notice.LogisticsId,
+ IsAdvance = "0",
+ OutMode = "",//鍑哄簱鍙�
+
+ CreateUser = userId,
+ CreateTime = DateTime.Now
+ };
+ allotList.Add(allot);
+ }
+ else
+ {
+ bl.Qty += st.Qty;
+ Db.Updateable(bl).ExecuteCommand();
+ }
+
//搴撳瓨鏄庣粏
stock.LockQty += st.Qty;
stock.Status = stock.LockQty == stock.Qty ? "2" : "1";
diff --git a/Wms/WMS.BLL/Logic/AllotSku.cs b/Wms/WMS.BLL/Logic/AllotSku.cs
index 3b600fd..37dc98c 100644
--- a/Wms/WMS.BLL/Logic/AllotSku.cs
+++ b/Wms/WMS.BLL/Logic/AllotSku.cs
@@ -2,6 +2,8 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
+using Model.ModelDto.DataDto;
+using SqlSugar;
using WMS.Entity.Context;
using WMS.Entity.DataEntity;
using WMS.Entity.SysEntity;
@@ -54,8 +56,10 @@
decimal qty = 0; //鍒嗛厤鐨勬�绘暟閲�
var ztNum = needQty / fullPalletQty;//闇�瑕佹暣鎵樻暟
- var zps = palletList.Where(s => s.Qty >= fullPalletQty).ToList();//鏁存墭
- var sps = palletList.Where(s => s.Qty < fullPalletQty).ToList();//鏁f墭(鏈夊彲鑳芥槸琚攣瀹氫簡鏁伴噺鐨�)
+ var list = GetDataListOrderByDept(palletList);
+
+ var zps = list.Where(s => s.Qty >= fullPalletQty).ToList();//鏁存墭
+ var sps = list.Where(s => s.Qty < fullPalletQty).ToList();//鏁f墭(鏈夊彲鑳芥槸琚攣瀹氫簡鏁伴噺鐨�)
if (allotSet == 0)//浼樺厛闆剁锛堝嚭瀹岄浂绠卞嚭鏁寸锛�
{
@@ -218,6 +222,7 @@
//--------------------------------------------------------------------------------------------------------------
+ #region MyRegion
///// <summary>
///// 鑾峰緱鑳屽寘鎵块噸w锛岃璐х墿o锛屼粠绗琸浠跺悜鍚庤�冭檻锛屽緱鍒扮殑鏈�澶т环鍊�
@@ -260,5 +265,50 @@
// return a > b ? a : b;
//}
+ #endregion
+
+
+ private List<StockDetailDto> GetDataListOrderByDept(List<DataStockDetail> palletList)
+ {
+ try
+ {
+ var Db = DataContext.Db;
+ var data = new List<StockDetailDto>();
+
+ //搴撳鎵樼洏
+ var detail1 = palletList.Where(m => string.IsNullOrWhiteSpace(m.LocatNo)).ToList();
+ //骞冲簱鍐呮墭鐩�
+ var detail2 = palletList.Where(m => m.WareHouseNo == "W02").ToList();
+ //绔嬪簱鍐呮墭鐩�
+ var detail3 = palletList.Where(m => m.WareHouseNo == "W01").ToList();
+
+ var data1 = detail1.Select(m => new StockDetailDto()).ToList();
+ var data2 = detail2.Select(m => new StockDetailDto()).ToList();
+ var data3 = detail3.Select(m => new StockDetailDto()).ToList();
+ foreach (var item in data2)
+ {
+ var dept = item.LocatNo.Substring(5,2);
+
+ item.Dept = int.Parse(dept);
+ }
+ foreach (var item in data3)
+ {
+ var dept = item.LocatNo.Substring(6, 2);
+
+ item.Dept = int.Parse(dept);
+ }
+ data.AddRange(data1);
+ data.AddRange(data2.OrderBy(m => m.Dept).ToList());
+ data.AddRange(data3.OrderBy(m => m.Dept).ToList());
+
+ return data;
+ }
+ catch (Exception e)
+ {
+ throw new Exception(e.Message);
+ }
+ }
+
+
}
}
--
Gitblit v1.8.0