From 1310b47a24f0cc70f0128c820bd490dca6a1a921 Mon Sep 17 00:00:00 2001
From: yyk <2336760928@qq.com>
Date: 星期四, 22 八月 2024 14:08:03 +0800
Subject: [PATCH] Merge branch 'master' into yyk
---
Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs | 324 ++++++++++++++++++++++++++++++-----------------------
1 files changed, 182 insertions(+), 142 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
index ffc8278..4c0e2f0 100644
--- a/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/PalletBindServer.cs
@@ -97,9 +97,9 @@
throw new Exception("褰撳墠鐗╂枡鍙婃壒娆′笌鍗曟嵁鏃犲叧鑱旓紝璇锋牳瀹�!");
}
}
-
-
-
+
+
+
#endregion
@@ -113,13 +113,13 @@
{
throw new Exception("鏈煡璇㈠埌鎵樼洏淇℃伅锛岃鏍稿疄锛�");
}
-
-
-
+
+
+
#region 鍖呰
var package = Db.Queryable<SysPackag>().Where(m => m.IsDel == "0");
var sku = Db.Queryable<SysMaterials>().First(m => m.IsDel == "0" && m.SkuNo == model.SkuNo);
- SysPackag pack = null ;
+ SysPackag pack = null;
if (model.Type == "0")
{
pack = package.First(m => m.IsDel == "0" && m.PackagNo == detail.PackagNo); // liudl 鐢盨ku鍖呰缂栧彿鍙樻洿涓哄叆搴撳崟鏄庣粏鍖呰缂栧彿
@@ -128,7 +128,7 @@
{
pack = package.First(m => m.IsDel == "0" && m.PackagNo == sku.PackagNo); // liudl 鐢盨ku鍖呰缂栧彿鍙樻洿涓哄叆搴撳崟鏄庣粏鍖呰缂栧彿
}
-
+
var pNum = 0;//鎵樼洏鐗╁搧鏁伴噺
var bNum = 0;//绠辩爜鐗╁搧鏁伴噺
@@ -172,7 +172,7 @@
#region 楠岃瘉鏄惁鍏佽绔嬪簱鍚屾墭鐩樹笉鍚岀墿鏂欏叆搴撴垨鍚屾墭鐩樺悓鐗╂枡涓嶅悓鎵规鍏ュ簱
var list = model.Detail.GroupBy(m => new { m.SkuNo, m.LotNo }).ToList();
- if (list.Count>=2)
+ if (list.Count >= 2)
{
var funSetting = Db.Queryable<SysFunSetting>().First(a => a.IsDel == "0" && a.FunSetNo == "Fun045");
if (funSetting == null || funSetting.IsEnable == "OFF")
@@ -180,7 +180,7 @@
throw new Exception($"涓嶅厑璁哥珛搴撳悓鎵樼洏涓嶅悓鐗╂枡鍏ュ簱鎴栧悓鎵樼洏涓嶅悓鎵规鍏ュ簱锛�");
}
}
-
+
#endregion
//liudl && m.Status != "2" 缁勭洏鏃㈠叆搴撳畬鎴愭棤闇�鏍规嵁鎵樼洏鐘舵�佸垽鏂�
@@ -204,10 +204,10 @@
SupplierLot = model.SupplierLot,
//InspectMark = model.IsSample, //鏄惁鍙栨牱鎵樼洏 鍚庢湡涓氬姟寮�鍙戞椂 鎺ュ彛浼犲�奸渶娣诲姞瀵瑰簲瀛楁鍒ゆ柇
//SamplingQty = 0, //鍙栨牱鏁伴噺 鍚庢湡涓氬姟寮�鍙戞椂 鎺ュ彛浼犲�奸渶娣诲姞瀵瑰簲瀛楁鍒ゆ柇
- BitPalletMark = model.Qty == pNum ? "0": "1",
+ BitPalletMark = model.Qty == pNum ? "0" : "1",
IsBale = "0",
IsBelt = "0",
- CreateUser = userId,
+ CreateUser = userId,
};
if (bind.FullQty < bind.Qty)
@@ -242,7 +242,7 @@
sd1 = Db.Queryable<DataStockDetail>()
.First(m => m.IsDel == "0" && m.PalletNo == model.PalletNo);
}
-
+
var sdId1 = 0;
if (sd1 != null)
{
@@ -280,11 +280,11 @@
InspectMark = bind.InspectMark,
InspectStatus = sku.IsInspect,
BitPalletMark = bind.BitPalletMark,
- PackagNo = model.Type =="0"? detail.PackagNo : sku.PackagNo, //liudl 鐢眘ku鐨勫寘瑁呯紪鍙峰彉涓哄叆搴撳崟鏄庣粏鐨勫寘瑁呯紪鐮�
+ PackagNo = model.Type == "0" ? detail.PackagNo : sku.PackagNo, //liudl 鐢眘ku鐨勫寘瑁呯紪鍙峰彉涓哄叆搴撳崟鏄庣粏鐨勫寘瑁呯紪鐮�
IsBale = bind.IsBale,
IsBelt = bind.IsBelt,
- OwnerNo = model.Type == "0" ? notice.CustomerNo: null,//璐т富缂栫爜
- OwnerName = model.Type == "0" ? notice.CustomerName :null,//璐т富鍚嶇О
+ OwnerNo = model.Type == "0" ? notice.CustomerNo : null,//璐т富缂栫爜
+ OwnerName = model.Type == "0" ? notice.CustomerName : null,//璐т富鍚嶇О
IsDel = "0",
CreateUser = 0,
CreateTime = comTime
@@ -357,8 +357,8 @@
CreateUser = userId,
CreateTime = comTime,
};
-
- boxInfoList.Add(boxInfo);
+
+ boxInfoList.Add(boxInfo);
factQty += box.Qty;
#region 搴撳瓨绠辩爜鏄庣粏
@@ -399,10 +399,11 @@
}
else if (model.Type == "0")//鐗╂枡鎵�
{
- if (model.Detail.Count(m=>m.OrderCode != detail.OrderDetailCode)>0)
- {
- throw new Exception($"鎵樼洏缁戝畾鏄庣粏涓紝鍚湁绠辩爜鐢熶骇宸ュ崟涓嶄竴鑷�");
- }
+ // 浣跨敤鍦烘櫙涓嶆槑纭�
+ //if (model.Detail.Count(m => m.OrderCode != detail.OrderDetailCode) > 0)
+ //{
+ // throw new Exception($"鎵樼洏缁戝畾鏄庣粏涓紝鍚湁绠辩爜鐢熶骇宸ュ崟涓嶄竴鑷�");
+ //}
if (model.Detail.Count(m => m.SkuNo != model.SkuNo || m.LotNo != model.LotNo) > 0)
{
throw new Exception($"鎵樼洏缁戝畾鏄庣粏涓紝鍚湁绠辩爜鐗╂枡鎴栨壒娆′笉涓�鑷�");
@@ -486,19 +487,19 @@
throw new Exception($"缁戝畾澶辫触锛寋g.Key}绠辩爜缁戝畾鏁伴噺澶т簬璇ョ墿鍝佸寘瑁呮暟閲忥紒");
}
}
- }
-
+ }
+
Db.Insertable(boxInfoList).ExecuteCommand();
#endregion
-
-
+
+
if (factQty != bind.Qty)
{
throw new Exception("绠辩爜鏄庣粏鎬绘暟閲忎笉鍚屼簬鎵樼洏鎬绘暟閲忥紝璇锋牳瀹�");
}
#region 鍏ュ簱鍗曞強鏄庣粏
- if (model.Type =="0")
+ if (model.Type == "0")
{
detail.FactQty += factQty;//宸茬粍鏁伴噺
detail.CompleteQty += factQty;//瀹屾垚鏁伴噺
@@ -529,7 +530,7 @@
//鏇存柊鍏ュ簱鍗�
Db.Updateable(notice).ExecuteCommand();
}
-
+
#endregion
#region 搴撳瓨
@@ -537,7 +538,7 @@
if (dataStock != null)
{
dataStock.Qty += factQty;
-
+
if (bind.InspectMark == "1")
{
dataStock.IsSampling = bind.InspectMark;
@@ -573,7 +574,7 @@
Db.Insertable(stock).ExecuteCommand();
}
#endregion
-
+
// 鏇存敼鎵樼洏浣跨敤鐘舵��
var sqlStr = $"update SysPallets set Status = '1' where PalletNo = '{model.PalletNo}';";
//娣诲姞鎵樼洏璁板綍琛ㄦ暟鎹�
@@ -712,7 +713,7 @@
{
BoxNo = a.BoxNo,
PalletNo = a.PalletNo,
- BindNo=a.BindNo,
+ BindNo = a.BindNo,
Qty = SqlFunc.AggregateSum(a.Qty),
SamplingQty = SqlFunc.AggregateSum(a.SamplingQty),
FullQty = a.FullQty,
@@ -743,7 +744,7 @@
/// <param name="boxNo">绠辩爜</param>
/// <param name="boxNo3">鏀爜</param>
/// <returns></returns>
- public List<BoxInfoDto> GetBoxInfoByBoxNo(string boxNo, string boxNo3,int bindNo)
+ public List<BoxInfoDto> GetBoxInfoByBoxNo(string boxNo, string boxNo3, int bindNo)
{
Expression<Func<BllBoxInfo, bool>> item = Expressionable.Create<BllBoxInfo>()
.AndIF(!string.IsNullOrWhiteSpace(boxNo), it => it.BoxNo == boxNo.Trim())
@@ -805,16 +806,16 @@
#region 楠岃瘉褰撳墠鎵樼洏淇℃伅鏄惁鍙垹闄�
// 鍒ゆ柇璁㈠崟鏄惁鍏抽棴
var asnData = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == bind.ASNNo);
- if (asnData != null)
+ if (asnData != null)
{
- if (asnData.Status == "3" ||asnData.Status == "4")
+ if (asnData.Status == "3" || asnData.Status == "4")
{
throw new Exception("鍗曟嵁宸插叧鍗曚笉鍙垹闄�");
}
}
// 鍒ゆ柇鏄惁宸叉湁宸烽亾鍜屽偍浣�
- if ( !string.IsNullOrWhiteSpace(bind.LocatNo) || !string.IsNullOrWhiteSpace(bind.RoadwayNo) )
+ if (!string.IsNullOrWhiteSpace(bind.LocatNo) || !string.IsNullOrWhiteSpace(bind.RoadwayNo))
{
throw new Exception("鎵樼洏宸蹭笂鏋朵笉鍙垹闄ょ粍鎵�");
}
@@ -827,9 +828,9 @@
{
throw new Exception("搴撳唴涓嶅瓨鍦ㄦ鎵樼洏!");
}
- else
+ else
{
- if (dataBindItem.Status != "0")
+ if (dataBindItem.Status != "0")
{
throw new Exception("鎵樼洏涓嶆槸寰呭垎閰嶇姸鎬侊紝涓嶅彲鍒犻櫎");
}
@@ -842,35 +843,35 @@
{
throw new Exception("搴撳唴涓嶅瓨鍦ㄦ鎵樼洏涓婄墿鏂欐壒娆′俊鎭�!");
}
- if (dataStocks.Qty - dataBindItem.Qty < dataStocks.LockQty)
+ if (dataStocks.Qty - dataBindItem.Qty < dataStocks.LockQty)
{
throw new Exception("鎵樼洏涓婅揣鐗╁凡琚攣瀹氫笉鍙垹闄�");
}
-
+
// 楠岃瘉搴撳唴鎵樼洏淇℃伅鍜岀粦瀹氭墭鐩樹俊鎭槸鍚︿竴鑷�
var bllboxItem = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BindNo == bind.Id).ToList();
var databoxItem = new List<DataBoxInfo>();
- if (bllboxItem.Count == 0)
+ if (bllboxItem.Count == 0)
{
// 鎸夋暟閲忕粍鎵橈紝娌℃湁绠辨敮鍏崇郴
if (dataBindItem.ASNDetailNo != bind.ASNDetailNo
|| dataBindItem.ASNNo != bind.ASNNo
- || dataBindItem.LotNo != bind.LotNo
- || dataBindItem.Qty != bind.Qty)
+ || dataBindItem.LotNo != bind.LotNo
+ || dataBindItem.Qty != bind.Qty)
{
throw new Exception("鎵樼洏涓婅揣鐗╁凡鍙樻洿涓嶅彲鍒犻櫎");
}
}
- else
+ else
{
// 寰幆瀵规瘮绠辨敮鍏崇郴鏄惁瀛樺湪
- foreach (BllBoxInfo box in bllboxItem)
+ foreach (BllBoxInfo box in bllboxItem)
{
var databox = Db.Queryable<DataBoxInfo>()
- .First(m => m.IsDel == "0" && m.BoxNo == box.BoxNo
+ .First(m => m.IsDel == "0" && m.BoxNo == box.BoxNo
&& m.BoxNo2 == box.BoxNo2 && m.BoxNo3 == box.BoxNo3);
- if (databox == null)
+ if (databox == null)
{
throw new Exception("鎵樼洏涓婅揣鐗╁凡鍙樻洿涓嶅彲鍒犻櫎");
}
@@ -882,13 +883,13 @@
// 楠岃瘉鏄惁宸叉湁鍏ュ簱浠诲姟
var taskitem = new LogTask();
- if (!string.IsNullOrWhiteSpace(bind.TaskNo))
+ if (!string.IsNullOrWhiteSpace(bind.TaskNo))
{
taskitem = Db.Queryable<LogTask>().First(m => m.TaskNo == bind.TaskNo);
- if (taskitem != null)
+ if (taskitem != null)
{
- if (taskitem.IsSuccess == 1)
+ if (taskitem.IsSuccess == 1)
{
throw new Exception("鎵樼洏鍏宠仈鐨勫叆搴撲换鍔″凡涓嬪彂涓嶅彲鍒犻櫎");
}
@@ -907,10 +908,10 @@
var time = DateTime.Now;
//鎵樼洏缁戝畾鐨勭鏀俊鎭泦鍚�
//var boxList = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.BindNo == bind.Id).ToList();
- if (bllboxItem.Count != 0)
+ if (bllboxItem.Count != 0)
{
var ids = databoxItem.Select(m => m.StockDetailId).Distinct().ToList();
- var dataStockDetail = Db.Queryable<DataStockDetail>().Where(m=>m.IsDel == "0" && ids.Contains(m.Id)).ToList();
+ var dataStockDetail = Db.Queryable<DataStockDetail>().Where(m => m.IsDel == "0" && ids.Contains(m.Id)).ToList();
var stockItem = new List<DataStock>();
foreach (var item in dataStockDetail)
{
@@ -920,10 +921,10 @@
stockItem.Add(dataStock);
}
}
-
+
foreach (var b in bllboxItem)
{
- b.IsDel = "0";
+ b.IsDel = "0";
b.PalletNo = "";
b.BindNo = null;
b.Status = "0";
@@ -936,7 +937,7 @@
throw new Exception($"{b.BoxNo}绠辩爜銆亄b.BoxNo3}鏀爜鍒犻櫎澶辫触");
}
//鍒犻櫎搴撳瓨绠辩爜鏄庣粏淇℃伅
- var box = databoxItem.FirstOrDefault(m=>m.BoxNo == b.BoxNo && m.BoxNo2 == b.BoxNo2 && m.BoxNo3 == b.BoxNo3);
+ var box = databoxItem.FirstOrDefault(m => m.BoxNo == b.BoxNo && m.BoxNo2 == b.BoxNo2 && m.BoxNo3 == b.BoxNo3);
if (box == null)
{
throw new Exception($"鏈煡璇㈠埌{b.BoxNo}绠辩爜銆亄b.BoxNo3}鏀爜鐨勫簱瀛樹俊鎭�");
@@ -948,8 +949,8 @@
throw new Exception($"鏈煡璇㈠埌{b.BoxNo}绠辩爜銆亄b.BoxNo3}鏀爜鐨勫簱瀛樻墭鐩樹俊鎭�");
}
stockDetail.Qty -= box.Qty;
-
- if (stockDetail.Qty<=0)
+
+ if (stockDetail.Qty <= 0)
{
Db.Deleteable(stockDetail).ExecuteCommand();
}
@@ -958,7 +959,7 @@
Db.Updateable(stockDetail).ExecuteCommand();
}
//鍒犻櫎/淇敼搴撳瓨鎬昏〃淇℃伅
- var stock = stockItem.FirstOrDefault(m=>m.SkuNo == b.SkuNo && m.LotNo == b.LotNo);
+ var stock = stockItem.FirstOrDefault(m => m.SkuNo == b.SkuNo && m.LotNo == b.LotNo);
if (stock == null)
{
throw new Exception($"鏈煡璇㈠埌{b.BoxNo}绠辩爜銆亄b.BoxNo3}鏀爜鐨勫簱瀛樻�讳俊鎭�");
@@ -981,7 +982,7 @@
{
//鍒犻櫎/淇敼搴撳瓨鎵樼洏鏄庣粏淇℃伅
var stockDetail = dataBindItem;
-
+
stockDetail.Qty -= bind.Qty;
if (stockDetail.Qty <= 0)
@@ -994,7 +995,7 @@
}
//鍒犻櫎/淇敼搴撳瓨鎬昏〃淇℃伅
var stock = dataStocks;
-
+
stock.Qty -= bind.Qty;
if (stock.Qty <= 0)
{
@@ -1006,7 +1007,7 @@
}
}
//鍒ゆ柇鏄惁鏈夋寚瀹氬偍浣�
- if (taskitem != null)
+ if (taskitem != null)
{
if (!string.IsNullOrWhiteSpace(taskitem.EndLocat))
{
@@ -1044,10 +1045,10 @@
{
throw new Exception("鏌ヨ鍒扮┖鎵樻湁鍗曟嵁淇℃伅锛岄敊璇��");
}
-
+
//淇敼鍏ュ簱鍗曟槑缁�
noticeDetail.FactQty -= bind.Qty;
- noticeDetail.CompleteQty -= bind.Qty;
+ noticeDetail.CompleteQty -= bind.Qty;
//鍒ゆ柇鍏ュ簱鍗曟槑缁嗙粍鎵樻暟閲忔槸鍚︿负0锛屾槸锛氫慨鏀规槑缁嗙姸鎬�
//鍏ュ簱鎬诲崟淇℃伅
var notice = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == bind.ASNNo);
@@ -1147,7 +1148,7 @@
item.UpdateTime = time;
item.UpdateUser = userId;
qty += item.Qty;
- qty2 += item.SamplingQty == null? 0 : item.SamplingQty;
+ qty2 += item.SamplingQty == null ? 0 : item.SamplingQty;
}
Db.Updateable(boxInfos).ExecuteCommand();
@@ -1155,11 +1156,11 @@
//淇敼鎵樼洏缁戝畾淇℃伅
bind.Qty -= qty; // 鏁伴噺鍙樻洿
bind.BitPalletMark = "1"; // 闆舵墭鏍囪鍙樻洿
- if (bind.SamplingQty!= null)
+ if (bind.SamplingQty != null)
{
bind.SamplingQty -= qty2;
}
-
+
if (bind.Qty == 0)
{
//鍒ゆ柇鏄惁鏈夋寚瀹氬偍浣�
@@ -1361,7 +1362,7 @@
.AndIF(!string.IsNullOrWhiteSpace(layer), m => m.Layer == int.Parse(layer))
.AndIF(!string.IsNullOrWhiteSpace(locateNo), m => m.LocatNo.Contains(locateNo))
.And(m => m.IsDel == "0" && m.Status == "0" && m.Flag == "0" && m.WareHouseNo == houseNo)
- .And(m => m.AreaNo.Contains(categoryAreaNo))
+ .And(m => m.AreaNo == categoryAreaNo)
.ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
var total = 0;
var list = Db.Queryable<SysStorageLocat>().Where(item).OrderByDescending(a => a.Depth).OrderBy(a => a.Column)
@@ -1588,7 +1589,7 @@
{
throw new Exception("璇ユ墭鐩樻鍦ㄥ叆搴擄紝浣嗘湭鏌ヨ鍒颁换鍔′俊鎭�");
}
-
+
comDto = new OutCommandDto()
{
PalletNo = palletNo,//鎵樼洏鍙�
@@ -1607,7 +1608,7 @@
Db.Updateable(beingTask).ExecuteCommand();
}
return comDto;
-
+
}
if (haveLocate != null)
{
@@ -1661,7 +1662,7 @@
skuNo = stockDetail.First().SkuNo;
#region 鍒ゆ柇浠诲姟鏄惁宸茬粡瀛樺湪锛岃嫢瀛樺湪鐩存帴杩斿洖浠诲姟锛�
- var beingTask = Db.Queryable<LogTask>().First(m => m.IsDel == "0"
+ var beingTask = Db.Queryable<LogTask>().First(m => m.IsDel == "0"
&& (m.Status == "0" || m.Status == "1") && m.PalletNo == palletNo && m.Type == "0");
if (beingTask != null)
{
@@ -1680,7 +1681,7 @@
if (beingTask.IsSuccess == 0)
{
beingTask.IsSuccess = 1;
- beingTask.Status = "1";
+ beingTask.Status = "1";
Db.Updateable(beingTask).ExecuteCommand();
}
@@ -1690,12 +1691,12 @@
#region 鍒ゆ柇璇ユ墭鐩橈紝鏄惁绗﹀悎鍥炲簱鍔熻兘璁惧畾鐨勫洖搴撹鍒�
//鑾峰彇瀵瑰簲鍥炲簱瑙勫垯
- var function = Db.Queryable<SysFunSetting>().First(a => a.IsDel == "0"
+ var function = Db.Queryable<SysFunSetting>().First(a => a.IsDel == "0"
&& a.FunSetNo == "Fun041" && a.IsEnable == "NO");
if (function != null)
{
//鎷h揣瀹屾垚鍚庡厑璁告墭鐩樺洖搴�
- var allot = Db.Queryable<BllExportAllot>().First(a => a.IsDel == "0"
+ var allot = Db.Queryable<BllExportAllot>().First(a => a.IsDel == "0"
&& a.LotNo == stockDetail[0].LotNo && a.PalletNo == palletNo && a.SkuNo == stockDetail[0].SkuNo);
//楠岃瘉鎷h揣鏄庣粏鏄惁瀛樺湪
@@ -1834,7 +1835,7 @@
}
//濡傛灉璺冲贩閬撳苟涓旀湭鎵惧埌鍚堥�傜┖鍌ㄤ綅,鍒欒烦鍒版渶鍚庝竴娆′娇鐢ㄧ殑宸烽亾鏌ヨ
- if (roadNo == "")
+ if (string.IsNullOrWhiteSpace(roadNo))
{
if (useLog != null)
{
@@ -1867,7 +1868,7 @@
roadNo = item;
}
//褰撳墠宸锋湁浣嶇疆鍒欓��鍑�
- if (roadNo != null)
+ if (!string.IsNullOrWhiteSpace(roadNo))
{
break;
}
@@ -1919,6 +1920,7 @@
};
Db.Insertable(exTask).ExecuteCommand();
+ var asnNo = "";
// 娣诲姞鎵樼洏缁戝畾琛ㄦ墭鐩樺叆搴撲换鍔″彿 liudl
if (palletBindList.Count < 1)
{
@@ -1932,9 +1934,33 @@
bindModel.WareHouseNo = houseNo;
bindModel.RoadwayNo = roadNo;
Db.Updateable(bindModel).ExecuteCommand();
+ asnNo = stockModel.ASNNo;
}
}
}
+ foreach (DataStockDetail stockModel in stockDetail)
+ {
+ //娣诲姞鎵樼洏涓婃灦璁板綍
+ var upShelf = new BllPalletUpShelf()
+ {
+ TaskNo = exTask.TaskNo,
+ TraceNo = asnNo,
+ PalletNo = palletNo,
+ SkuNo = stockModel.SkuNo,
+ SkuName = stockModel.SkuName,
+ LotNo = stockModel.LotNo,
+ Status = "1",
+
+ WareHouseNo = houseNo,
+ RoadwayNo = roadNo,
+ AreaNo = "",
+ LocatNo = "",
+
+ CreateUser = 0,
+ };
+ Db.Insertable(upShelf).ExecuteCommand();
+ }
+
if (palletBindList.Count >= 1)
{
@@ -2104,13 +2130,13 @@
{
throw new Exception($"{palletNo}鎵樼洏鏉$爜涓嶅叿鏈夌鐮佷俊鎭紝涓嶅彲鍏ュ簱锛�");
}
- if (stockDetail.Count(m=>!string.IsNullOrWhiteSpace(m.LocatNo)) >0)
+ if (stockDetail.Count(m => !string.IsNullOrWhiteSpace(m.LocatNo)) > 0)
{
throw new Exception("褰撳墠鎵樼洏宸插湪搴撳唴锛岃鏍稿疄");
}
skuNo = stockDetail.First().SkuNo;
- var beingTask = Db.Queryable<LogTask>().First(m => m.IsDel == "0"
+ var beingTask = Db.Queryable<LogTask>().First(m => m.IsDel == "0"
&& (m.Status == "0" || m.Status == "1") && m.PalletNo == palletNo && m.Type == "0");
if (beingTask != null)
{
@@ -2215,7 +2241,7 @@
Db.BeginTran();
try
{
-
+
if (isAddTask) // 姝e父鍏ュ簱
{
var taskNo = new Common().GetMaxNo("TK");
@@ -2242,7 +2268,7 @@
};
Db.Insertable(exTask).ExecuteCommand();
-
+ var asnNo = "";
// 娣诲姞鎵樼洏缁戝畾琛ㄦ墭鐩樺叆搴撲换鍔″彿 liudl
foreach (DataStockDetail stockModel in stockDetail)
{
@@ -2255,9 +2281,32 @@
bindModel.RoadwayNo = locate.RoadwayNo;
bindModel.LocatNo = locate.LocatNo;
Db.Updateable(bindModel).ExecuteCommand();
+ asnNo = stockModel.ASNNo;
}
}
+ foreach (DataStockDetail stockModel in stockDetail)
+ {
+ //娣诲姞鎵樼洏涓婃灦璁板綍
+ var upShelf = new BllPalletUpShelf()
+ {
+ TaskNo = exTask.TaskNo,
+ TraceNo = asnNo,
+ PalletNo = palletNo,
+ SkuNo = stockModel.SkuNo,
+ SkuName = stockModel.SkuName,
+ LotNo = stockModel.LotNo,
+ Status = "1",
+ WareHouseNo = houseNo,
+ RoadwayNo = locate.RoadwayNo,
+ AreaNo = locate.AreaNo,
+ LocatNo = locate.LocatNo,
+
+ CreateUser = 0,
+ };
+ Db.Insertable(upShelf).ExecuteCommand();
+ }
+
oldTaskNo = taskNo;
}
else
@@ -2272,18 +2321,36 @@
}
Db.Updateable(oldTask).ExecuteCommand();
- var bindModel = Db.Queryable<BllPalletBind>().First(m => m.IsDel == "0" && m.Status == "2"
- && m.PalletNo == oldTask.PalletNo && m.TaskNo == oldTaskNo );
- if (bindModel != null && string.IsNullOrWhiteSpace(bindModel.LocatNo))
+
+ var bindModelList = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.Status == "2"
+ && m.PalletNo == oldTask.PalletNo && m.TaskNo == oldTaskNo).ToList();
+ foreach (var bindModel in bindModelList)
{
- bindModel.TaskNo = oldTask.TaskNo;
- bindModel.WareHouseNo = locate.WareHouseNo;
- bindModel.RoadwayNo = locate.RoadwayNo;
- bindModel.LocatNo = locate.LocatNo;
- Db.Updateable(bindModel).ExecuteCommand();
+ if (string.IsNullOrWhiteSpace(bindModel.LocatNo))
+ {
+ bindModel.TaskNo = oldTask.TaskNo;
+ bindModel.WareHouseNo = locate.WareHouseNo;
+ bindModel.RoadwayNo = locate.RoadwayNo;
+ bindModel.LocatNo = locate.LocatNo;
+ Db.Updateable(bindModel).ExecuteCommand();
+
+ }
}
+ //鏇存敼涓婃灦淇℃伅
+ var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == oldTask.TaskNo && m.PalletNo == palletNo).ToList();
+ foreach (var upShelf in upShelfList)
+ {
+ upShelf.WareHouseNo = locate.WareHouseNo;
+ upShelf.RoadwayNo = locate.RoadwayNo;
+ upShelf.LocatNo = locate.LocatNo;
+ upShelf.Status = "1";
+ Db.Updateable(upShelf).ExecuteCommand();
+
+ }
+
+
}
-
+
locate.Status = "2";
Db.Updateable(locate).ExecuteCommand();
if (palletBindList.Count >= 1)
@@ -2610,7 +2677,7 @@
// throw new Exception(e.Message);
// }
//}
-
+
#endregion
//鍏ュ簱瀹屾垚(wcs鍙嶉銆亀ms鎵嬪姩瀹屾垚)
@@ -2652,6 +2719,7 @@
//娣诲姞鎿嶄綔鏃ュ織璁板綍
var k = new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鏃ュ織", taskNo, "瀹屾垚", $"鐐瑰嚮瀹屾垚鎸夐挳銆佸畬鎴愪换鍔″彿涓猴細{taskNo}鐨勪换鍔�", userId);
}
+
//鍒ゆ柇鏄惁鏄洖娴佸叆搴撳畬鎴�
if (stockDetail.Any())
{
@@ -2667,7 +2735,7 @@
item.UpdateUser = userId;
}
}
-
+
locate.Status = "1";
Db.Updateable(locate).ExecuteCommand();
Db.Updateable(stockDetail).ExecuteCommand();
@@ -2756,7 +2824,7 @@
InspectStatus = sku.IsInspect,
InspectMark = boxInfo.InspectMark,
BitBoxMark = boxInfo.BitBoxMark,
- ExpirationTime=boxInfo.ExpirationTime,
+ ExpirationTime = boxInfo.ExpirationTime,
CreateUser = 0,
CreateTime = comTime
@@ -2789,7 +2857,7 @@
Qty = item.Qty,
LockQty = 0,
FrozenQty = 0,
- IsSampling = item.InspectMark,
+ IsSampling = item.InspectMark,
IsDel = "0",
CreateUser = userId,
CreateTime = comTime
@@ -3251,7 +3319,13 @@
task.FinishDate = comTime;//瀹屾垚鏃堕棿
//鏇存柊浠诲姟淇℃伅
Db.Updateable(task).ExecuteCommand();
-
+ //鏇存敼鎵樼洏涓婃灦璁板綍淇℃伅
+ var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == taskNo && m.PalletNo == task.PalletNo).ToList();
+ foreach (var upShelf in upShelfList)
+ {
+ upShelf.Status = "2";
+ Db.Updateable(upShelf).ExecuteCommand();
+ }
//鍒ゆ柇鏄惁鏄洖娴佸叆搴撳畬鎴�
if (stockDetail.Any())
{
@@ -3272,7 +3346,7 @@
Db.Updateable(locate).ExecuteCommand();
//鏇存柊搴撳瓨鏄庣粏淇℃伅
Db.Updateable(stockDetail).ExecuteCommand();
-
+
var bindList = Db.Queryable<BllPalletBind>().Where(m => m.IsDel == "0" && m.TaskNo == taskNo && m.Status == "2").ToList();
foreach (var item in bindList)
{
@@ -3294,49 +3368,6 @@
Db.Updateable(dataBoxInfoList).ExecuteCommand();
#endregion
- #region 閲囪喘璁″垝
- //var noticeDetail = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.IsDel == "0" && m.Id == item.ASNDetailNo);
- //if (noticeDetail == null)
- //{
- // throw new Exception("鏈煡璇㈠埌鎵樼洏缁戝畾鐨勫叆搴撳崟鏄庣粏淇℃伅");
- //}
- //var notice = Db.Queryable<BllArrivalNotice>().First(m => m.IsDel == "0" && m.ASNNo == noticeDetail.ASNNo);
- //if (notice == null)
- //{
- // throw new Exception("鏈煡璇㈠埌鎵樼洏缁戝畾鐨勫叆搴撳崟淇℃伅");
- //}
- //if (notice.Type == "1" && !string.IsNullOrEmpty(noticeDetail.OrderDetailCode))
- //{
- // //閲囪喘鍗曟槑缁�
- // var planDetail = Db.Queryable<BllProcurePlanNoticeDetail>().First(it => it.OrderDetailCode == noticeDetail.OrderDetailCode && it.IsDel == "0");
- // planDetail.CompleteQty += item.Qty;
- // if (planDetail.CompleteQty >= planDetail.Qty)
- // {
- // planDetail.Status = "2";
- // planDetail.CompleteTime = comTime;
- // }
- // Db.Updateable(planDetail).ExecuteCommand();
-
- // //閲囪喘鍗�
- // var planOrd = Db.Queryable<BllProcurePlanNotice>().First(it => it.Id == planDetail.ParentId && it.IsDel == "0");
- // var planDetailNum = Db.Queryable<BllProcurePlanNoticeDetail>()
- // .Count(m => m.IsDel == "0" && m.ParentId == planDetail.ParentId && m.Status != "2");
- // if (planDetailNum == 0)
- // {
- // planOrd.Status = "2";
- // planOrd.CompleteTime = comTime;
- // Db.Updateable(planOrd).ExecuteCommand();
- // }
- // else
- // {
- // if (planOrd.Status == "0")
- // {
- // planOrd.Status = "1";
- // Db.Updateable(planOrd).ExecuteCommand();
- // }
- // }
- //}
- #endregion
item.Status = "3";
item.CompleteTime = comTime;
}
@@ -3587,6 +3618,15 @@
}
Db.Updateable(bind).ExecuteCommand();
}
+ //鏇存敼鎵樼洏涓婃灦璁板綍淇℃伅
+ var upShelfList = Db.Queryable<BllPalletUpShelf>().Where(m => m.IsDel == "0" && m.TaskNo == taskNo && m.PalletNo == task.PalletNo).ToList();
+ foreach (var upShelf in upShelfList)
+ {
+ upShelf.IsDel = "1";
+ Db.Updateable(upShelf).ExecuteCommand();
+ }
+
+ //鍌ㄤ綅淇℃伅
var locate = Db.Queryable<SysStorageLocat>().First(m => m.LocatNo == task.EndLocat);
if (locate != null)
{
@@ -3614,11 +3654,11 @@
if (!string.IsNullOrWhiteSpace(model.SkuNo) || !string.IsNullOrWhiteSpace(model.SkuName))
{
string sql = $"select Distinct Id from ArchivingArrivalNoticeDetail where IsDel='0' and SkuNo like '%{model.SkuNo}%' and SkuName like '{model.SkuName}'";
- var detailList= Db.Ado.SqlQuery<int>(sql);
-
+ var detailList = Db.Ado.SqlQuery<int>(sql);
+
strList = detailList;
}
- string strListStr= string.Join(",", strList);
+ string strListStr = string.Join(",", strList);
string sqlString = string.Empty;
string sqlCount = string.Empty;
@@ -3697,7 +3737,7 @@
item.SkuName = sku.SkuName;
}
}
-
+
return modelList;
}
catch (Exception ex)
@@ -3783,11 +3823,11 @@
sqlPub += "where tb1.IsDel = '0' ";
if (!string.IsNullOrEmpty(boxNo))
{
- sqlPub += $"AND tb1.BoxNo = '{ boxNo.Trim()}' ";
+ sqlPub += $"AND tb1.BoxNo = '{boxNo.Trim()}' ";
}
if (!string.IsNullOrEmpty(boxNo3))
{
- sqlPub += $"AND tb1.BoxNo3 = '{ boxNo3.Trim()}' ";
+ sqlPub += $"AND tb1.BoxNo3 = '{boxNo3.Trim()}' ";
}
sqlString += sqlPub;
--
Gitblit v1.8.0