From fc8498c2b7d6cf56f1f8a2e3c1b740fbf05ac4fd Mon Sep 17 00:00:00 2001 From: 王 垚 <1402714037@qq.com> Date: 星期四, 01 十二月 2022 15:07:56 +0800 Subject: [PATCH] 代码上传 --- WebAPI/Controllers/BarCodeController.cs | 199 +++++++++++++++++++++++++++---------------------- 1 files changed, 108 insertions(+), 91 deletions(-) diff --git a/WebAPI/Controllers/BarCodeController.cs b/WebAPI/Controllers/BarCodeController.cs index 53f2a0a..2d97267 100644 --- a/WebAPI/Controllers/BarCodeController.cs +++ b/WebAPI/Controllers/BarCodeController.cs @@ -1523,46 +1523,14 @@ UserName = oItem.HMaker; } DAL.ClsWeb_BarCodeBill oBill = new DAL.ClsWeb_BarCodeBill(); - msg3 = msg3.Substring(1, msg3.Length - 2); msg3 = msg3.Replace("\\", ""); msg3 = msg3.Replace("\n", ""); //\n - List<Model.ClsGy_MaterialList_WMS_Model> ls = new List<Model.ClsGy_MaterialList_WMS_Model>(); List<Model.ClsGy_BarCodeBill_WMS_Model> ls2 = new List<Model.ClsGy_BarCodeBill_WMS_Model>(); List<Model.ClsGy_BarCodeBill_WMS_Model> ls3 = new List<Model.ClsGy_BarCodeBill_WMS_Model>(); ls = oListModels.getObjectByJson_MaterialList(msg3); - foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) - { - if (oBill.CheckBarCode(oItemSub.HSourceInterID, oItemSub.HSourceEntryID) == false) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "宸插瓨鍦ㄦ潯鐮侊紝涓嶅厑璁搁噸澶嶇敓鎴愶紒"; - objJsonResult.data = null; - return objJsonResult; - } - if (msg2 != string.Empty) - { - if (oItemSub.HBQty == 0 || oItemSub.HMinQty == 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鍐呯鍖呰鏁颁笉鑳戒负0锛�"; - objJsonResult.data = null; - return objJsonResult; - } - if (oItemSub.HWBQty == 0 || oItemSub.HWXQty == 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "澶栫鍖呰鏁颁笉鑳戒负0锛�"; - objJsonResult.data = null; - return objJsonResult; - } - } - } long linterid = Pub_Class.ClsPub.CreateBillID_SRMProd("8888", ref DBUtility.ClsPub.sExeReturnInfo); int LSHlen = 6; //娴佹按鍙烽暱搴� int SumLen = 10; //鎬婚暱搴� @@ -1585,6 +1553,9 @@ LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]); foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) { + //鏁伴噺涓�0 璺宠繃 + if (oItemSub.HQty == 0) + continue; if (ClsPub.isLong(oItemSub.HMaterID) != 0) { HNumber = oItemSub.HMaterID.ToString(); @@ -1596,8 +1567,8 @@ HSumQty = ClsPub.isDoule(oItemSub.HQty); //浜у搧鏁伴噺 for (int i = 0; i < HBQty; i++) { - // 瀹夌憺鏉$爜瑙勫垯锛氱墿鏂欑紪鐮侊紙绯荤粺浠e叆锛堾鐗╂枡鍚嶇О锛堢郴缁熶唬鍏ワ級@瑙勬牸鍨嬪彿锛堢郴缁熶唬鍏ワ級@鐢熶骇鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鏁伴噺锛堟墜宸ヨ緭鍏ワ級@澶辨晥鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鎵规鍙凤紙鎵嬪伐浠e叆锛堾渚涘簲鍟嗗悕绉帮紙绯荤粺浠e叆锛堾閲囪喘璁㈠崟鍙凤紙绯荤粺浠e叆锛� - TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{oItemSub.HQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; + //// 瀹夌憺鏉$爜瑙勫垯锛氱墿鏂欑紪鐮侊紙绯荤粺浠e叆锛堾鐗╂枡鍚嶇О锛堢郴缁熶唬鍏ワ級@瑙勬牸鍨嬪彿锛堢郴缁熶唬鍏ワ級@鐢熶骇鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鏁伴噺锛堟墜宸ヨ緭鍏ワ級@澶辨晥鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鎵规鍙凤紙鎵嬪伐浠e叆锛堾渚涘簲鍟嗗悕绉帮紙绯荤粺浠e叆锛堾閲囪喘璁㈠崟鍙凤紙绯荤粺浠e叆锛� + //TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{oItemSub.HQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; if (HSumQty - HMinQty > 0) { @@ -1617,7 +1588,10 @@ HMinQty = HSumQty; } + // 瀹夌憺鏉$爜瑙勫垯锛氱墿鏂欑紪鐮侊紙绯荤粺浠e叆锛堾鐗╂枡鍚嶇О锛堢郴缁熶唬鍏ワ級@瑙勬牸鍨嬪彿锛堢郴缁熶唬鍏ワ級@鐢熶骇鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鏁伴噺锛堟墜宸ヨ緭鍏ワ級@澶辨晥鏃ユ湡锛堟墜宸ヨ緭鍏ワ級@鎵规鍙凤紙鎵嬪伐浠e叆锛堾渚涘簲鍟嗗悕绉帮紙绯荤粺浠e叆锛堾閲囪喘璁㈠崟鍙凤紙绯荤粺浠e叆锛� + TM = $"{oItemSub.HMaterNumber}@{oItemSub.HMaterName}@{oItemSub.HMaterModel}@{oItemSub.HKFDate}@{HMinQty}@{oItemSub.HKFDQDate}@{oItemSub.HBatchNo}@{oItemSub.HSupName}@{oItemSub.HSourceBillNo}"; Model.ClsGy_BarCodeBill_WMS_Model bar = new Model.ClsGy_BarCodeBill_WMS_Model(); + bar.HBarCode = TM; bar.HMaterID = oItemSub.HMaterID; //bar.HMaterNumber = oItemSub.HMaterNumber; @@ -1654,6 +1628,7 @@ int SumLen2 = 4; string TM2 = ""; double HWXQty = 0; + double HBarcodeQty = ClsPub.isDoule(oItemSub2.HQty); LSH = ClsPub.isInt(Ds.Tables[0].Rows[0][0]) + 1; // @@ -1705,10 +1680,7 @@ TM2 = "0" + TM2; } bar2.HMaterID = oItemSub2.HMaterID; - - - bar2.HBarCode = oItemSub2.HBarCode + "-" + TM2; - + bar2.HBarCode = oItemSub2.HBarCode.Replace(HBarcodeQty.ToString(), HWXQty.ToString()); bar2.HUnitID = oItemSub2.HUnitID; bar2.HQty = HWXQty; bar2.HBatchNo = DBUtility.ClsPub.isStrNull(oItemSub2.HBatchNo); @@ -1745,68 +1717,113 @@ string HWei = ""; string HMTONO = ""; oCn.BeginTran(); - foreach (Model.ClsGy_BarCodeBill_WMS_Model oItemSub in ls2) + foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) { - if (ClsPub.isLong(oItemSub.HMaterID) != 0) + //鏇存柊鏉$爜妗f 璇ユ簮鍗曞叾瀹冩潯鐮侀粯璁ゅ凡缁忔墦鍗拌繃涓�娆� + oCn.RunProc($"update Gy_BarCodeBill set HPrintQty += 1 where HPrintQty = 0 and HSourceInterID={oItemSub.HSourceInterID} and HSourceEntryID = {oItemSub.HSourceEntryID}"); + } + //澶栫 + var oItemSubGroup = ls2.GroupBy(x => new { x.HSourceEntryID }).Select(y => new Model.ClsGy_BarCodeBill_WMS_Model { HSourceEntryID = y.Key.HSourceEntryID }); + foreach (var oitem in oItemSubGroup) + { + var SubModel = ls2.Where(x => x.HSourceEntryID == oitem.HSourceEntryID).ToList(); + int count = 1; + foreach (var oItemSub in SubModel) { - HBarCode = oItemSub.HBarCode.ToString(); - HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); - HBarCodeType = "绠卞彿鏉$爜"; - HMaterID = ClsPub.isLong(oItemSub.HMaterID); - HUnitID = ClsPub.isLong(oItemSub.HUnitID); - HQty2 = ClsPub.isDoule(oItemSub.HQty); - HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); - HSupID = oItemSub.HSupID; - HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); - HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); - HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); - HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); - HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); - HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); - HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); - HWei = ClsPub.isStrNull(oItemSub.HEndQty); - oCn.RunProc("insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + - ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + - ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + - ") values (" - + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate - + "','" + HBatchNo + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" - + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"); - oCn.RunProc("exec setLSH '" + DateTime.Today + "'"); + + if (ClsPub.isLong(oItemSub.HMaterID) != 0) + { + HBarCode = oItemSub.HBarCode.ToString(); + HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); + HBarCodeType = "绠卞彿鏉$爜"; + HMaterID = ClsPub.isLong(oItemSub.HMaterID); + HUnitID = ClsPub.isLong(oItemSub.HUnitID); + HQty2 = ClsPub.isDoule(oItemSub.HQty); + HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); + HSupID = oItemSub.HSupID; + HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); + HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); + HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); + HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); + HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); + HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); + HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); + HWei = ClsPub.isStrNull(oItemSub.HEndQty); + + string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + + ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + + ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + + ") values (" + + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate + + "','" + HBatchNo + "','" + SubModel.Count + "','" + count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" + + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; + LogService.Write(sql); + oCn.RunProc(sql); + oCn.RunProc("exec setLSH '" + DateTime.Today + "'"); + count++; + } } } - foreach (Model.ClsGy_BarCodeBill_WMS_Model oItemSub in ls3) + //鍐呯 + var _oItemSubGroup = ls3.GroupBy(x => new { x.HSourceEntryID }).Select(y => new Model.ClsGy_BarCodeBill_WMS_Model { HSourceEntryID = y.Key.HSourceEntryID }); + foreach (var oitem in _oItemSubGroup) { - if (ClsPub.isLong(oItemSub.HMaterID) != 0) + var SubModel = ls3.Where(x => x.HSourceEntryID == oitem.HSourceEntryID).ToList(); + int _count = 1; + foreach (var oItemSub in SubModel) { - HBarCode = oItemSub.HBarCode.ToString(); - HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); - HBarCodeType = "绠卞彿鍐呮潯鐮�"; - HMaterID = ClsPub.isLong(oItemSub.HMaterID); - HUnitID = ClsPub.isLong(oItemSub.HUnitID); - HQty2 = ClsPub.isDoule(oItemSub.HQty); - HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); - HSupID = oItemSub.HSupID; - HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); - HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); - HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); - HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); - HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); - HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); - HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); - HWei = ClsPub.isStrNull(oItemSub.HEndQty); - oCn.RunProc("insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + - ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + - ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + - ") values (" - + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate - + "','" + HBatchNo + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" - + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"); + if (ClsPub.isLong(oItemSub.HMaterID) != 0) + { + HBarCode = oItemSub.HBarCode.ToString(); + HMTONO = ClsPub.isStrNull(oItemSub.HMTONO); + HBarCodeType = "绠卞彿鍐呮潯鐮�"; + HMaterID = ClsPub.isLong(oItemSub.HMaterID); + HUnitID = ClsPub.isLong(oItemSub.HUnitID); + HQty2 = ClsPub.isDoule(oItemSub.HQty); + HBatchNo = ClsPub.isStrNull(oItemSub.HBatchNo); + HSupID = oItemSub.HSupID; + HKFPeriod = ClsPub.isInt(oItemSub.HKFPeriod); + HKFDate = ClsPub.isStrNull(oItemSub.HKFDate); + HKFDQDate = ClsPub.isStrNull(oItemSub.HKFDQDate); + HSourceInterID = ClsPub.isLong(oItemSub.HSourceInterID); + HSourceEntryID = ClsPub.isLong(oItemSub.HSourceEntryID); + HSourceBillNo = ClsPub.isStrNull(oItemSub.HSourceBillNo); + HSourceBillType = ClsPub.isStrNull(oItemSub.HSourceBillType); + HWei = ClsPub.isStrNull(oItemSub.HEndQty); + string sql = "insert into Gy_BarCodeBill (HInterID,HBarCode,HBarCodeType,HMaterID,HUnitID,HQty,HKFDate,HKFPeriod,HKFDQDate" + + ",HBatchNo,HBarcodeQtys,HBarcodeNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HEndQty,HSupflag" + + ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HMTONO " + + ") values (" + + linterid.ToString() + ",'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID + "," + HUnitID + "," + HQty2 + ",'" + HKFDate + "'," + HKFPeriod + ",'" + HKFDQDate + + "','" + HBatchNo + "','" + SubModel.Count + "','" + _count + "'," + HSupID + "," + HGroupID + ",'" + ClsPub.CurUserName + "','" + DateTime.Today + "'," + HPrintQty + ",'" + HWei + "',1" + + "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HMTONO + "')"; + LogService.Write(sql); + oCn.RunProc(sql); + _count++; + } } } //鏆傛椂鍙洖濉叧鑱旀暟閲� - oCn.RunProc("exec H_p_SRM_BarCodeBill_Update_UpdateBillRelateData " + linterid.ToString()); + foreach (Model.ClsGy_MaterialList_WMS_Model oItemSub in ls) + { + if (oItemSub.HQty == 0) + continue; + //鏇存柊鏉$爜妗f 璇ユ簮鍗曞叾瀹冩潯鐮侀粯璁ゅ凡缁忔墦鍗拌繃涓�娆� + //鏇存柊 宸叉墦鍗版暟閲� + if (oItemSub.HSourceBillType == "1102") + { + string sql = string.Empty; + sql = string.Format(@" +update t1 set +t1.HBarcodeCount = +isnull((select sum(HQty)from Gy_BarCodeBill where HSourceInterID = t1.HInterID and HSourceEntryID = t1.HEntryID and HBarCodeType ='绠卞彿鏉$爜'),0) +from Cg_POOrderBillSub t1 +where t1.HInterID = {0} and t1.HEntryID ={1}", oItemSub.HSourceInterID, oItemSub.HSourceEntryID); + oCn.RunProc(sql); + } + } oCn.Commit(); + } catch (Exception e) { @@ -1960,7 +1977,7 @@ //oCN.RunProc($"update WW_EntrustOrderBillSub set HBarcodeCount -= {dr["HQty"]} where HInterID ={dr["HSourceInterID"]} and HEntryID ={dr["HSourceEntryID"]}"); } } - //oCN.RunProc("Delete From Gy_BarCodeBill where HItemID in(" + HInterID + ") "); + oCN.RunProc("Delete From Gy_BarCodeBill where HItemID in(" + HInterID + ") "); oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; -- Gitblit v1.9.1