From b891b1ca5af8e615ca68d5055e0babea5daa748b Mon Sep 17 00:00:00 2001 From: zrg <z1873@LAPTOP-EAVL132E> Date: 星期四, 26 六月 2025 18:16:38 +0800 Subject: [PATCH] 1 --- WebAPI/Controllers/条码管理/WEBSController.cs | 415 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 413 insertions(+), 2 deletions(-) diff --git "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" index 6bfacd5..74778b0 100644 --- "a/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" +++ "b/WebAPI/Controllers/\346\235\241\347\240\201\347\256\241\347\220\206/WEBSController.cs" @@ -32,6 +32,7 @@ public WebS.WebService1 oWebs = new WebS.WebService1(); public WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS(); Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + DBUtility.ClsXt_BaseBill oBaseBill = new DBUtility.ClsXt_BaseBill(); string ComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О @@ -951,11 +952,18 @@ /// <returns></returns> [Route("WEBSController/GetEquipList_Json")] [HttpGet] - public object GetEquipList_Json(string Equip) + public object GetEquipList_Json(string Equip,int HCenterID) { try { - ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName from h_v_Gy_EquipFileBill where HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%'", "h_v_Gy_EquipFileBill"); + if (HCenterID !=0) + { + ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName,HCenterID from h_v_Gy_EquipFileBill where HCenterID='"+HCenterID+"' and ( HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%')", "h_v_Gy_EquipFileBill"); + } + else + { + ds = oCn.RunProcReturn("select HInterID,HEquipFileNumber,HName,HSourceID,HSourceName from h_v_Gy_EquipFileBill where HEquipFileNumber like '%" + Equip + "%' or HName like '%" + Equip + "%'", "h_v_Gy_EquipFileBill"); + } if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; @@ -4186,6 +4194,208 @@ objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "涓婃枡闃查敊鍗曚笂浼犲け璐ワ紒" + e.Message; + objJsonResult.data = null; + return objJsonResult; + } + } + + #endregion + + #region 杞﹂棿涓婃灦鍗� 涓婁紶鐢熷崟 + + /// <summary> + /// 杞﹂棿涓婃灦鍗曟柊澧炰笂浼� + /// </summary> + /// <returns></returns> + [Route("WEBSController/set_SaveMaterialUpperBill_Json")] + [HttpPost] + public object set_SaveMaterialUpperBill_Json([FromBody] JObject oMain) + { + BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew; + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + try + { + string sMainStr = "[" + msg1.ToString() + "]"; + List<Model.ClsKf_WorkShopICStockBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsKf_WorkShopICStockBillMain>>(sMainStr); + + //鍗曟嵁鍙锋槸鍚﹂噸澶� + if (oBaseBill.IsExistBillNo(ref ClsPub.sExeReturnInfo, mainList[0].HBillNo, BillStatus, mainList[0].HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� + string s = ""; + int sYear = 0; + int sPeriod = 0; + if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(mainList[0].HDate, ref sYear, ref sPeriod, ref s) == false) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = s; + objJsonResult.data = null; + return objJsonResult; + } + oCn.BeginTran(); + //鐢熸垚鍗曟嵁 + //鎻掑叆涓昏〃 + oCn.RunProc("Insert Into Kf_WorkShopICStockBillMain " + + "(HInterID,HBillNo,HBillType,HBillSubType,HDate,HRemark" + + ",HYear,HPeriod,HMaker,HMakeDate,HStockOrgID" + + ",HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo" + + ",HMangerID,HSecManagerID,HKeeperID,HDeptID" + + ") " + + " values(" + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillNo + "','" + mainList[0].HBillType + "','" + mainList[0].HBillSubType + "','" + mainList[0].HDate.ToShortDateString() + "','" + mainList[0].HRemark + "'" + + ", " + sYear.ToString() + "," + sPeriod.ToString() + ",'" + mainList[0].HMaker + "',getdate()," + mainList[0].HSTOCKORGID.ToString() + + ",'" + mainList[0].HMainSourceBillType + "'," + mainList[0].HMainSourceInterID.ToString() + "," + mainList[0].HMainSourceEntryID.ToString() + ",'" + mainList[0].HMainSourceBillNo + "'" + + ", " + mainList[0].HMangerID.ToString() + "," + mainList[0].HSecManagerID.ToString() + "," + mainList[0].HKeeperID.ToString() + "," + mainList[0].HDeptID.ToString() + + ") "); + //鎻掑叆瀛愯〃 + ds = oCn.RunProcReturn("exec h_p_Kf_MaterialUpperBillSub_Insert " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillNo + "'", "h_p_Kf_MaterialUpperBillSub_Insert"); + + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁淇濆瓨澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["s"]) != "OK") + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["s"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + //鏇存柊杞﹂棿鐗╂枡搴撳瓨 + oCn.RunProc("EXEC h_p_WMS_UPDateICinventory_WorkShop " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillType + "'"); + //鏇存柊杞﹂棿鏉$爜搴撳瓨 + oCn.RunProc("EXEC h_p_WMS_UPDateBarCodeICinventory_WorkShop " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillType + "',1"); + oCn.Commit(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍗曟嵁鍙凤細" + mainList[0].HBillNo + " 鏂板鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杞﹂棿涓婃灦鍗曚笂浼犲け璐ワ紒" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + #endregion + + #region 杞﹂棿涓嬫灦鍗� 涓婁紶鐢熷崟 + + /// <summary> + /// 杞﹂棿涓嬫灦鍗曟柊澧炰笂浼� + /// </summary> + /// <returns></returns> + [Route("WEBSController/set_SaveMaterialLowerBill_Json")] + [HttpPost] + public object set_SaveMaterialLowerBill_Json([FromBody] JObject oMain) + { + BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew; + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + try + { + string sMainStr = "[" + msg1.ToString() + "]"; + List<Model.ClsKf_WorkShopICStockBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsKf_WorkShopICStockBillMain>>(sMainStr); + + //鍗曟嵁鍙锋槸鍚﹂噸澶� + if (oBaseBill.IsExistBillNo(ref ClsPub.sExeReturnInfo, mainList[0].HBillNo, BillStatus, mainList[0].HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� + string s = ""; + int sYear = 0; + int sPeriod = 0; + if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(mainList[0].HDate, ref sYear, ref sPeriod, ref s) == false) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = s; + objJsonResult.data = null; + return objJsonResult; + } + oCn.BeginTran(); + //鐢熸垚鍗曟嵁 + //鎻掑叆涓昏〃 + oCn.RunProc("Insert Into Kf_WorkShopICStockBillMain " + + "(HInterID,HBillNo,HBillType,HBillSubType,HDate,HRemark" + + ",HYear,HPeriod,HMaker,HMakeDate,HStockOrgID" + + ",HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo" + + ",HMangerID,HSecManagerID,HKeeperID,HDeptID" + + ") " + + " values(" + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillNo + "','" + mainList[0].HBillType + "','" + mainList[0].HBillSubType + "','" + mainList[0].HDate.ToShortDateString() + "','" + mainList[0].HRemark + "'" + + ", " + sYear.ToString() + "," + sPeriod.ToString() + ",'" + mainList[0].HMaker + "',getdate()," + mainList[0].HSTOCKORGID.ToString() + + ",'" + mainList[0].HMainSourceBillType + "'," + mainList[0].HMainSourceInterID.ToString() + "," + mainList[0].HMainSourceEntryID.ToString() + ",'" + mainList[0].HMainSourceBillNo + "'" + + ", " + mainList[0].HMangerID.ToString() + "," + mainList[0].HSecManagerID.ToString() + "," + mainList[0].HKeeperID.ToString() + "," + mainList[0].HDeptID.ToString() + + ") "); + //鎻掑叆瀛愯〃 + ds = oCn.RunProcReturn("exec h_p_Kf_MaterialLowerBillSub_Insert " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillNo + "'", "h_p_Kf_MaterialLowerBillSub_Insert"); + + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁淇濆瓨澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["s"]) != "OK") + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["s"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + //鏇存柊杞﹂棿鐗╂枡搴撳瓨 + oCn.RunProc("EXEC h_p_WMS_UPDateICinventory_WorkShop " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillType + "'"); + //鏇存柊杞﹂棿鏉$爜搴撳瓨 + oCn.RunProc("EXEC h_p_WMS_UPDateBarCodeICinventory_WorkShop " + mainList[0].HInterID.ToString() + ",'" + mainList[0].HBillType + "',-1"); + oCn.Commit(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍗曟嵁鍙凤細" + mainList[0].HBillNo + " 鏂板鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + oCn.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "杞﹂棿涓嬫灦鍗曚笂浼犲け璐ワ紒" + e.ToString(); objJsonResult.data = null; return objJsonResult; } @@ -8252,6 +8462,207 @@ #endregion + #region 涓婃灦銆佷笅鏋跺崟妯″潡璋冪敤鏂规硶 20250520 + + #region 涓嬫灦鍗曟壂鐮佹ā鍧� 鎵弿婧愬崟鏉$爜璋冪敤鏂规硶 + /// <summary> + /// 鎵弿婧愬崟鏉$爜 + /// </summary> + /// <returns></returns> + [Route("WEBSController/Get_SourceBarCode_MaterialLower_Json")] + [HttpGet] + public object get_SourceBarCode_MaterialLower_Json(Int64 HInterID, string HBillNo, string HBillType, string HSourceBillNo, string HSourceBillType, string HMaker, Int64 HStockOrgID) + { + try + { + ds = oCn.RunProcReturn("exec h_p_WMS_AddSourceBarCode_MaterialLower " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HSourceBillNo + "','" + HSourceBillType + "','" + HMaker + "'," + HStockOrgID.ToString(), "h_p_WMS_AddSourceBarCode_MaterialLower"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵弿婧愬崟鏉$爜锛屽啓鍏ユ簮鍗曚复鏃惰〃澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + List<object> columnNameList = new List<object>(); + //娣诲姞鍒楀悕 + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + columnNameList.Add(JsonConvert.DeserializeObject(ColmString)); //鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵弿婧愬崟鏉$爜澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + #endregion + + #region 涓婃灦銆佷笅鏋跺崟鎵爜妯″潡 鎵弿鐗╂枡鏉$爜璋冪敤鏂规硶 + /// <summary> + /// 鎵弿鐗╂枡鏉$爜 + /// </summary> + /// <returns></returns> + [Route("WEBSController/Get_BarCode_WorkShop_Json")] + [HttpGet] + public object Get_BarCode_WorkShop_Json(string HBarCode, Int64 HInterID, string HBillType, string HBillNo, string HMaker, Int64 HWhID, Int64 HSPID, Double HQty, bool SourceFlag, string HSourceBillType, string HCarBarCode, Int64 HStockOrgID) + { + //鑾峰彇绯荤粺鍙傛暟 + string sErrMsg = ""; + if (oSystemParameter.ShowBillByOrgID(HStockOrgID, ref sErrMsg) == true) + { + string sBatchNoCtl = "N"; //鏄惁杩涜鎵瑰彿鏍稿锛�'Y'涓烘牳瀵规壒鍙凤級 + string sMustQtyCtl = "灏忎簬绛変簬搴旀敹"; //搴旀敹鏁伴噺鎺у埗锛堝皬浜庣瓑浜庡簲鏀躲�佸畬鍏ㄧ瓑浜庡簲鏀躲�佷笉鎺у埗锛� + + //涓嬫灦鍗� + if (HBillType == "1252") + { + //鏄惁杩涜鎵瑰彿鏍稿锛�'Y'涓烘牳瀵规壒鍙凤級 + if (oSystemParameter.omodel.Kf_MaterialLowerBill_BatchNoCtl.ToUpper() == "Y") + { + sBatchNoCtl = "Y"; + } + //鎵爜鏁伴噺鑳藉惁鍙秴鍗曟嵁鏁伴噺鎺у埗锛堝皬浜庣瓑浜庡簲鏀躲�佸畬鍏ㄧ瓑浜庡簲鏀躲�佷笉鎺у埗锛� + if (oSystemParameter.omodel.Kf_MaterialLowerBill_MustQtyCtl == "灏忎簬绛変簬搴旀敹") + { + sMustQtyCtl = "灏忎簬绛変簬搴旀敹"; + } + else if (oSystemParameter.omodel.Kf_MaterialLowerBill_MustQtyCtl == "瀹屽叏绛変簬搴旀敹") + { + sMustQtyCtl = "瀹屽叏绛変簬搴旀敹"; + } + else + { + sMustQtyCtl = "涓嶆帶鍒�"; + } + } + + try + { + ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_WorkShop " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "'," + HQty.ToString() + ",'" + HSourceBillType + "'," + HWhID.ToString() + "," + HSPID.ToString() + ",'" + HCarBarCode + "'," + HStockOrgID.ToString() + ",'" + HMaker + "'," + DBUtility.ClsPub.BoolToString(SourceFlag) + ",'" + sBatchNoCtl + "','" + sMustQtyCtl + "'", "h_p_WMS_AddBarCode_WorkShop"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵弿鐗╂枡鏉$爜锛屽啓鍏ヤ复鏃惰〃澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵弿鐗╂枡鏉$爜澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + } + + #endregion + + #region 杞﹂棿鐗╂枡搴撳瓨鏌ヨ璋冪敤鏂规硶 + /// <summary> + /// 鑾峰彇杞﹂棿鐗╂枡鎵�鍦ㄤ綅缃� + /// </summary> + /// <returns></returns> + [Route("WEBSController/GetICInventory_WorkShop_Json")] + [HttpGet] + public object GetICInventory_WorkShop_Json(string HBillType, Int64 HMaterID, Int64 HAuxPropID, string HBatchNo, Int64 HProcessExchangeInterID) + { + try + { + ds = oCn.RunProcReturn("exec h_p_KF_ICInventory_WorkShop '" + HBillType + "'," + HMaterID.ToString() + "," + HAuxPropID.ToString() + ",'" + HBatchNo + "'," + HProcessExchangeInterID.ToString(), "h_p_KF_ICInventory_WorkShop"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍缁撴灉锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + List<object> columnNameList = new List<object>(); + //娣诲姞鍒楀悕 + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + columnNameList.Add(JsonConvert.DeserializeObject(ColmString)); //鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏌ヨ杞﹂棿鐗╂枡搴撳瓨澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #endregion + + + #region 鐗╂枡鏉$爜鏌ヨ璋冪敤鏂规硶 /// <summary> /// 鑾峰彇鏉$爜淇℃伅 -- Gitblit v1.9.1