From f2b3c45b78bb9fc021869c4ae35e6de039b50bbf Mon Sep 17 00:00:00 2001
From: chengsc <Demo@DESKTOP-CPA90BF>
Date: 星期五, 18 十月 2024 18:40:52 +0800
Subject: [PATCH] 修改问题
---
Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs | 450 +++++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 360 insertions(+), 90 deletions(-)
diff --git a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
index 8511af4..3448fe9 100644
--- a/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
+++ b/Wms/WMS.BLL/BllAsnServer/BllBoxInfoServer.cs
@@ -15,6 +15,7 @@
using WMS.Entity.Context;
using WMS.Entity.SysEntity;
using WMS.IBLL.IBllAsnServer;
+using ZXing;
namespace WMS.BLL.BllAsnServer
{
@@ -264,7 +265,7 @@
.AndIF(!string.IsNullOrWhiteSpace(model.ProductionTime), it => it.ProductionTime >= Convert.ToDateTime(model.ProductionTime))
.AndIF(!string.IsNullOrWhiteSpace(model.InspectMark), it => it.InspectMark == model.InspectMark.Trim())
.AndIF(!string.IsNullOrWhiteSpace(model.BitBoxMark), it => it.BitBoxMark == model.BitBoxMark.Trim())
- .AndIF(!string.IsNullOrWhiteSpace(model.Origin), it => it.Origin == model.Origin.Trim())
+ .AndIF(!string.IsNullOrWhiteSpace(model.Origin), it => model.Origin.Trim().Contains(it.Origin))
.And(m => m.SkuNo != "100099" && m.IsDel == "0" && m.Status == "0")
.ToExpression();//娉ㄦ剰 杩欎竴鍙� 涓嶈兘灏�
var total = 0;
@@ -412,7 +413,7 @@
.AndIF(!string.IsNullOrWhiteSpace(model.SkuNo), it => it.SkuNo.Contains(model.SkuNo.Trim()))
.AndIF(!string.IsNullOrWhiteSpace(model.LotNo), it => it.LotNo.Contains(model.LotNo.Trim()))
.AndIF(!string.IsNullOrWhiteSpace(model.SupplierLot), it => it.SupplierLot.Contains(model.SupplierLot.Trim()))
- .AndIF(!string.IsNullOrWhiteSpace(model.Status), it => it.Status == model.SupplierLot)
+ .AndIF(!string.IsNullOrWhiteSpace(model.Status), it => it.Status == model.Status)
.AndIF(!string.IsNullOrWhiteSpace(model.ProductionTime), it => it.ProductionTime >= Convert.ToDateTime(model.ProductionTime))
.AndIF(!string.IsNullOrWhiteSpace(model.ProductionTime), it => it.ProductionTime <= Convert.ToDateTime(model.ProductionTime).AddDays(1))
.And(it => it.IsDel == "0" && it.Origin == "WMS鐢熸垚")
@@ -529,17 +530,50 @@
}
//鑾峰彇鏍囩淇℃伅(鐢熸垚鏍囩)
- public List<BllBoxInfo> AddLabelBox(int imId, string isReset, decimal arriveQty, string productionTime, string expirationTime, string storeTime, int userId)
+ public List<BllBoxInfo> AddLabelBox(int imId, string isReset, decimal arriveQty, string productionTime, string expirationTime, string storeTime,string supplierLot, int userId)
{
try
- {
+ {
#region 鍗曟嵁銆佺墿鏂欍�佸寘瑁呫�佹爣绛句俊鎭幏鍙�
-
+ if (string.IsNullOrWhiteSpace(productionTime))
+ {
+ throw new Exception("鐢熶骇鏃ユ湡涓嶈兘涓虹┖");
+ }
+ if (!string.IsNullOrWhiteSpace(expirationTime) && !string.IsNullOrWhiteSpace(storeTime))
+ {
+ throw new Exception("鏈夋晥鏈熷拰鍌ㄥ瓨鏈熶笉鑳藉悓鏃跺~鍐�");
+ }
+ if (isReset != "0")
+ {
+ throw new Exception("涓嶅彲閲嶇疆鎵规");
+ }
+ DateTime proTime;
+ DateTime expTime;
+ DateTime stoTime;
+ var bl1= DateTime.TryParse(productionTime, out proTime);
+ var bl2= DateTime.TryParse(expirationTime, out expTime);
+ var bl3= DateTime.TryParse(storeTime, out stoTime);
+ if (!bl1)
+ {
+ throw new Exception("鐢熶骇鏃ユ湡杞崲澶辫触");
+ }
+ if (!bl2 && !string.IsNullOrWhiteSpace(expirationTime))
+ {
+ throw new Exception("鏈夋晥鏈熻浆鎹㈠け璐�");
+ }
+ if (!bl3 && !string.IsNullOrWhiteSpace(storeTime))
+ {
+ throw new Exception("鍌ㄥ瓨鏈熻浆鎹㈠け璐�");
+ }
var asnList = Db.Queryable<BllArrivalNoticeDetail>().First(m => m.Id == imId && m.IsDel == "0");
if (asnList == null)
{
throw new Exception("鏈煡璇㈠埌鍗曟嵁鏄庣粏淇℃伅");
+ }
+ if (asnList.LotNo.Length != 10)
+ {
+ throw new Exception("鍗曟嵁杩涘巶缂栧彿浣嶆暟闀垮害閿欒");
}
var asn = Db.Queryable<BllArrivalNotice>().First(m => m.ASNNo == asnList.ASNNo && m.IsDel == "0");
if (asn == null)
@@ -576,7 +610,7 @@
packStr += "-" + pack.L5Num + "/" + pack.L5Name;
}
//鏍囩琛�
- var label = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNDetailNo == imId).ToList();
+ var label = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.Origin == "WMS鐢熸垚").ToList();
#endregion
@@ -605,7 +639,7 @@
zNum = Convert.ToInt32(pack.L1Num);
}
- if (packLevel <= 1)//鍖呰绛夌骇灏忎簬1锛屾寜鐓�1绾ф爣绛炬墦鍗�
+ if (packLevel < 1)//鍖呰绛夌骇灏忎簬1锛屾寜鐓�1绾ф爣绛炬墦鍗�
{
throw new Exception("鍖呰淇℃伅鏈夎锛屽皬浜庝竴绾�");
}
@@ -614,30 +648,35 @@
var modelList = new List<BllBoxInfo>();
var addLotNo = "";
-
+ if (arriveQty <= 0)
+ {
+ throw new Exception("鍒拌揣鏁伴噺涓嶈兘灏忎簬绛変簬0!");
+ }
+ Db.BeginTran();
if (packLevel == 1)
{
#region 涓�绾у寘瑁�
// 鏍规嵁鐢ㄦ埛杈撳叆鐨勭鏁伴噺璁$畻闇�瑕佺殑鏉$爜鏁�
- var labQty = label.Sum(m => m.Qty);
- var qty = asnList.Qty - labQty;//褰撳墠鍗曟嵁鍓╀綑闇�瑕佹墦鍗扮殑鐗╂枡鏁伴噺(涓嶆槸鏍囩鏁伴噺)
- if (qty <= 0)
- {
- throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏍囩宸叉墦鍗板畬姣曪紝濡傛湁闇�瑕佽琛ユ墦");
- }
+ //var labQty = label.Sum(m => m.Qty);
+ //var qty = asnList.Qty - labQty;//褰撳墠鍗曟嵁鍓╀綑闇�瑕佹墦鍗扮殑鐗╂枡鏁伴噺(涓嶆槸鏍囩鏁伴噺)
+ //if (qty <= 0)
+ //{
+ // throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏍囩宸叉墦鍗板畬姣曪紝濡傛湁闇�瑕佽琛ユ墦");
+ //}
#region 鍒拌揣鏁伴噺
- if (arriveQty - qty > 0)
- {
- throw new Exception("鍒拌揣鏁伴噺澶т簬鏈墦鏍囩鏁伴噺锛岃閲嶆柊杈撳叆鍒拌揣鏁伴噺骞舵牳瀹�!");
- }
- else
- {
- qty = arriveQty;
- }
-
+ //if (arriveQty - qty > 0)
+ //{
+ // throw new Exception("鍒拌揣鏁伴噺澶т簬鏈墦鏍囩鏁伴噺锛岃閲嶆柊杈撳叆鍒拌揣鏁伴噺骞舵牳瀹�!");
+ //}
+ //else
+ //{
+ // qty = arriveQty;
+ //}
+
+ var qty = arriveQty;
#endregion
int labelNum = 1; //鐢熶骇鏉$爜鏁伴噺
@@ -656,23 +695,39 @@
string maxBoxCode = ""; //绠辩爜鍙�
// 鐢熸垚鑷紪鎵瑰彿
string toDayTime = DateTime.Now.ToString("yyyyMMdd");
-
-
- var maxLotNo = label.Max(a => a.LotNo);
- var maxBoxNo = label.Max(a => a.BoxNo);
+
if (isReset == "0")
{
-
- maxLotNoStr = maxLotNo;
- maxBoxCode = maxBoxNo;
- if (string.IsNullOrWhiteSpace(maxLotNoStr))
+ //鍒ゆ柇鍗曟嵁鏄惁鏄綑鏂欓��鍥炲崟
+ if (asn.Type == "4")
{
- maxLotNoStr = toDayTime.Substring(2, 6) + "0001";
+ maxLotNoStr = asnList.LotNo;
+ maxBoxCode = label.Where(m=>m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+ if (string.IsNullOrWhiteSpace(maxLotNoStr))
+ {
+ throw new Exception("杞﹂棿浣欐枡閫�鍥炲崟鎹壒娆′笉鑳戒负绌�");
+ }
}
+ else
+ {
+ //var labelCount = label.Where(m => m.ASNDetailNo == imId).ToList();
+ //if (labelCount.Count <= 0)
+ //{
+ // throw new Exception("褰撳墠鍗曟嵁鏄庣粏杩樻湭鐢熸垚鏍囩锛岃閫夋嫨閲嶇疆鎵规閫夐」涓衡�樻槸鈥欙紱");
+ //}
+ //maxLotNoStr = labelCount.Max(a => a.LotNo);
+ maxLotNoStr = asnList.LotNo;
+ //if (string.IsNullOrWhiteSpace(maxLotNoStr))
+ //{
+ // maxLotNoStr = toDayTime.Substring(2, 6) + "0001";
+ //}
+ //maxBoxCode = label.Where(m => m.LotNo == maxLotNoStr).Max(a => a.BoxNo);
+ }
+
}
else
{
- var maxCode = Db.Queryable<BllLabelBoxNo>().Max(a => a.LotNo); // 鑾峰彇浠婂ぉ鏈�澶ф壒娆″彿
+ var maxCode = Db.Queryable<BllBoxInfo>().Where(m=>m.Origin == "WMS鐢熸垚").Max(a => a.LotNo); // 鑾峰彇浠婂ぉ鏈�澶ф壒娆″彿 20241013
if (string.IsNullOrWhiteSpace(maxCode))
{
maxLotNoStr = toDayTime.Substring(2, 6) + "0001";
@@ -720,7 +775,7 @@
}
//鑾峰彇绠辩爜
- if (maxBoxCode == "")
+ if (string.IsNullOrWhiteSpace(maxBoxCode))
{
var str = "B"+maxLotNoStr + "000001"; //鎵瑰彿+ 娴佹按 2302010001000001
maxBoxCode = str;
@@ -736,7 +791,7 @@
ASNNo = asnList.ASNNo,
ASNDetailNo = asnList.Id,
BoxNo = maxBoxCode,
- Qty = int.Parse(boxQty.ToString()),
+ Qty = boxQty,
FullQty = bNum,
Status = "0",
SkuNo = asnList.SkuNo,
@@ -744,20 +799,25 @@
LotNo = maxLotNoStr,
Standard = asnList.Standard,
PackageStandard = packStr,
- SupplierLot = asnList.SupplierLot,
+ SupplierLot = supplierLot,
InspectMark = "0",
BitBoxMark = bNum > boxQty ? "1":"0",
- InspectStatus = "",
+ InspectStatus = "0",
- ProductionTime = DateTime.Parse(productionTime),
- StoreTime = DateTime.Parse(storeTime),
- ExpirationTime = DateTime.Parse(expirationTime),
-
+ ProductionTime = proTime,
+
Origin = "WMS鐢熸垚",
CreateUser = userId,
CreateTime = DateTime.Now,
};
-
+ if (bl2)
+ {
+ labelModel.ExpirationTime = expTime;
+ }
+ if (bl3)
+ {
+ labelModel.StoreTime = stoTime;
+ }
Db.Insertable(labelModel).ExecuteCommand();
modelList.Add(labelModel);
}
@@ -769,25 +829,27 @@
#region 浜岀骇鍖呰
// 鏍规嵁鐢ㄦ埛杈撳叆鐨勭鏁伴噺璁$畻闇�瑕佺殑鏉$爜鏁�
- var labQty = label.Sum(m => m.Qty);
- var qty2 = asnList.Qty - labQty;
- if (qty2 <= 0)
- {
- throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏍囩宸叉墦鍗板畬姣曪紝濡傛湁闇�瑕佽琛ユ墦");
- }
+ //var labQty = label.Sum(m => m.Qty);
+ //var qty2 = asnList.Qty - labQty;
+ //if (qty2 <= 0)
+ //{
+ // throw new Exception("褰撳墠鍗曟嵁鐗╂枡鏍囩宸叉墦鍗板畬姣曪紝濡傛湁闇�瑕佽琛ユ墦");
+ //}
#region 澧炲姞鍒拌揣鏁伴噺
- if (arriveQty - qty2 > 0)
- {
- throw new Exception("鍒拌揣鏁伴噺澶т簬鏈墦鏍囩鏁伴噺锛岃閲嶆柊杈撳叆鍒拌揣鏁伴噺!");
- }
- else
- {
- qty2 = arriveQty;
- }
+ //if (arriveQty - qty2 > 0)
+ //{
+ // throw new Exception("鍒拌揣鏁伴噺澶т簬鏈墦鏍囩鏁伴噺锛岃閲嶆柊杈撳叆鍒拌揣鏁伴噺!");
+ //}
+ //else
+ //{
+ // qty2 = arriveQty;
+ //}
#endregion
+
+ var qty2 = arriveQty;
int labelNum2 = 1; //鐢熶骇绠辨潯鐮佹暟閲�
labelNum2 = int.Parse(Math.Ceiling(qty2 / bNum).ToString());
@@ -806,20 +868,39 @@
string toDayTime2 = DateTime.Now.ToString("yyyyMMdd");
if (isReset == "0")
{
- var maxCode = label.Max(a => a.LotNo);
- var boxCode1 = label.Max(a => a.BoxNo);//绠卞彿
- var boxCode2 = label.Max(a => a.BoxNo3);//鏀彿
- maxCodestr2 = maxCode;
- maxboxcode2 = boxCode1;
- maxboxcode3 = boxCode2;
- if (string.IsNullOrWhiteSpace(maxCodestr2))
+ //鍒ゆ柇鍗曟嵁鏄惁鏄綑鏂欓��鍥炲崟
+ if (asn.Type == "4")
{
- maxCodestr2 = toDayTime2.Substring(2, 6) + "0001";
+ maxCodestr2 = asnList.LotNo;
+ maxboxcode2 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo);
+ maxboxcode3 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo3);//鏀彿
+ if (string.IsNullOrWhiteSpace(maxCodestr2))
+ {
+ throw new Exception("杞﹂棿浣欐枡閫�鍥炲崟鎹壒娆′笉鑳戒负绌�");
+ }
}
+ else
+ {
+ //var labelCount = label.Where(m => m.ASNDetailNo == imId).ToList();
+ //if (labelCount.Count <= 0)
+ //{
+ // throw new Exception("褰撳墠鍗曟嵁鏄庣粏杩樻湭鐢熸垚鏍囩锛岃閫夋嫨閲嶇疆鎵规閫夐」涓衡�樻槸鈥欙紱");
+ //}
+ //maxCodestr2 = labelCount.Max(a => a.LotNo); ;
+ maxCodestr2 = asnList.LotNo;
+
+ //if (string.IsNullOrWhiteSpace(maxCodestr2))
+ //{
+ // maxCodestr2 = toDayTime2.Substring(2, 6) + "0001";
+ //}
+ //maxboxcode2 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo);//绠卞彿;
+ //maxboxcode3 = label.Where(m => m.LotNo == maxCodestr2).Max(a => a.BoxNo3);//鏀彿;
+ }
+
}
else
{
- var maxCode = Db.Queryable<BllLabelBoxNo>().Max(a => a.LotNo); // 鑾峰彇浠婂ぉ鏈�澶ф壒娆″彿
+ var maxCode = Db.Queryable<BllBoxInfo>().Where(m => m.Origin == "WMS鐢熸垚").Max(a => a.LotNo); // 鑾峰彇浠婂ぉ鏈�澶ф壒娆″彿
if (string.IsNullOrWhiteSpace(maxCode))
{
maxCodestr2 = toDayTime2.Substring(2, 6) + "0001";
@@ -868,7 +949,7 @@
}
//鑾峰彇绠辩爜
- if (maxboxcode2 == "")
+ if (string.IsNullOrWhiteSpace(maxboxcode2))
{
maxboxcode2 = "B"+maxCodestr2 + "000001"; // 绠卞彿 鎵瑰彿+绗嚑绠�
}
@@ -912,7 +993,7 @@
}
}
- if (maxboxcode3 == "")
+ if (string.IsNullOrWhiteSpace(maxboxcode3))
{
maxboxcode3 = "Z"+maxCodestr2 + "0001"; // 鏀彿 鎵瑰彿+绗嚑绠�
}
@@ -921,6 +1002,9 @@
maxboxcode3 = maxboxcode3.Substring(0, 11) + (int.Parse(maxboxcode3.Substring(11, 4)) + 1).ToString().PadLeft(4, '0');
}
+ //var ssss = d.ToString("0");
+ //var sss = int.Parse(ssss);
+
// 灏嗘潯鐮佷繚瀛樺埌鍘熸枡鏉$爜琛�
var labelModel = new BllBoxInfo()
{
@@ -928,7 +1012,7 @@
ASNDetailNo = asnList.Id,
BoxNo = maxboxcode2,
BoxNo3 = maxboxcode3,
- Qty = int.Parse(d.ToString()),
+ Qty = d,
FullQty = bNum,
Status = "0",
SkuNo = asnList.SkuNo,
@@ -936,20 +1020,25 @@
LotNo = maxCodestr2,
Standard = asnList.Standard,
PackageStandard = packStr,
- SupplierLot = asnList.SupplierLot,
+ SupplierLot = supplierLot,
InspectMark = "0",
BitBoxMark = bNum > boxQty ? "1" : "0",
InspectStatus = "0",
- ProductionTime = DateTime.Parse(productionTime),
- StoreTime = DateTime.Parse(storeTime),
- ExpirationTime = DateTime.Parse(expirationTime),
-
+ ProductionTime = proTime,
+
Origin = "WMS鐢熸垚",
CreateUser = userId,
CreateTime = DateTime.Now,
};
-
+ if (bl2)
+ {
+ labelModel.ExpirationTime = expTime;
+ }
+ if (bl3)
+ {
+ labelModel.StoreTime = stoTime;
+ }
Db.Insertable(labelModel).ExecuteCommand();
modelList.Add(labelModel);
}
@@ -972,7 +1061,7 @@
Db.Updateable(asnList).ExecuteCommand();
}
}
-
+ Db.CommitTran();
return modelList;
@@ -980,6 +1069,7 @@
}
catch (Exception e)
{
+ Db.RollbackTran();
throw new Exception(e.Message);
}
}
@@ -1032,7 +1122,7 @@
model.BoxNo = data.BoxNo; // 绠卞彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo,260, 15,true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo,160, 40,false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1087,7 +1177,7 @@
model.BoxNo = data.BoxNo; // 绠卞彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1139,7 +1229,7 @@
model.BoxNo = data.BoxNo3; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1191,7 +1281,7 @@
model.BoxNo = data.BoxNo3; // 绠卞彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1255,7 +1345,7 @@
model1.Qty = dataList.Sum(m=>m.Qty);// 鏁伴噺
model1.BoxNo = data.BoxNo; // 绠卞彿
- model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 15, true);
+ model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model1);
@@ -1274,7 +1364,7 @@
model.Qty = data.Qty;// 鏁伴噺
model.BoxNo = data.BoxNo3; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1321,7 +1411,7 @@
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1343,7 +1433,7 @@
model1.Qty = item.Qty;// 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1389,7 +1479,7 @@
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1413,7 +1503,7 @@
model1.Qty = item.Qty; // 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
- model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 15, true);
+ model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
@@ -1481,7 +1571,7 @@
model.Qty = data.Sum(m => m.Qty); // 鏁伴噺
model.BoxNo = boxData.BoxNo; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 15, true);
+ model.ImgStr = BarcodeHelper.GetCodeBarBase64(model.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model);
@@ -1509,7 +1599,7 @@
model1.Qty = item.Qty;// 鏁伴噺
model1.BoxNo = item.BoxNo3; // 鏀彿
- model.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 15, true);
+ model1.ImgStr = BarcodeHelper.GetCodeBarBase64(model1.BoxNo, 160, 40, false);
// 娣诲姞鍒發ist闆嗗悎
printModelList.Add(model1);
@@ -1540,9 +1630,6 @@
#endregion
- //dataContext.WmsLabelPrintLog.InsertAllOnSubmit(printlog);
- // dataContext.SubmitChanges();
- // return printModel;
return printModelList;
}
catch (Exception e)
@@ -1550,5 +1637,188 @@
throw new Exception(e.Message);
}
}
+
+ //鏍规嵁鍏ュ簱鍗曞彿杩囧幓鍗曟嵁涓嬫墍鏈夋壒娆″彿
+ public List<string> GetLotNoListByAsn(string asnNo)
+ {
+ try
+ {
+ var data = new List<string>();
+ var asnList = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo).ToList();
+ if (asnList.Count == 0)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ュ崟鎹彿鐨勪俊鎭�");
+ }
+
+ foreach (var item in asnList)
+ {
+ if (string.IsNullOrWhiteSpace(item.LotNo))
+ {
+ continue;
+ }
+
+ var strList = item.LotNo.Split(";");
+ foreach (var str in strList)
+ {
+ if (string.IsNullOrWhiteSpace(str))
+ {
+ continue;
+ }
+ data.Add(str);
+ }
+ }
+
+ return data;
+ }
+ catch (Exception e)
+ {
+ throw new Exception(e.Message);
+ }
+ }
+
+ //鍒犻櫎鍗曟嵁涓嬪崟涓垨澶氫釜鎵规鐨勬爣绛�
+ public void DelLabelByAsnNo(string asnNo,string lotNo, int userId)
+ {
+ try
+ {
+ var asnList = Db.Queryable<BllArrivalNoticeDetail>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo).ToList();
+ if (asnList.Count == 0)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ュ崟鎹彿鐨勪俊鎭�");
+ }
+
+ Db.BeginTran();
+
+ //鎵规涓虹┖锛氬綋鍓嶅崟鎹笅鎵�鏈夋壒娆$殑鏍囩鍏ㄩ儴鍒犻櫎锛� 鏈夋壒娆★細浼ゅ褰撳墠鍗曟嵁涓嬪綋鍓嶆壒娆$殑鏍囩
+ if (string.IsNullOrWhiteSpace(lotNo)) //鍒犻櫎鍏ㄩ儴鏍囩
+ {
+ var labelList = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo).ToList();
+ if (labelList.Count(m => m.Status != "0") >= 1)
+ {
+ throw new Exception("褰撳墠鍗曟嵁鎵规鐨勬爣绛惧凡鏈夊凡浣跨敤锛屼笉鑳藉垹闄�");
+ }
+
+ //foreach (var item in asnList)
+ //{
+ // if (string.IsNullOrWhiteSpace(item.LotNo))
+ // {
+ // continue;
+ // }
+
+ // item.LotNo = "";
+ // Db.Updateable(item).ExecuteCommand();
+
+ //}
+ Db.Deleteable(labelList).ExecuteCommand();
+ }
+ else //鍒犻櫎鍥哄畾鎵规鏍囩
+ {
+ var labelList = Db.Queryable<BllBoxInfo>().Where(m => m.IsDel == "0" && m.ASNNo == asnNo && m.LotNo == lotNo).ToList();
+ if (labelList.Count(m=>m.Status != "0") >= 1 )
+ {
+ throw new Exception("褰撳墠鍗曟嵁鎵规鐨勬爣绛惧凡鏈夊凡浣跨敤锛屼笉鑳藉垹闄�");
+ }
+
+ //foreach (var item in asnList)
+ //{
+ // if (string.IsNullOrWhiteSpace(item.LotNo) || item.LotNo!=lotNo)
+ // {
+ // continue;
+ // }
+
+ // var strList = item.LotNo.Split(";");
+ // var updateLotNo = "";
+ // foreach (var str in strList)
+ // {
+ // if (string.IsNullOrWhiteSpace(str) || str == lotNo)
+ // {
+ // continue;
+ // }
+
+ // if (string.IsNullOrWhiteSpace(updateLotNo))
+ // {
+ // updateLotNo = str;
+ // }
+ // else
+ // {
+ // updateLotNo += ";" + str;
+ // }
+
+ // }
+
+ // item.LotNo = updateLotNo;
+ // Db.Updateable(item).ExecuteCommand();
+
+ //}
+ Db.Deleteable(labelList).ExecuteCommand();
+ }
+
+ Db.CommitTran();
+
+ var msg = $"鍒犻櫎浜嗗崟鎹彿锛歿asnNo}";
+ if (!string.IsNullOrWhiteSpace(lotNo))
+ {
+ msg += $"銆佹壒娆″彿锛歿lotNo}";
+ }
+ msg += "鐨勬爣绛句俊鎭�";
+
+ new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鐗╂枡鏍囩", asnNo, "鍒犻櫎", msg, userId);
+ }
+ catch (Exception e)
+ {
+ Db.RollbackTran();
+ throw new Exception(e.Message);
+ }
+ }
+
+
+ //缂栬緫鏍囩鏁伴噺
+ public void EditLabelQty(int id, string qty, int userId)
+ {
+ try
+ {
+ if (string.IsNullOrWhiteSpace(qty))
+ {
+ throw new Exception("缂栬緫鏁伴噺涓嶅彲涓虹┖");
+ }
+ var qtyData = 0m;
+ var isOk = decimal.TryParse(qty, out qtyData);
+ var boxInfo = Db.Queryable<BllBoxInfo>().First(m => m.IsDel == "0" && m.Id == id);
+ if (boxInfo == null)
+ {
+ throw new Exception("鏈煡璇㈠埌璇ユ爣绛句俊鎭�");
+ }
+
+ if (isOk)
+ {
+ if (qtyData <= 0)
+ {
+ throw new Exception("鏁伴噺涓嶈兘灏忎簬绛変簬0");
+ }
+ boxInfo.Qty = qtyData;
+
+ Db.Updateable(boxInfo).ExecuteCommand();
+ }
+ else
+ {
+ throw new Exception("鏁伴噺杞崲澶辫触");
+ }
+
+ var msg = $"缂栬緫浜嗙鍙凤細{boxInfo.BoxNo}";
+ if (!string.IsNullOrWhiteSpace(boxInfo.BoxNo3))
+ {
+ msg += $"銆佹敮鍙凤細{boxInfo.BoxNo3}";
+ }
+ msg += "鐨勬爣绛炬暟閲忎俊鎭�";
+
+ new OperationASNServer().AddLogOperationAsn("鍏ュ簱浣滀笟", "鐗╂枡鏍囩", boxInfo.BoxNo, "缂栬緫", msg, userId);
+ }
+ catch (Exception e)
+ {
+ throw new Exception(e.Message);
+ }
+ }
+
+
}
}
--
Gitblit v1.8.0