From 1acaaf8b965090eb4a8d16d1b66bdaca3d43c1ef Mon Sep 17 00:00:00 2001 From: yxj <1qaz@123> Date: 星期五, 23 十二月 2022 18:00:06 +0800 Subject: [PATCH] 扫描物料条码参加参数判断是否解析,安瑞须解析 --- WebAPI/Controllers/CJGL/Cj_StationInBillController.cs | 391 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 357 insertions(+), 34 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs index b6fe620..9656f57 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; @@ -15,6 +16,9 @@ { public DBUtility.ClsPub.Enum_BillStatus BillStatus; + //鑾峰彇绯荤粺鍙傛暟 + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; @@ -27,12 +31,30 @@ { var _value = oMain["oMain"].ToString(); string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); try { //濮斿宸ュ簭鍙戝嚭鍙嶅簭鍒楀寲 - msg1 = "[" + msg1.ToString() + "]"; - List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg1); + string msg2 = "[" + sArray[0].ToString() + "]"; + string user = sArray[1].ToString(); + + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg2); + long HMainInterID = 0; + HMainInterID = list[0].HMainInterID; long HProcExchInterID = list[0].lngBillKey;//娴佽浆鍗′富鍐呯爜 + + + if (HProcExchInterID <= 0) { objJsonResult.code = "0"; @@ -50,8 +72,8 @@ objJsonResult.data = null; return objJsonResult; } - long HProcNo = list[0].HProcNo;//娴佹按鍙� - if (HProcNo <= 0) + string HProcNo = list[0].HProcNo;//娴佹按鍙� + if (HProcNo == "") { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -101,6 +123,7 @@ string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙� + long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID //鍗曟嵁瀹屾暣鎬у垽鏂� if (HMaterID <= 0) { @@ -137,13 +160,14 @@ ds = oCN.RunProcReturn("select HInterID from Sc_ProcessExchangeBillSub Where hinterid=" + HProcExchInterID + " and hprocno<" + HProcNo + " order by hprocno", "Sc_ProcessExchangeBillSub"); if (ds == null) { - oCN.RollBack(); + objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "鍒ゆ柇棣栭亾宸ュ簭澶辫触锛屼笉鍏佽淇濆瓨锛�"; objJsonResult.data = null; return objJsonResult; } + //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙� oCN.BeginTran(); @@ -166,7 +190,7 @@ ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" + ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" + ",HSupID,HQty,HPrice,HMoney,HPieceQty,HSourceName,HCenterID" + - ",HProcNo,HOrderProcNO" + + ",HProcNo,HOrderProcNO,HMainInterID,HPRDOrgID" + ") " + " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + "," + HYear + "," + HPeriod + ",'" + HRemark + "'" + @@ -174,7 +198,7 @@ ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + ",'" + HSourceName + "'," + HCenterID + - ",'" + HProcNo + "','" + HOrderProcNO + "'" + + ",'" + HProcNo + "','" + HOrderProcNO + "','" + HMainInterID + "'," + HPRDOrgID + ") "); } else if ("Modify".Equals(eventType)) @@ -270,6 +294,18 @@ } oCN.Commit(); + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.MES_StationInBill_SaveAutoAddnew == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + { + objJsonResult.Verify = "Y"; + } + else + { + objJsonResult.Verify = "N"; + } + } objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; @@ -342,39 +378,138 @@ } #endregion - #region 杩斿洖濮斿宸ュ簭鎺ユ敹鍗曞垪琛� - [Route("Cj_StationInBill/get_Display")] + + + + #region 宸ュ簭杩涚珯鎺ユ敹鍗曟牴鎹亴鍛樹唬鐮佹ā绯婂洖杞︽煡璇� + [Route("Cj_StationInBill/GetMessageByEmpNumber")] [HttpGet] - public object get_Display(string sWhere) + public object GetMessageByEmpNumber(string HEmpNumber) { try { - if (sWhere == null || sWhere.Equals("")) - { - ds = oCN.RunProcReturn("select * from h_v_MES_StationInBillList " + sWhere+ " order by 杩涚珯鏃堕棿 desc", "h_v_MES_StationInBillList"); - } - else - { - string sql1 = "select * from h_v_MES_StationInBillList where 1 = 1 "; - string sql = sql1 + sWhere; - ds = oCN.RunProcReturn(sql, "h_v_MES_StationInBillList"); - } + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("select top 1 * from gy_employee where hnumber like '%" + HEmpNumber + "%'", "gy_employee"); + //鍐欏叆淇℃伅 if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�"; + objJsonResult.Message = "鏈煡璇㈠埌鍑虹珯鍗曟槑缁嗕俊鎭紒"; objJsonResult.data = null; return objJsonResult; } - else + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + + + #region 宸ュ簭杩涚珯鎺ユ敹鍗曟牴鎹墿鏂欎唬鐮佹ā绯婂洖杞︽煡璇� + [Route("Cj_StationInBill/GetMessageByMaterNumber")] + [HttpGet] + public object GetMessageByMaterNumber(string HMaterNumber) + { + try + { + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("select top 1 * from gy_material where hnumber like '%" + HMaterNumber + "%'", "gy_material"); + //鍐欏叆淇℃伅 + if (ds == null || ds.Tables[0].Rows.Count == 0) { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "杩斿洖璁板綍鎴愬姛锛�"; - objJsonResult.data = ds.Tables[0]; + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏈煡璇㈠埌鐗╂枡淇℃伅锛�"; + objJsonResult.data = null; return objJsonResult; } + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + + + + #region 杩斿洖宸ュ簭杩涚珯鎺ユ敹鍗曞垪琛� + [Route("Cj_StationInBill/get_Display")] + [HttpGet] + public object get_Display(string sWhere,string user) + { + try + { + List<object> columnNameList = new List<object>(); + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳煡璇㈡潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("select * from h_v_MES_StationInBillList order by hmainid desc", "h_v_MES_StationInBillList"); + } + else + { + string sql1 = "select * from h_v_MES_StationInBillList where 1 = 1 "; + string sql = sql1 + sWhere+ " order by hmainid desc"; + ds = oCN.RunProcReturn(sql, "h_v_MES_StationInBillList"); + } + + //娣诲姞鍒楀悕 + 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鍒楀璞$殑鍒楀悕 + } + + //if (ds.Tables[0].Rows.Count != 0 || ds != null) + //{ + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + //} + //else + //{ + //objJsonResult.code = "0"; + //objJsonResult.count = 0; + //objJsonResult.Message = "鏃犳暟鎹�"; + //objJsonResult.data = null; + //return objJsonResult; + //} } catch (Exception e) { @@ -474,9 +609,9 @@ { try { - string ModRightNameCheck = "MES_StationInBill_Check"; + string ModRightNameCheck = "Cj_StationInBill_Check"; //瀹℃牳鏉冮檺 - if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true,CurUserName)) + if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false,CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -563,8 +698,8 @@ ds1 = oCN.RunProcReturn("select HLastProc,HFstProc " + " from Sc_ProcessExchangeBillMain a " + " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID " + - " Where a.HInterID=(Select HProcExchInterID from Sc_StationInBillMain Where HInterID=55) " + - " and b.HEntryID=(Select HProcExchEntryID from Sc_StationInBillMain Where HInterID=55)", "Sc_ProcessExchangeBillMain"); + " Where a.HInterID=(Select HProcExchInterID from Sc_StationInBillMain Where HInterID="+ lngBillKey + ") " + + " and b.HEntryID=(Select HProcExchEntryID from Sc_StationInBillMain Where HInterID="+ lngBillKey + ")", "Sc_ProcessExchangeBillMain"); if (ds1 == null || ds1.Tables[0].Rows.Count == 0) { } @@ -591,6 +726,17 @@ { try { + string ModRightNameCheck = "Cj_StationInBill_Check"; + //瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙嶅鏍稿け璐ワ紒鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (HInterID == 0) { objJsonResult.code = "0"; @@ -674,8 +820,8 @@ ds1 = oCN.RunProcReturn("select HLastProc,HFstProc " + " from Sc_ProcessExchangeBillMain a " + " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID " + - " Where a.HInterID=(Select HProcExchInterID from Sc_StationInBillMain Where HInterID=55) " + - " and b.HEntryID=(Select HProcExchEntryID from Sc_StationInBillMain Where HInterID=55)", "Sc_ProcessExchangeBillMain"); + " Where a.HInterID=(Select HProcExchInterID from Sc_StationInBillMain Where HInterID="+ lngBillKey + ") " + + " and b.HEntryID=(Select HProcExchEntryID from Sc_StationInBillMain Where HInterID="+ lngBillKey + ")", "Sc_ProcessExchangeBillMain"); if (ds1 == null || ds1.Tables[0].Rows.Count == 0) { } @@ -718,6 +864,183 @@ } #endregion - // + //鎵归噺杩涚珯 + #region 鎵归噺杩涚珯妯″潡杩斿洖鏄庣粏淇℃伅鍒楄〃 + [Route("Cj_StationInBill/get_BarCodeDetail")] + [HttpGet] + public object get_BarCodeDetail(string HMainInterID) + { + try + { + ds = oCN.RunProcReturn( + "select a.HBillNo,a.HInterID,a.HQty,a.HProcExchBillNo,a.HICMOBillNo" + + ",b.HNumber HMaterNumber,b.HName HMaterName,b.HModel HMaterModel,c.HName HSourceName,d.HName HGroupName" + + ",e.HName HEmpName,a.HMaker,a.HMakeDate " + + " from Sc_StationInBillMain a " + + " left join Gy_Material b on a.HMaterID = b.HItemID " + + " left join Gy_Source c on a.HSourceID = c.HItemID " + + " left join Gy_Group d on a.HGroupID = d.HItemID " + + " left join Gy_Employee e on a.HEmpID = e.HItemID " + + " where HMainInterID = " + HMainInterID + " order by a.HMakeDate desc", "Sc_StationInBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犺繑鍥炶褰曪紒"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "1"; + 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; + } + } + #endregion + + #region 鏍规嵁id鍒犻櫎杩涚珯鍗� + [Route("Cj_StationInBill/del_StationInBill")] + [HttpGet] + public object del_StationInBill(long HInterID,string HDeleteMan) + { + try + { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cj_StationInBill_Drop", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + DAL.ClsSc_StationInBill oBill = new DAL.ClsSc_StationInBill(); + if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (oBill.omodel.HMaker != HDeleteMan && (HDeleteMan != "admin" && HDeleteMan != "Admin")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒"; + objJsonResult.data = null; + return objJsonResult; + } + + SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + DataSet ds; + //鍒ゆ柇鏄惁瀛樺湪 鐩稿悓鍗曟嵁鍙� 鐨勯鏂欏崟 鍒ゆ柇鐢熶骇璁㈠崟鏄惁宸茬粨妗堬紝瑕佹眰璁″垝鎵嬪伐鍙嶇粨妗� + ds = oCn.RunProcReturn("exec h_p_MES_StationInBill_DelCtrl '" + oBill.omodel.HBillNo + "'", "h_p_MES_StationInBill_DelCtrl"); + if (ds == null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒ゆ柇鍏宠仈澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0].Rows.Count > 0 && Pub_Class.ClsPub.isInt(ds.Tables[0].Rows[0][0]) == 2) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); + objJsonResult.data = null; + return objJsonResult; + } + if (oBill.omodel.HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + //鍐欏叆鍒犻櫎鏃ュ織 + string WorkList = "鍒犻櫎杩涚珯鍗曪細" + oBill.omodel.HBillNo; + if (!oBill.DeleteBill(oBill.omodel.HInterID, oBill.omodel.HProcExchInterID, oBill.omodel.HProcExchEntryID, ref DBUtility.ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鏈壘鍒帮紒"; + objJsonResult.data = null; + return objJsonResult; + } + + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "寮傚父锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鏌ョ湅宸ュ簭娴佽浆鍗″叧鑱旀暟閲忓垪琛ㄥ姞杞� + [Route("Cj_StationInBill/GetStationQtyList")] + [HttpGet] + public object GetStationQtyList(string HInterID) + { + try + { + ds = oCN.RunProcReturn("execute h_p_Sc_ProcExchBilltransRelationQty @HInterID=" + HInterID, "h_p_Sc_ProcExchBilltransRelationQty"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁浣犺鎵剧殑璁板綍锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "杩斿洖璁板綍鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + } + catch (Exception ex) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion } } \ No newline at end of file -- Gitblit v1.9.1