From 5ce969ed34e91c931cce38e2feb5d2c208633a96 Mon Sep 17 00:00:00 2001
From: chengsc <Demo@DESKTOP-CPA90BF>
Date: 星期日, 03 十一月 2024 18:34:53 +0800
Subject: [PATCH] 修改问题
---
Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs | 135 +++++++++++++++++++++++++++++++++------------
1 files changed, 99 insertions(+), 36 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
index 355b71a..d7eeeee 100644
--- a/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/ArrivalNoticeServer.cs
@@ -131,7 +131,7 @@
}
//鑾峰彇鍏ュ簱鍗曟槑缁嗗墿浣欐墦鍗版暟閲�
- public string GetAsnDetailQtyList(int id)
+ public LabelPrintInfoDto GetAsnDetailQtyList(int id)
{
try
{
@@ -140,11 +140,29 @@
{
throw new Exception("鏈煡璇㈠埌鍏ュ簱鍗曟槑缁�");
}
+ var data = new LabelPrintInfoDto();
+
+ var notice = Db.Queryable<BllArrivalNotice>().Where(m => m.IsDel == "0" && m.ASNNo == detail.ASNNo).First();
+ if (notice != null && notice.Type == "4") //鍒ゆ柇鏄惁鏄綑鏂欓��鍥炲崟
+ {
+ var noticeStr = Db.Queryable<BllArrivalNotice>().Where(m => m.Type == "1").Select(m => m.ASNNo).ToList();
+ var detailOld = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && noticeStr.Contains(m.ASNNo) && m.SkuNo == detail.SkuNo && m.LotNo == detail.LotNo).OrderByDescending(m => m.CreateTime).First();
+ if (detailOld != null)
+ {
+ var boxInfo = Db.Queryable<BllBoxInfo>().First(m => m.IsDel == "0" && m.ASNNo == detailOld.ASNNo);
+ if (boxInfo!= null)
+ {
+ data.ProductionTime = boxInfo.ProductionTime!= null ? ((DateTime)boxInfo.ProductionTime).ToString("yyyy-MM-dd"):"";
+ data.ExpirationTime = boxInfo.ExpirationTime != null ? ((DateTime)boxInfo.ExpirationTime).ToString("yyyy-MM-dd") : "";
+ data.StoreTime = boxInfo.StoreTime != null ? ((DateTime)boxInfo.StoreTime).ToString("yyyy-MM-dd") : "";
+ }
+ }
+ }
var labelQty = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNDetailNo == id).Sum(m => m.Qty);
var qty = detail.Qty - labelQty;
-
- return qty.ToString();
+ data.Qty = qty.ToString();
+ return data;
}
catch (Exception e)
{
@@ -344,6 +362,19 @@
strMessage = "-1:鍘熷巶鎵瑰彿涓嶅彲涓虹┖;";
continue;
}
+ if (model.Type == "2") // 2锛氫腑闂村搧鍏ュ簱
+ {
+ if (string.IsNullOrWhiteSpace(detailModel.Lot1))
+ {
+ throw new Exception("鐢熶骇鏃ユ湡涓嶅彲涓虹┖!");
+ }
+ if (string.IsNullOrWhiteSpace(detailModel.Lot2))
+ {
+ throw new Exception("杩囨湡鏃ユ湡涓嶅彲涓虹┖!");
+ }
+ }
+
+
// 鍒ゆ柇鏄惁宸插瓨鍦ㄥ綋鍓嶆槑缁�
string sqlCount = $"SELECT COUNT(ID) FROM BllArrivalNoticeDetail where ASNNo = '{model.ASNNo}' ";
sqlCount += $"and SkuNo ='{detailModel.SkuNo}' and LotNo = '{detailModel.LotNo}' and id != '{detailModel.Id}' and isdel = '0';";
@@ -360,10 +391,11 @@
// 璁$畻鍑烘�婚噾棰�
detailModel.Money = detailModel.Price * detailModel.Qty;
sqlDetailStr += "Insert into BllArrivalNoticeDetail (ASNNo,SkuNo,SkuName,Standard,";
- sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
+ sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,Lot1,Lot2,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
sqlDetailStr += $"'{model.ASNNo}','{detailModel.SkuNo}','{detailModel.SkuName}','{detailModel.Standard}', ";
sqlDetailStr += $"'{detailModel.LotNo}','{detailModel.LotText}','{detailModel.Qty}','{detailModel.PackagNo}','{detailModel.Price}', ";
- sqlDetailStr += $"{detailModel.Money},'{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
+ sqlDetailStr += $"'{detailModel.Money}','{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','{detailModel.Lot1}','{detailModel.Lot2}', ";
+ sqlDetailStr += $"'{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
if (model.Type == "0")//鎴愬搧鍏ュ簱鍗曚笅鍙慦CS淇℃伅
{
@@ -397,34 +429,34 @@
{
new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", model.ASNNo, "娣诲姞", $"娣诲姞浜嗗崟鎹彿涓簕model.ASNNo}鐨勫崟鎹俊鎭�", Convert.ToInt32(model.CreateUser));
- //if (addOder.Count > 0)
- //{
- // // 姝e紡杩愯绋嬪簭鏀惧紑
- // var jsonData = JsonConvert.SerializeObject(addOder);
- // string response = "";
+ if (addOder.Count > 0)
+ {
+ // 姝e紡杩愯绋嬪簭鏀惧紑
+ var jsonData = JsonConvert.SerializeObject(addOder);
+ string response = "";
- // try
- // {
- // var time1 = DateTime.Now;//鍙戦�佹椂闂� .ToString("yyyy-MM-dd HH:mm:ss")
- // //缁橶CS涓嬪彂鍏ュ簱鍗曚俊鎭�
- // response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橶CS鍑哄簱鍛戒护", "WCS");
+ try
+ {
+ var time1 = DateTime.Now;//鍙戦�佹椂闂� .ToString("yyyy-MM-dd HH:mm:ss")
+ //缁橶CS涓嬪彂鍏ュ簱鍗曚俊鎭�
+ response = HttpHelper.DoPost(url, jsonData, "涓嬪彂缁橶CS鍑哄簱鍛戒护", "WCS");
- // //////瑙f瀽杩斿洖鏁版嵁
- // var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
- // if (wcsModel.StatusCode == 0)
- // {
-
- // }
- // if (wcsModel.StatusCode == -1)
- // {
+ //瑙f瀽杩斿洖鏁版嵁
+ var wcsModel = JsonConvert.DeserializeObject<WcsModel>(response);
+ if (wcsModel.StatusCode == 0)
+ {
- // }
- // }
- // catch (Exception ex)
- // {
- // throw new Exception(ex.Message);
- // }
- //}
+ }
+ if (wcsModel.StatusCode == -1)
+ {
+ throw new Exception($"涓嬪彂WCS澶辫触锛歿wcsModel.Msg}");
+ }
+ }
+ catch (Exception ex)
+ {
+ throw new Exception(ex.Message);
+ }
+ }
return strMessage;
}
else
@@ -435,6 +467,7 @@
}
catch (Exception ex)
{
+ Db.Ado.RollbackTran();
throw new Exception(ex.Message);
}
}
@@ -518,6 +551,19 @@
strMessage = "-1:鎵规鍙蜂笉鍙负绌�;";
continue;
}
+
+ if (model.Type == "2") // 2锛氫腑闂村搧鍏ュ簱
+ {
+ if (string.IsNullOrWhiteSpace(detailModel.Lot1))
+ {
+ throw new Exception("鐢熶骇鏃ユ湡涓嶅彲涓虹┖!");
+ }
+ if (string.IsNullOrWhiteSpace(detailModel.Lot2))
+ {
+ throw new Exception("杩囨湡鏃ユ湡涓嶅彲涓虹┖!");
+ }
+ }
+
// 鍒ゆ柇鏄惁宸插瓨鍦ㄥ綋鍓嶆槑缁�
string sqlCount = $"SELECT COUNT(ID) FROM BllArrivalNoticeDetail where ASNNo = '{model.ASNNo}' ";
sqlCount += $"and SkuNo ='{detailModel.SkuNo}' and LotNo = '{detailModel.LotNo}' and id != '{detailModel.Id}' and isdel = '0';";
@@ -537,10 +583,12 @@
// 璁$畻鍑烘�婚噾棰�
detailModel.Money = detailModel.Price * detailModel.Qty;
sqlDetailStr += "Insert into BllArrivalNoticeDetail (ASNNo,SkuNo,SkuName,Standard,";
- sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
+ sqlDetailStr += "LotNo,LotText,Qty,PackagNo,Price,Money,IsBale,IsBelt,SupplierLot,Status,Lot1,Lot2,UDF1,UDF2,UDF3,UDF4,UDF5,CreateUser) values ( ";
sqlDetailStr += $"'{model.ASNNo}','{detailModel.SkuNo}','{detailModel.SkuName}','{detailModel.Standard}', ";
sqlDetailStr += $"'{detailModel.LotNo}','{detailModel.LotText}','{detailModel.Qty}','{detailModel.PackagNo}','{detailModel.Price}', ";
- sqlDetailStr += $"{detailModel.Money},'{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
+ sqlDetailStr += $"'{detailModel.Money},'{detailModel.IsBale}','{detailModel.IsBelt}','{detailModel.SupplierLot}','0','{detailModel.Lot1}','{detailModel.Lot2}', ";
+ sqlDetailStr += $"'{detailModel.UDF1}','{detailModel.UDF2}','{detailModel.UDF3}','{detailModel.UDF4}','{detailModel.UDF5}','{model.CreateUser}');";
+
}
else
{
@@ -553,6 +601,8 @@
&& it.SupplierLot == detailModel.SupplierLot
&& it.IsBale == detailModel.IsBale
&& it.IsBelt == detailModel.IsBelt
+ && it.Lot1 == detailModel.Lot1 // 鐢熶骇鏃ユ湡
+ && it.Lot2 == detailModel.Lot2 // 杩囨湡鏃ユ湡
&& it.UDF1 == detailModel.UDF1
&& it.UDF2 == detailModel.UDF2
&& it.UDF3 == detailModel.UDF3
@@ -568,6 +618,7 @@
sqlDetailStr += $"Qty = '{detailModel.Qty}',LotNo = '{detailModel.LotNo}',Money='{detailModel.Money}', ";
sqlDetailStr += $"LotText = '{detailModel.LotText}',SupplierLot = '{detailModel.SupplierLot}', ";
sqlDetailStr += $"IsBale = '{detailModel.IsBale}',IsBelt = '{detailModel.IsBelt}', ";
+ sqlDetailStr += $" Lot1= '{detailModel.Lot1}',Lot2 = '{detailModel.Lot2}', ";
sqlDetailStr += $"UDF1 = '{detailModel.UDF1}',UDF2 = '{detailModel.UDF2}',UDF3 = '{detailModel.UDF3}',UDF4 = '{detailModel.UDF4}',UDF5 = '{detailModel.UDF5}',";
sqlDetailStr += $"UpdateTime = GETDATE(),UpdateUser = '{model.CreateUser}' ";
sqlDetailStr += $"WHERE Id = {detailModel.Id};";
@@ -1051,10 +1102,22 @@
}
//璁㈠崟鍥炰紶涓婃父绯荤粺
- public bool FinishAsn(int id, string erpUrl, string mesUrl,string mesTokenUrl, int userId)
+ public bool FinishAsn(int id, string erpUrl, string mesUrl,string mesTokenUrl,string userNo,string pwd, int userId)
{
try
{
+ var loginPwd = Md5Tools.CalcMd5(pwd);
+ var date = Db.Queryable<SysUserInfor>().First(m =>m.IsDel=="0" && m.UserName == userNo && m.PassWord == loginPwd);
+
+ if (date == null) //璐﹀彿瀵嗙爜鏄惁姝g‘
+ {
+ throw new Exception("璐﹀彿瀵嗙爜涓嶆纭垨娌℃湁姝よ处鍙�");
+ }
+ if (date.Status != "0") //褰撳墠璐﹀彿鏄惁姝e父鍚敤
+ {
+ throw new Exception("褰撳墠璐﹀彿闈炲惎鐢ㄧ姸鎬�");
+ }
+
var notice = Db.Queryable<BllArrivalNotice>().First(m => m.Id == id && m.IsDel == "0");
if (notice == null)
{
@@ -1069,7 +1132,7 @@
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏淇℃伅");
}
- if (userId == notice.UpdateUser)
+ if (date.Id == notice.UpdateUser)
{
throw new Exception("澶嶆牳澶辫触锛屽鏍镐汉鍛樺拰鍏抽棴璁㈠崟浜哄憳涓嶈兘鐩稿悓锛�");
}
@@ -1150,10 +1213,10 @@
notice.Status = "4";
notice.CheckTime = DateTime.Now;
- notice.CheckUser = userId;
+ notice.CheckUser = date.Id;
Db.Updateable(notice).ExecuteCommand();
- new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", notice.ASNNo, "澶嶆牳", $"澶嶆牳浜嗗崟鎹彿涓簕notice.ASNNo}鐨勫崟鎹俊鎭�", userId);
+ new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鍏ュ簱鍗曟嵁", notice.ASNNo, "澶嶆牳", $"{date.RealName}澶嶆牳浜嗗崟鎹彿涓簕notice.ASNNo}鐨勫崟鎹俊鎭�", userId);
return true;
}
catch (Exception e)
--
Gitblit v1.8.0