From d815631fcd784ad92feca35bc9f0357c3ee65dde Mon Sep 17 00:00:00 2001
From: admin <qiutairan163@163.com>
Date: 星期一, 10 十一月 2025 13:15:42 +0800
Subject: [PATCH] Merge branch 'master' of http://47.95.120.53:8083/r/JC34WMS
---
Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs | 95 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 79 insertions(+), 16 deletions(-)
diff --git a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
index fd465ab..5210a92 100644
--- a/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
+++ b/Wms/WMS.BLL/BllSoServer/ExportNoticeServer.cs
@@ -1231,7 +1231,7 @@
//娣诲姞鍑哄簱鍗�
foreach (var d in model.Detail)
{
- if (d.Qty < 1)
+ if (d.Qty < 0)
{
throw new Exception("鍑哄簱鏁伴噺蹇呴』澶т簬0");
}
@@ -2013,6 +2013,13 @@
}
}
+ /// <summary>
+ /// 瀵煎嚭xml鏂囦欢
+ /// </summary>
+ /// <param name="id"></param>
+ /// <param name="userId"></param>
+ /// <returns></returns>
+ /// <exception cref="Exception"></exception>
public XmlNode AddExXmlStr(int id, int userId)
{
try
@@ -2022,27 +2029,80 @@
{
throw new Exception("鏈煡璇㈠埌鍑哄簱鍗曟嵁淇℃伅");
}
+ var noticeDetial = Db.Queryable<BllExportNoticeDetail>().Where(w => w.IsDel == "0" && w.SONo == notice.SONo).First();
+ if (noticeDetial == null)
+ {
+ throw new Exception("鏈煡璇㈠埌鍑哄簱鍗曟嵁鏄庣粏淇℃伅");
+ }
var statusLis = new List<string>() { "4", "5", "6" };
if (!statusLis.Contains(notice.Status))
{
throw new Exception("鍙傛暟寮傚父,璇锋鏌ョ姸鎬佹槸鍚︿负鎵ц瀹屾垚鎴栬鍗曞叧闂�/宸蹭笂浼�");
}
+ string xmlName = string.Empty;
+ switch (notice.Type)
+ {
+ case "0"://鎴愬搧鍑哄簱/閿�鍞嚭搴�
+ xmlName = "SalesWareHouseOut";
+ break;
+ case "2"://鎶芥鍑哄簱
+ xmlName = "CheckWareHouseOut";
+ break;
+ default:
+ throw new Exception("鍗曟嵁绫诲瀷寮傚父");
+ }
+
+ var materiDetial = Db.Queryable<SysMaterials>().First(w => w.IsDel == "0" && w.SkuNo == noticeDetial.SkuNo);
+ var packType = Db.Queryable<SysPackag>().First(w => w.IsDel == "0" && w.PackagNo == materiDetial.PackagNo);
+ int level = 0;
+ if (!string.IsNullOrEmpty(packType.L2Name))
+ {
+ level = 1;
+ }
+ if (!string.IsNullOrEmpty(packType.L3Name))
+ {
+ level = 2;
+ }
+ if (!string.IsNullOrEmpty(packType.L4Name))
+ {
+ level = 3;
+ }
//鍑哄簱鍗曟槑缁�
- var comDetail = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.SONo == notice.SONo).Select(m => m.BoxNo3).ToList();
+ var comDetail = Db.Queryable<BllCompleteDetail>().Where(m => m.IsDel == "0" && m.SONo == notice.SONo).ToList();
+ var userinfo = Db.Queryable<SysUserInfor>().Where(m => m.Id == comDetail.First().CreateUser).First().RealName;
+
Db.BeginTran();//寮�鍚簨鍔�
try
{
//Hashtable pars = new Hashtable(); //鐢ㄦ潵瀛樻斁鍙傛暟
var pars = new List<string>();
- //for (int i = 0; i < 10; i++)
- //{
- // pars.Add("202203240009000479940290");
- //}
+ string[] strr = new string[comDetail.Count];
- var dom = HttpHelper.EncodeParsToFuMa(comDetail, "ceshi", "ExInfoXml");
+ for (int i = 0; i < comDetail.Count(); i++)
+ {
+ switch (level)
+ {
+ case 1:
+ strr[i] = comDetail[i].BoxNo + "," + comDetail[i].SONo + "," + userinfo + "," + Convert.ToString(comDetail[i].CreateTime);
+ break;
+ case 2:
+ strr[i] = comDetail[i].BoxNo3 + "," + comDetail[i].SONo + "," + userinfo + "," + Convert.ToString(comDetail[i].CreateTime);
+ break;
+ case 3:
+ strr[i] = comDetail[i].BoxNo2 + "," + comDetail[i].SONo + "," + userinfo + "," + Convert.ToString(comDetail[i].CreateTime);
+ break;
+ default:
+ break;
+ }
+
+
+ pars.Add(strr[i]);
+ }
+ //string fileName = $"{xmlName}_{notice.OrderCode}_linklink";
+ var dom = HttpHelper.EncodeParsToFuMa(pars, "", xmlName, "ExInfoXml");
////娣诲姞鎿嶄綔鏃ュ織璁板綍
- //var k = new OperationSOServer().AddLogOperationSo("鍑哄簱浣滀笟", "鍑哄簱鍗曟嵁", notice.SONo, "鍏冲崟", $"鍏抽棴浜嗗崟鎹彿涓簕notice.SONo}鐨勫崟鎹俊鎭�", userId);
+ var k = new OperationSOServer().AddLogOperationSo("鍑哄簱浣滀笟", "鍑哄簱鍗曟嵁", notice.SONo, "涓婁紶", $"涓婁紶浜嗗崟鎹彿涓簕notice.SONo}鐨勫崟鎹俊鎭�", userId);
Db.CommitTran();
return dom;
@@ -2395,7 +2455,7 @@
var allot = new AllotLocation();
#region 闆嗗悎
-
+
Db.BeginTran();
try
{
@@ -2731,7 +2791,9 @@
//杩橀渶瑕佸垎閰嶇殑鏁伴噺
decimal needQty = detail.Qty - (detail.AllotQty == null ? 0 : decimal.Parse(detail.AllotQty.ToString()));
//搴撳瓨鏄庣粏 Status 0锛氬緟鍒嗛厤 1锛氶儴鍒嗗垎閰� 2锛氬凡鍒嗛厤
- var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.SkuNo == detail.SkuNo && (m.Qty - m.FrozenQty - m.LockQty + m.InspectQty) > 0 && (m.Status == "0" || m.Status == "1") && m.IsDel == "0").ToList();
+ var stockDetail = Db.Queryable<DataStockDetail>().Where(m => m.SkuNo == detail.SkuNo && (m.Qty - m.FrozenQty - m.LockQty + m.InspectQty) > 0 && (m.Status == "0" || m.Status == "1") && m.IsDel == "0"
+ && m.AreaNo != "B06" && m.AreaNo != "B07" && m.AreaNo != "B09" && m.AreaNo != "B24")//鎺掗櫎杞﹂棿搴撳瓨
+ .ToList();
//鍒ゆ柇鍗曞彿鏄惁鎸囧畾鎵规
@@ -2834,7 +2896,7 @@
{
s.Status = "1";
}
-
+
var sd = Db.Updateable(s).UpdateColumns(it => new { it.LockQty, it.Status }).ExecuteCommand();
}
@@ -2911,7 +2973,7 @@
notice.Status = "3";//姝e湪鎵ц
}
}
-
+
notice.UpdateUser = userId;
notice.UpdateTime = DateTime.Now;
var zd = Db.Updateable(notice).ExecuteCommand();
@@ -3156,7 +3218,8 @@
m => m.SkuNo.Contains(msg.Trim())
|| m.SkuName.Contains(msg.Trim())
|| m.LocatNo.Contains(msg.Trim()))
- .And(m => m.IsDel == "0" && m.SkuNo == detail.SkuNo && m.LotNo == detail.LotNo && (m.Status == "0" || m.Status == "1"))
+ .And(m => m.IsDel == "0" && m.SkuNo == detail.SkuNo && m.LotNo == detail.LotNo && (m.Status == "0" || m.Status == "1")
+ && m.AreaNo != "B06" && m.AreaNo != "B07" && m.AreaNo != "B09" && m.AreaNo != "B24")//鎺掗櫎杞﹂棿搴撳瓨
.ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
var list = Db.Queryable<DataStockDetail>().Where(item).Select(a => new StockDetailDto
@@ -4367,7 +4430,7 @@
}
}
}
- if(string.IsNullOrEmpty(newAddress))
+ if (string.IsNullOrEmpty(newAddress))
{
//宸叉湁鐗╁搧鐨勫贩閬�
var roadwayHave = Db.Queryable<DataStockDetail>().Where(w => w.IsDel == "0" && w.WareHouseNo == "W01").GroupBy(g => g.RoadwayNo).Select(s => s.RoadwayNo).ToList();
@@ -4398,7 +4461,7 @@
}
}
}
-
+
}
}
@@ -4579,7 +4642,7 @@
else
{
// 鍙栨渶涓婇潰涓�鎺�
- location = slotModel[0].LocatNo;
+ location = slotModel[0].LocatNo;
}
bl = true;
--
Gitblit v1.8.0