From d971349f30f6a5faae97892a195c99d36465e7b5 Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期二, 11 六月 2024 23:40:54 +0800 Subject: [PATCH] 进站单新增优化 进站单保存 控制优化 --- WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs | 2506 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 2,445 insertions(+), 61 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs index a24cb6d..2410e0d 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; @@ -14,49 +15,68 @@ public class Cj_StationEntrustInBillController : ApiController { public DBUtility.ClsPub.Enum_BillStatus BillStatus; - + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill(); private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; - /// <summary> - /// 杩斿洖濮斿宸ュ簭鍙戝嚭鍗曞垪琛� - ///鍙傛暟锛歴tring sql銆� - ///杩斿洖鍊硷細object銆� - /// </summary> + #region 杩斿洖濮斿宸ュ簭鍙戝嚭鍗曞垪琛� [Route("Cj_StationEntrustInBill/list")] [HttpGet] - public object list(string sWhere) + public object list(string sWhere,string user) { try { - if (sWhere == null || sWhere.Equals("")) - { - ds = oCN.RunProcReturn("select * from h_v_MES_StationEntrustInBillList " + sWhere, "h_v_MES_StationEntrustInBillList"); - } - else - { - string sql1 = "select * from h_v_MES_StationEntrustInBillList where 1 = 1 "; - string sql = sql1 + sWhere; - ds = oCN.RunProcReturn(sql, "h_v_MES_StationEntrustInBillList"); - } - if (ds == null || ds.Tables[0].Rows.Count == 0) + List<object> columnNameList = new List<object>(); + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Query", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "false锛�"; + objJsonResult.Message = "鏃犳煡璇㈡潈闄�!"; objJsonResult.data = null; return objJsonResult; } + + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("select * from h_v_MES_StationEntrustInBillList", "h_v_MES_StationEntrustInBillList"); + // order by hmainid desc 鎺掑簭涓㈠埌鏁版嵁搴撻噷杩涜澶勭悊 + } else { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; - objJsonResult.data = ds.Tables[0]; - return objJsonResult; + string sql1 = "select * from h_v_MES_StationEntrustInBillList where 1 = 1 "; + string sql = sql1 + sWhere+ " order by hmainid desc"; + ds = oCN.RunProcReturn(sql, "h_v_MES_StationEntrustInBillList"); } + + //娣诲姞鍒楀悕 + 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.list = columnNameList; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + //} + //else + //{ + //objJsonResult.code = "0"; + //objJsonResult.count = 0; + //objJsonResult.Message = "鏃犳暟鎹�"; + //objJsonResult.data = null; + //return objJsonResult; + //} } catch (Exception e) { @@ -67,12 +87,9 @@ return objJsonResult; } } + #endregion - /// <summary> - /// 濮斿宸ュ簭鍙戝嚭鍗曟祦姘村彿鍥炶溅鑾峰彇娴佽浆鍗′俊鎭� - ///鍙傛暟锛歴tring sql銆� - ///杩斿洖鍊硷細object銆� - /// </summary> + #region 濮斿宸ュ簭鍙戝嚭鍗曟祦姘村彿鍥炶溅鑾峰彇娴佽浆鍗′俊鎭紙濮斿宸ュ簭鎺ユ敹銆佸伐搴忚繘绔欐帴鏀堕�氱敤锛� [Route("Cj_StationEntrustInBill/txtHBarCode_KeyDown")] [HttpGet] public object txtHBarCode_KeyDown(string HBarCode) @@ -103,7 +120,7 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "鏈煡璇㈠埌娴佽浆鍗′俊鎭紒"; + objJsonResult.Message = "鏈煡璇㈠埌娴佹按鍙蜂俊鎭紒宸ュ簭鍙烽敊璇垨鑰呭綋鍓嶅伐搴忓彿涓嶅厑璁歌繘绔欙紝璇锋坊鍔狅紒"; objJsonResult.data = null; return objJsonResult; } @@ -122,24 +139,1679 @@ return objJsonResult; } } + #endregion - /// <summary> - /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 - ///鍙傛暟锛歴tring sql銆� - ///杩斿洖鍊硷細object銆� - /// </summary> + #region 濮斿宸ュ簭鍙戝嚭鍗曟祦姘村彿鍥炶溅鑾峰彇鏉$爜淇℃伅2 + [Route("Cj_StationBill/txtHBarCode_KeyDown2")] + [HttpGet] + public object txtHBarCode_KeyDown2(string HBarCode,string HInterID,string UserID,string HBillType) + { + try + { + if (HBarCode == null || HBarCode.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绌虹櫧鐮�,鏉″舰鐮佷笉鑳戒负绌猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鎷嗗垎鏉″舰鐮� + string sBillBarCode = HBarCode.Trim(); + string[] NewBarCode; + if (sBillBarCode.CompareTo("#") > 0) + { + NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); + sBillBarCode = NewBarCode[0]; + } + string sBillNo = sBillBarCode; //鏉″舰鐮� + + string[] arr = sBillNo.Split('&'); //浠ョ鍙封��&鈥欏垎鍓叉潯褰㈢爜 + string BillNo_PGD = arr[0]; //鍗曟嵁鍙� + string entryid_PGD = "";//瀛恑d + if(arr.Length > 1) + { + entryid_PGD = arr[1]; + } + + //鎴彇鏉$爜绫诲瀷 鍓嶄袱浣� + string BillNoType1 = BillNo_PGD.Substring(0, Math.Min(2, BillNo_PGD.Length)); + //鎴彇鏉$爜绫诲瀷 鍓嶄笁浣� + string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); + //鎴彇鏉$爜绫诲瀷2 鍓嶅洓浣� + string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); + //鎴彇鍐呯爜 + string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); + switch (BillNoType1) + { + case "20"://娴佽浆鍗� + string sErr = ""; + if (oSystemParameter.ShowBill(ref sErr)) + { + if (oSystemParameter.omodel.WMS_CampanyName == "鏉窞鏂帿灏�") + { + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + } + break; + } + + switch (BillNoType2) + { + case "GXLZ"://宸ュ簭娴佽浆娲惧伐 + ds = oCN.RunProcReturn("select * from h_v_Sc_ProcExchSendWorkBill where 娲惧伐鍗曟嵁鍙� = '" + BillNo_PGD + "'" + " and HEntryID ='" + entryid_PGD + "'", "h_v_Sc_ProcExchSendWorkBill"); + break; + case "GXLX"://娴佽浆鍗� + string sErr = ""; + if (oSystemParameter.ShowBill(ref sErr)) + { + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + if (oSystemParameter.omodel.MES_StationInBill_ShowUSERProcess == "Y") + { + ds = oCN.RunProcReturn($"exec h_p_ProcessExchangeBillLastHProNo '{BillNo_PGD}','{UserID}','{HBillType}'", "h_v_Gy_ProcessList_GetProcNoByUser"); + } + else + { + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + } + else if (entryid_PGD != "") //濡傛灉瀛恑d涓嶄负绌哄垯鍔犲叆瀛恑d杩囨护锛� + { + ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'" + " and hsubid ='" + entryid_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + else + { + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + } + break; + } + switch (BillNoType) + //寰楀埌淇℃伅 + { + case "HCX"://鐢熶骇璧勬簮鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 鏉$爜缂栧彿 = '" + BillNo + "'", "h_v_Gy_SourceList"); + break; + case "SBM"://璁惧鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_EquipMentList where HItemID = '" + BillNo + "'", "h_v_Gy_EquipMentList"); + break; + case "JYM"://鍛樺伐鐮�--妫�楠屽憳 + ds = oCN.RunProcReturn("select * from h_v_Gy_EmployeeList_New where HItemID = '" + BillNo + "'", "h_v_Gy_EmployeeList_New"); + break; + case "GRM"://鍛樺伐鐮�--鎿嶄綔鍛橈紝鎺ユ敹浜� + ds = oCN.RunProcReturn("select * from h_v_Gy_EmployeeList_New where HItemID = '" + BillNo + "'", "h_v_Gy_EmployeeList_New"); + break; + //case "CGM"://鍛樺伐鐮� + // ds = oCN.RunProcReturn("select * from h_v_Gy_EmployeeList_New where HItemID = '" + BillNo + "'", "h_v_Gy_EmployeeList_New"); + // break; + case "HWH"://浠撳簱鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_WareHouseList where 鏉$爜缂栧彿 = '" + HBarCode + "'", "h_v_Gy_WareHouseList"); + break; + case "HSP"://浠撲綅鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_StockPlaceList where 鏉$爜缂栧彿 = '" + HBarCode + "'", "h_v_Gy_StockPlaceList"); + break; + case "WKM"://宸ヤ綔涓績鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_WorkCenterList where HItemID = '" + BillNo + "'", "h_v_Gy_WorkCenterList"); + break; + case "BZM"://鐝粍鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_GroupList where 鏉$爜缂栧彿 = '" + BillNo + "'", "h_v_Gy_GroupList"); + break; + case "PRO"://宸ュ簭鐮� + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if(HBillType == "In") + { + //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + if (oSystemParameter.omodel.MES_StationInBill_ShowUSERProcess == "Y") + { + ds = oCN.RunProcReturn("select top 1 * from h_v_Gy_ProcessList_GetProcNoByUser where HItemID = '" + BillNo + "' and HInterID = '" + HInterID + "' and 鐢ㄦ埛缂栫爜 = '" + UserID + "'" + " order by 搴忓彿 asc", "h_v_Gy_ProcessList_GetProcNoByUser"); + } + else + { + ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNo where HItemID = '" + BillNo + "' and HInterID = '" + + HInterID + "'" + " order by 搴忓彿 asc", "h_v_Gy_ProcessList_GetProcNo"); + } + } + else if(HBillType == "Out") + { + //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + if (oSystemParameter.omodel.MES_StationOutBill_ShowUSERProcess == "Y") + { + ds = oCN.RunProcReturn("select top 1 * from h_v_Gy_ProcessList_GetProcNoByUser where HItemID = '" + BillNo + "' and HInterID = '" + HInterID + "' and 鐢ㄦ埛缂栫爜 = '" + UserID + "'" + " order by 搴忓彿 asc", "h_v_Gy_ProcessList_GetProcNoByUser"); + } + else + { + ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList_GetProcNo where HItemID = '" + BillNo + "' and HInterID = '" + + HInterID + "'" + " order by 搴忓彿 asc", "h_v_Gy_ProcessList_GetProcNo"); + } + } + } + break; + case "WLM"://鐗╂枡鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_MaterialList where HItemID = '" + BillNo + "'", "h_v_Gy_MaterialList"); + break; + } + + //鍐欏叆淇℃伅 + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏈煡璇㈠埌鏉$爜淇℃伅锛�"; + objJsonResult.data = null; + if(BillNoType == "PRO") + { + ds = oCN.RunProcReturn("select * from h_v_Gy_ProcessList where HItemID = '" + BillNo + "'", "h_v_Gy_ProcessList"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.Message = "鏈煡璇㈠埌鏉$爜淇℃伅锛�"; + } + else + { + objJsonResult.Message = "鐢ㄦ埛鏈叧鑱旂浉鍏冲伐搴忔垨娴佽浆鍗℃棤姝ゅ伐搴忥紝濡傛湁闇�瑕佽缁存姢"; + } + } + return objJsonResult; + } + objJsonResult.code = "1"; + 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_StationBill/txtHBarCode_Mater_KeyDown")] + [HttpGet] + public object txtHBarCode_Mater_KeyDown(string HBarCode, string HInterID) + { + try + { + if (HBarCode == null || HBarCode.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绌虹櫧鐮�,鏉″舰鐮佷笉鑳戒负绌猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + + //鍒ゆ柇鏉″舰鐮佹槸鍚﹀湪鏉$爜妗f涓紝鍒ゆ柇鏉″舰鐮佹槸鍚﹀悎鐞� + //鍏堝垽鏂� 涓存椂琛ㄤ腑鏄惁鏈夋暟鎹紝鏉″舰鐮佺殑鐗╂枡鏄惁鍦ㄦ竻鍗曚腑锛屽啓鍏� 鎵爜璁板綍琛� + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("exec h_p_MES_StationInBillSub_BindBarCode " + HInterID.ToString() + " ,'" + HBarCode + "'", "h_p_MES_StationInBillSub_BindBarCode"); + //鍐欏叆淇℃伅 + 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][0]) == 2) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閿欒锛�" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]); + objJsonResult.data = null; + return objJsonResult; + } + + + DataSet Dsplay = oCN.RunProcReturn("exec h_p_MES_StationInBillSub_BindDisplay " + HInterID.ToString() + " ", "h_p_MES_StationInBillSub_BindDisplay"); + + //鍐欏叆淇℃伅 + if (Dsplay == null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒锋柊澶辫触,鏃犳暟鎹樉绀猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + else if (Dsplay.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏌ユ棤鏁版嵁!"; + objJsonResult.data = null; + return objJsonResult; + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "缁戝畾鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鎸囧紩鍗℃壂鐮佽幏鍙栦俊鎭� + [Route("MES_SampleRecordBill_PDA/SampleRecordBillHBarCode_KeyDown")] + [HttpGet] + public object SampleRecordBillHBarCode_KeyDown(string HBarCode, string HInterID, string UserID, string HBillType) + { + try + { + if (HBarCode == null || HBarCode.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绌虹櫧鐮�,鏉″舰鐮佷笉鑳戒负绌猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鎷嗗垎鏉″舰鐮� + string sBillBarCode = HBarCode.Trim(); + string[] NewBarCode; + if (sBillBarCode.CompareTo("#") > 0) + { + NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); + sBillBarCode = NewBarCode[0]; + } + string sBillNo = sBillBarCode; //鏉″舰鐮� + + string[] arr = sBillNo.Split('&'); //浠ョ鍙封��&鈥欏垎鍓叉潯褰㈢爜 + string BillNo_PGD = arr[0]; //鍗曟嵁鍙� + string entryid_PGD = "";//瀛恑d + if (arr.Length > 1) + { + entryid_PGD = arr[1]; + } + + //鎴彇鏉$爜绫诲瀷 鍓嶄笁浣� + string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); + //鎴彇鏉$爜绫诲瀷2 鍓嶅洓浣� + string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); + //鎴彇鍐呯爜 + string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); + + string sErr = ""; + + switch (BillNoType2) + { + case "GXLX"://娴佽浆鍗� + + string sql = ""; + if (oSystemParameter.ShowBill(ref sErr)) + { + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + if (HBillType == "7505") + { + ds = oCN.RunProcReturn("exec h_p_Sc_ProcessExchangeBill__ProcList '" + BillNo_PGD + "' ", "h_p_Sc_ProcessExchangeBill__ProcList"); + } + else { + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + } + else + { + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'宸ュ簭','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'鐗╂枡','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'宸ヨ壓璺嚎','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); + break; + } + + } + } + } + break; + case "GXJZ": + //鎴彇鏉$爜绫诲瀷 鍓嶄笁浣� + string HBillNo = HBarCode.Substring(4, HBarCode.Length - 4); + ds = oCN.RunProcReturn("select * from Sc_StationInBillMain where HBillNo = '" + HBillNo + "'", "Sc_StationInBillMain"); + Int64 HStationInInterID = 0; + + if (ds != null || ds.Tables[0].Rows.Count > 0) + { + HStationInInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); + } + + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'宸ュ簭','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'鐗╂枡','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'宸ヨ壓璺嚎','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); + break; + } + + } + break; + case "MO00": + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'宸ュ簭','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'鐗╂枡','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'宸ヨ壓璺嚎','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + } + + } + break; + default: + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏉$爜閿欒!"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + break; + } + } + + switch (BillNoType) + //寰楀埌淇℃伅 + { + case "HCX"://鐢熶骇璧勬簮鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 鏉$爜缂栧彿 = '" + BillNo + "'", "h_v_Gy_SourceList"); + break; + } + + if (ds != null) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖鏁版嵁锛屾潯鐮佸墠缂�閿欒銆�"; + objJsonResult.data = ""; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region PDA宸ュ簭妫�楠屽崟鎵爜鑾峰彇淇℃伅 + [Route("MES_ProcessBill_PDA/HBarCode_KeyDown")] + [HttpGet] + public object HBarCode_KeyDown(string HBarCode, string HInterID, string UserID, string HBillType) + { + try + { + if (HBarCode == null || HBarCode.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绌虹櫧鐮�,鏉″舰鐮佷笉鑳戒负绌猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鎷嗗垎鏉″舰鐮� + string sBillBarCode = HBarCode.Trim(); + string[] NewBarCode; + if (sBillBarCode.CompareTo("#") > 0) + { + NewBarCode = sBillBarCode.Split(Convert.ToChar("#")); + sBillBarCode = NewBarCode[0]; + } + string sBillNo = sBillBarCode; //鏉″舰鐮� + + string[] arr = sBillNo.Split('&'); //浠ョ鍙封��&鈥欏垎鍓叉潯褰㈢爜 + string BillNo_PGD = arr[0]; //鍗曟嵁鍙� + string entryid_PGD = "";//瀛恑d + if (arr.Length > 1) + { + entryid_PGD = arr[1]; + } + + //鎴彇鏉$爜绫诲瀷 鍓嶄笁浣� + string BillNoType = BillNo_PGD.Substring(0, Math.Min(3, BillNo_PGD.Length)); + //鎴彇鏉$爜绫诲瀷2 鍓嶅洓浣� + string BillNoType2 = BillNo_PGD.Substring(0, Math.Min(4, BillNo_PGD.Length)); + //鎴彇鍐呯爜 + string BillNo = BillNo_PGD.Substring(3, Math.Min(BillNo_PGD.Length - 3, BillNo_PGD.Length)); + + string sErr = ""; + + switch (BillNoType2) + { + case "GXLX"://娴佽浆鍗� + + string sql = ""; + if (oSystemParameter.ShowBill(ref sErr)) + { + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + BillNo_PGD + "'", "h_v_Sc_ProcessExchangeBillList"); + } + else + { + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'宸ュ簭','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'鐗╂枡','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'宸ヨ壓璺嚎','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + break; + } + + } + } + } + break; + case "GXCZ": + ds = oCN.RunProcReturn("select * from Sc_StationOutBillMain where HBillNo = '" + HBarCode + "'", "Sc_StationOutBillMain"); + Int64 HStationOutInterID = 0; + + if (ds != null || ds.Tables[0].Rows.Count > 0) + { + HStationOutInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); + } + + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'宸ュ簭','" + HStationOutInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'鐗╂枡','" + HStationOutInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'宸ヨ壓璺嚎','" + HStationOutInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + break; + } + + } + break; + case "MO00": + if (oSystemParameter.ShowBill(ref sErr)) + { + switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + { + case "宸ュ簭": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'宸ュ簭','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + case "鐗╂枡": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'鐗╂枡','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + case "宸ヨ壓璺嚎": + sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'宸ヨ壓璺嚎','" + HBarCode + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetICMOList"); + break; + } + + } + break; + default: + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { //绯荤粺鍙傛暟鏄惁涓哄彧鏄剧ず褰撳墠鐧诲綍鐢ㄦ埛鍏宠仈鐨勫伐搴忎俊鎭�,N涓哄惁锛孻涓烘槸 + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏉$爜閿欒!"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + break; + } + } + + switch (BillNoType) + //寰楀埌淇℃伅 + { + case "HCX"://鐢熶骇璧勬簮鐮� + ds = oCN.RunProcReturn("select * from h_v_Gy_SourceList where 鏉$爜缂栧彿 = '" + BillNo + "'", "h_v_Gy_SourceList"); + break; + } + + if (ds != null) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖鏁版嵁锛屾潯鐮佸墠缂�閿欒銆�"; + objJsonResult.data = ""; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 璇曟牱璁板綍 鏌ヨ鍒楄〃 + [Route("MES_SampleRecordBill_PDA/SampleRecordList")] + [HttpGet] + public object SampleRecordList(string sWhere,string user) + { + try + { + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳煡璇㈡潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + string sql = "select * from h_v_QC_TestSampleCheckBillList where 1=1 " + sWhere + " order by 鏃ユ湡 "; + + ds = oCN.RunProcReturn(sql, "h_v_QC_TestSampleCheckBillList"); + + DataTable dt = ds.Tables[0]; + + //鑾峰彇鍒楀悕 + 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 = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.list = columnNameList; + objJsonResult.data = dt; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 璇曟牱璁板綍鏂板淇濆瓨 + [Route("MES_SampleRecordBill_PDA/SampleRecordAddBill")] + [HttpPost] + public object SampleRecordAddBill([FromBody] JObject oMain) + { + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + try + { + //鍙嶅簭鍒楀寲 + string msg2 = "[" + sArray[0].ToString() + "]"; + string user = sArray[1].ToString();//鐢ㄦ埛鍚� + string OperationType = sArray[2].ToString();//绫诲瀷 + + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + List<Model.ClsQC_TestSampleCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_TestSampleCheckBillMain>>(msg2); + string BillType = "7510"; + string HBillSubType = "7510"; + string eventType = list[0].eventType; + long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 + int HBillStatus = 1; + string HMaker = user;//鍒跺崟浜� + int HYear = DateTime.Now.Year; + double HPeriod = DateTime.Now.Month; + long HSourceID = list[0].HSourceID;//鐢熶骇璧勬簮 + long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D + string HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗� + string HProcExchBillNo = list[0].HProcExchBillNo;//鎸囧紩鍗� + long HMaterID = list[0].HMaterID;//浜у搧ID + long HUnitID = list[0].HUnitID;//璁¢噺鍗曚綅 + long HProcID = list[0].HProcID;//宸ュ簭ID + long HPRDORGID = list[0].HPRDORGID;//缁勭粐ID + long HLastResult = list[0].HLastResult;//璇曟牱缁撹 + + //鍗曟嵁瀹屾暣鎬у垽鏂� + if (HProcExchBillNo =="") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃病鏈夐�夋嫨锛佽鎵弿鏉″舰鐮佹垨杈撳叆鏉″舰鐮佸悗鍥炶溅"; + objJsonResult.data = null; + return objJsonResult; + } + + var num = 0; + + oCN.BeginTran(); + if ("Add".Equals(eventType)) + { + num = 1; + + ds = oCN.RunProcReturn("select * from QC_TestSampleCheckBillMain where HBillNo='" + HBillNo + "'", "QC_TestSampleCheckBillMain"); + if (ds.Tables[0].Rows.Count == 1) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒"; + objJsonResult.data = null; + return objJsonResult; + } + oCN.RunProc("Insert Into QC_TestSampleCheckBillMain " + + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + + ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOBillNo,HProcExchBillNo,HUnitID" + + ",HPRDORGID,HLastResult)" + + " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + + "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'," + HUnitID + + "," + HPRDORGID + ",'" + HLastResult + "') "); + } + else + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.Commit(); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 璇曟牱璁板綍 瀹℃牳/鍙嶅鏍稿姛鑳� + [Route("MES_SampleRecordBill_PDA/CheckSampleRecordBill")] + [HttpGet] + public object CheckSampleRecordBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Check", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愬鏍�!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + BillOld.MvarItemKey = "QC_TestSampleCheckBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 瀹℃牳 2 鍙嶅鏍� + if (Type == 1) + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳 + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶉渶瑕佸啀瀹℃牳!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //瀹℃牳鍗曟嵁 + oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='" + user + "',HCheckDate=getdate(),HBillStatus=2 Where HInterID=" + HInterID.ToString()); + + } + else + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍� + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍙嶅鏍稿崟鎹� + oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='',HCheckDate=null,HBillStatus=1 Where HInterID=" + HInterID.ToString()); + } + + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + 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("MES_SampleRecordBill_PDA/DelSampleRecordBill")] + [HttpGet] + public object DelSampleRecordBill(Int64 lngBillKey, string user) + { + DataSet ds; + string ModRightNameCheck = "QC_TestSampleCheckBill_Detete"; + try + { + //鍒犻櫎鏉冮檺 + if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + if (lngBillKey == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁id涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + + oCN.BeginTran();//寮�濮嬩簨鍔� + ds = oCN.RunProcReturn("select * from QC_TestSampleCheckBillMain where HInterID=" + lngBillKey, "QC_TestSampleCheckBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁鏁版嵁锛屾棤娉曞垹闄わ紒"; + objJsonResult.data = null; + return objJsonResult; ; + } + string HChecker = Convert.ToString(ds.Tables[0].Rows[0]["HChecker"]); + if (HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.RunProc("delete from QC_TestSampleCheckBillMain where HInterID=" + lngBillKey); + + oCN.Commit();//鎻愪氦浜嬪姟 + objJsonResult.code = "0"; + objJsonResult.count = 1; + 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("ColorRecord/ColorRecordList")] + [HttpGet] + public object ColorRecordList(string sWhere,string user) + { + try + { + + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳煡璇㈡潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + ds = oCN.RunProcReturn("select ManagerFlag from gy_czygl where czymc='" + user.Trim() + "'", "gy_czygl"); + string sErr = ""; + oSystemParameter.ShowBill(ref sErr); + if (oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { + } + else + { + if (!(bool)ds.Tables[0].Rows[0]["ManagerFlag"]) //鏄惁绠$悊鍛� + { + //涓嶆槸绠$悊鍛� + sWhere += " and 鍒跺崟浜� = '" + user + "'"; + } + } + + string sql = "select * from h_v_QC_FirstPieceCheckBillMainList where 1=1 " + sWhere ; + + ds = oCN.RunProcReturn(sql, "h_v_QC_FirstPieceCheckBillMainList"); + + DataTable dt = ds.Tables[0]; + + //鑾峰彇鍒楀悕 + 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 = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.list = columnNameList; + objJsonResult.data = dt; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 瀵硅壊璁板綍鏂板淇濆瓨 + [Route("MES_SampleRecordBill_PDA/ColorRecordAddBill")] + [HttpPost] + public object ColorRecordAddBill([FromBody] JObject oMain) + { + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + try + { + //鍙嶅簭鍒楀寲 + string msg2 = "[" + sArray[0].ToString() + "]"; + string user = sArray[1].ToString();//鐢ㄦ埛鍚� + string OperationType = sArray[2].ToString();//绫诲瀷 + string msg_entry = sArray[3].ToString(); //鏄庣粏琛屼俊鎭� + + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + DAL.ClsQC_FirstPieceCheckBill BillNew = new DAL.ClsQC_FirstPieceCheckBill(); + + List<Model.ClsQC_FirstPieceCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillMain>>(msg2); + string BillType = "7505"; + string HBillSubType = "7505"; + long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 + int HBillStatus = 1; + string HMaker = user;//鍒跺崟浜� + int HYear = DateTime.Now.Year; + double HPeriod = DateTime.Now.Month; + long HSourceID = list[0].HSourceID;//鐢熶骇璧勬簮 + long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D + long HICMOEntryID = list[0].HICMOEntryID;//浠诲姟鍗曞瓙ID + string HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗� + string HProcExchBillNo = list[0].HProcExchBillNo;//鎸囧紩鍗� + long HMaterID = list[0].HMaterID;//浜у搧ID + //long HUnitID = list[0].HUnitID;//璁¢噺鍗曚綅 + long HProcID = list[0].HProcID;//宸ュ簭ID + long HPRDORGID = list[0].HPRDORGID;//缁勭粐ID + bool HLastResult = list[0].HLastResult;//璇曟牱缁撹 + long HProcExchInterID = list[0].HProcExchInterID;//娴佽浆鍗D + long HProcExchEntryID = list[0].HProcExchEntryID;//娴佽浆鍗″瓙ID + long HMainSourceInterID = list[0].HMainSourceInterID;//婧愬崟ID + long HMainSourceEntryID = list[0].HMainSourceEntryID;//婧愬崟瀛怚D + string HMainSourceBillNo = list[0].HMainSourceBillNo;//婧愬崟鍗曞彿 + string HMainSourceBillType = list[0].HMainSourceBillType;//婧愬崟绫诲瀷 + + //琛ㄤ綋鏁版嵁 + List<Model.ClsQC_FirstPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillSub>>(msg_entry); + for (int i = 0; i < subList.ToArray().Length; i++) + { + if (subList.ToArray().Length >= 0) + { + Model.ClsQC_FirstPieceCheckBillSub oSub = new Model.ClsQC_FirstPieceCheckBillSub(); + oSub.HEntryID = i + 1; + oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark); + oSub.HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID); + oSub.HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID); + oSub.HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType); + oSub.HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo); + oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty); + oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney); + oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan); + oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType); + oSub.HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID); + oSub.HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd); + oSub.HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult); + //oSub.HProcCheckTime = HDate; + //oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo); + //oSub.HProcCheckEmp = ClsPub.isLong(mainList[0].HFirstCheckEmp); + oSub.HSampleSchemeID = DBUtility.ClsPub.isLong(subList[i].HSampleSchemeID); + oSub.HSampleQty = DBUtility.ClsPub.isLong(subList[i].HSampleQty); + oSub.HSampleDamageQty = DBUtility.ClsPub.isDoule(subList[i].HSampleDamageQty); + oSub.HAcceptQty = DBUtility.ClsPub.isLong(subList[i].HAcceptQty); + oSub.HRejectQty = DBUtility.ClsPub.isLong(subList[i].HRejectQty); + oSub.HSampleUnRightQty = DBUtility.ClsPub.isDoule(subList[i].HSampleUnRightQty); + oSub.HStatus = DBUtility.ClsPub.isStrNull(subList[i].HStatus); + oSub.HUnitID = DBUtility.ClsPub.isLong(subList[i].HUnitID); + oSub.HInspectVal = DBUtility.ClsPub.isStrNull(subList[i].HInspectVal); + oSub.HTargetVal = DBUtility.ClsPub.isStrNull(subList[i].HTargetVal); + oSub.HUpLimit = DBUtility.ClsPub.isStrNull(subList[i].HUpLimit); + oSub.HDownLimit = DBUtility.ClsPub.isStrNull(subList[i].HDownLimit); + oSub.HUpOffSet = DBUtility.ClsPub.isStrNull(subList[i].HUpOffSet); + oSub.HDownOffSet = DBUtility.ClsPub.isStrNull(subList[i].HDownOffSet); + oSub.HAnalysisMethod = DBUtility.ClsPub.isStrNull(subList[i].HAnalysisMethod); + oSub.HKeyInspect = DBUtility.ClsPub.isLong(subList[i].HKeyInspect); + oSub.HInspectInstruMentID = DBUtility.ClsPub.isLong(subList[i].HInspectInstruMentID); + oSub.HInspectResult = DBUtility.ClsPub.isStrNull(subList[i].HResult == "true" ? 1 : 0); + + BillNew.DetailColl.Add(oSub); + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳槑缁嗚淇℃伅!"; + objJsonResult.data = null; + return objJsonResult; + } + } + + //鍗曟嵁瀹屾暣鎬у垽鏂� + if (HProcExchBillNo == "" && HMainSourceBillNo.Substring(0, Math.Min(2, HMainSourceBillNo.Length)) != "MO" ) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃病鏈夐�夋嫨锛佽鎵弿鏉″舰鐮佹垨杈撳叆鏉″舰鐮佸悗鍥炶溅"; + objJsonResult.data = null; + return objJsonResult; + } + + var num = 0; + + oCN.BeginTran(); + if (OperationType=="1") + { + num = 1; + + ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HBillNo='" + HBillNo + "'", "QC_FirstPieceCheckBillMain"); + if (ds.Tables[0].Rows.Count == 1) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒"; + objJsonResult.data = null; + return objJsonResult; + } + oCN.RunProc("Insert Into QC_FirstPieceCheckBillMain " + + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + + ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchBillNo" + + ",HPRDORGID,HLastResult,HProcExchInterID,HProcExchEntryID,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType)" + + " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + + "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" + + "," + HPRDORGID + ",'" + HLastResult + "'," + HProcExchInterID + "," + HProcExchEntryID + "," + HMainSourceInterID + "," + HMainSourceEntryID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'" + ") "); + + //鎻掑叆瀛愯〃 + foreach (Model.ClsQC_FirstPieceCheckBillSub oSub in BillNew.DetailColl) + { + oCN.RunProc("Insert into QC_FirstPieceCheckBillSub " + + " (HInterID,HBillNo_bak,HEntryID" + + ",HRemark,HSourceInterID" + + ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + + ",HQCCheckItemID,HQCStd,HResult" + + ",HStatus,HUnitID,HKeyInspect,HAnalysisMethod,HInspectInstruMentID,HInspectResult" + + ") values(" + + HInterID.ToString() + ",'" + oSub.HBillNo_bak + "'," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'," + HMainSourceInterID.ToString() + + "," + HMainSourceEntryID.ToString() + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + + "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HResult + "'" + + ",'" + oSub.HStatus + + "'," + oSub.HUnitID + "," + oSub.HKeyInspect + ",'" + oSub.HAnalysisMethod + "'," + oSub.HInspectInstruMentID + ",'" + oSub.HInspectResult + "'" + + ") "); + } + } + else + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.Commit(); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 瀵硅壊璁板綍 瀹℃牳/鍙嶅鏍稿姛鑳� + [Route("ColorRecord/CheckColorRecordBill")] + [HttpGet] + public object CheckColorRecordBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("QC_FirstPieceCheckBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愬鏍�!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + BillOld.MvarItemKey = "QC_FirstPieceCheckBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 瀹℃牳 2 鍙嶅鏍� + if (Type == 1) + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡瀹℃牳 + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶉渶瑕佸啀瀹℃牳!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //瀹℃牳鍗曟嵁 + oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='" + user + "',HCheckDate=getdate(),HBillStatus=2 Where HInterID=" + HInterID.ToString()); + + } + else + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅鏍� + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍙嶅鏍稿崟鎹� + oCN.RunProc(" Update " + BillOld.MvarItemKey + " set HChecker='',HCheckDate=null,HBillStatus=1 Where HInterID=" + HInterID.ToString()); + } + + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + 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("ColorRecord/DelColorRecordBill")] + [HttpGet] + public object DelColorRecordBill(Int64 lngBillKey, string user) + { + DataSet ds; + string ModRightNameCheck = "QC_FirstPieceCheckBill_Delete"; + try + { + //鍒犻櫎鏉冮檺 + if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + if (lngBillKey == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁id涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + + oCN.BeginTran();//寮�濮嬩簨鍔� + ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HInterID=" + lngBillKey, "QC_FirstPieceCheckBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁鏁版嵁锛屾棤娉曞垹闄わ紒"; + objJsonResult.data = null; + return objJsonResult; ; + } + string HChecker = Convert.ToString(ds.Tables[0].Rows[0]["HChecker"]); + if (HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.RunProc("delete from QC_FirstPieceCheckBillMain where HInterID=" + lngBillKey); + + oCN.Commit();//鎻愪氦浜嬪姟 + objJsonResult.code = "0"; + objJsonResult.count = 1; + 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("Sc_StationInBill/autoGetProcNo")] + [HttpGet] + public object autoGetProcNo(string HUserID, string HInterID, string BillType) + { + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if(BillType == "In")//宸ュ簭杩涚珯鎺ユ敹鍗� + { + //绯荤粺鍙傛暟鏄惁涓鸿嚜鍔ㄥ尮閰嶆祦姘村彿,N涓烘墜鍔ㄨ緭鍏ワ紝Y涓鸿嚜鍔ㄥ尮閰� + if (oSystemParameter.omodel.MES_StationInBill_AutoFindSNO == "Y") + { + try + { + if (HUserID == null || HUserID.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鐢ㄦ埛缂栫爜涓嶈兘涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_StationBill_autoGetProcNo where HInterID = '" + HInterID + "' and 鐢ㄦ埛缂栫爜 ='" + HUserID + "'" + " and 绱杩涚珯鏁伴噺 < 璁″垝鏁伴噺 and 涓嬮亾娴佽浆宸ュ簭<>'杞�' and 濮斿鏍囪=0 order by 搴忓彿 asc", "h_v_Sc_StationBill_autoGetProcNo"); + //鍐欏叆淇℃伅 + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏈煡璇㈠埌宸ュ簭淇℃伅锛�"; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "1"; + 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; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵嬪姩杈撳叆妯″紡"; + objJsonResult.data = ""; + return objJsonResult; + } + } + else if(BillType == "Out")//宸ュ簭鍑虹珯姹囨姤鍗� + { + //绯荤粺鍙傛暟鏄惁涓鸿嚜鍔ㄥ尮閰嶆祦姘村彿,N涓烘墜鍔ㄨ緭鍏ワ紝Y涓鸿嚜鍔ㄥ尮閰� + if (oSystemParameter.omodel.MES_StationOutBill_AutoFindSNO == "Y") + { + try + { + if (HUserID == null || HUserID.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鐢ㄦ埛缂栫爜涓嶈兘涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_StationBill_autoGetProcNo where HInterID = '" + HInterID + "' and 鐢ㄦ埛缂栫爜 ='" + HUserID + "'" + " and 绱鍑虹珯鏁伴噺 < 璁″垝鏁伴噺 and 涓嬮亾娴佽浆宸ュ簭<>'杞�' and 濮斿鏍囪=0 order by 搴忓彿 asc", "h_v_Sc_StationBill_autoGetProcNo"); + //鍐欏叆淇℃伅 + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏈煡璇㈠埌宸ュ簭淇℃伅锛�"; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "1"; + 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; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵嬪姩杈撳叆妯″紡"; + objJsonResult.data = ""; + return objJsonResult; + } + } + else + { + return 0; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绯荤粺鍙傛暟寮傚父"; + objJsonResult.data = ""; + return objJsonResult; + } + + + } + #endregion + + #region 鎸囧紩鍗″彉鏇村崟 鏂板淇濆瓨 + [Route("MES_Sc_ProcessExchangeBillMain_Note_PDA/ProcessExchangeBillMain_NoteAddBill")] + [HttpPost] + public object ProcessExchangeBillMain_NoteAddBill([FromBody] JObject oMain) + { + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + try + { + //鍙嶅簭鍒楀寲 + string msg2 = "[" + sArray[0].ToString() + "]"; + string user = sArray[1].ToString();//鐢ㄦ埛鍚� + string OperationType = sArray[2].ToString();//绫诲瀷 + + //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Change", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犲彉鏇存潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + List<Model.Sc_ProcessExchangeBillMain_Note> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.Sc_ProcessExchangeBillMain_Note>>(msg2); + + long HSouceID_Original = list[0].HSouceID_Original; + long HSouceID_Now = list[0].HSouceID_Now; + long HOrgID = list[0].HOrgID;//缁勭粐ID + String HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗� + long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D + long HProcExchInterID = list[0].HProcExchInterID; + long HProcExchEntryID = list[0].HProcExchEntryID; + String HProcExchBillNo = list[0].HProcExchBillNo; + String HBillNo_Note = list[0].HBillNo_Note;//鎸囧紩鍗� + long HMaterID = list[0].HMaterID;//浜у搧ID + long HUnitID = list[0].HUnitID;//璁¢噺鍗曚綅 + long HProcID = list[0].HProcID;//宸ュ簭ID + string HMaker = user;//鍒跺崟浜� + string HMakeDate = list[0].HMakeDate;//鍒跺崟鏃ユ湡 + + //鍗曟嵁瀹屾暣鎬у垽鏂� + if (HProcExchBillNo == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃病鏈夐�夋嫨锛佽鎵弿鏉″舰鐮佹垨杈撳叆鏉″舰鐮佸悗鍥炶溅"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.BeginTran(); + if (OperationType == "1") + { + oCN.RunProc("Insert Into Sc_ProcessExchangeBillMain_Note " + + "(HBillNo_Note,HSouceID_Original,HSouceID_Now,HOrgID,HICMOInterID,HICMOBillNo,HProcExchBillNo,HProcExchInterID" + + ",HProcExchEntryID,HMaterID,HUnitID,HProcID,HMaker,HMakeDate)" + + " values('" + HBillNo_Note + "','" + HSouceID_Original + "'," + HSouceID_Now + ",'" + HOrgID + "'," + HICMOInterID + ",'"+ HICMOBillNo + "','" + HProcExchBillNo + "' ," + HProcExchInterID + + "," + HProcExchEntryID + ",'" + HMaterID + "','" + HUnitID + "'," + HProcID + ",'" + HMaker + "','" + HMakeDate + "')" ); + + oCN.RunProc("update Sc_ProcessExchangeBillSub set HSourceID=" + HSouceID_Now + " where HInterID=" + HProcExchInterID + " and HEntryID=" + HProcExchEntryID); + } + else + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.Commit(); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + + #region 鍑虹珯姹囨姤鍗曟樉绀鸿〃浣撴槑缁� + [Route("Cj_StationEntrustInBill/DisBillEntryList")] + [HttpGet] + public object DisBillEntryList(Int64 HProcExchHinteID) + { + try + { + List<object> columnNameList = new List<object>(); + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("exec h_p_Sc_ProcExchBilltransRelationQty " + HProcExchHinteID + "", "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; + } + + //娣诲姞鍒楀悕 + 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 = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + 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_StationEntrustInBill/AddBill")] [HttpPost] public object AddBill([FromBody] JObject oMain) { 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("MES_StationEntrustInBill_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); + DBUtility.ClsPub.CurUserName = user; + long HMainInterID = 0; + HMainInterID = list[0].HMainInterID; + string eventType = list[0].eventType; long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D int HYear = 2021; double HPeriod = list[0].HPeriod;//鍗曚环 @@ -148,8 +1820,8 @@ string HInnerBillNo = list[0].HInnerBillNo;//閫佽揣鍗曞彿 string HICMOBillNo = list[0].HICMOBillNo;//鐢熶骇璁㈠崟鍙� long HICMOInterID = list[0].HICMOInterID;//鐢熶骇璁㈠崟鍙稩D - int HProcExchInterID = 0; - int HProcExchEntryID = 0; + long HProcExchInterID = list[0].lngBillKey; + long HProcExchEntryID = list[0].lngBillSubKey; string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗� long HProcID = list[0].HProcID;//褰撳墠宸ュ簭 long HMaterID = list[0].HMaterID;//浜у搧ID @@ -180,27 +1852,139 @@ string HBarCode = list[0].HBarCode;//鏉″舰鐮� string HAddr = ""; string HBarCodeMaker = ""; - + long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID + if (HProcExchInterID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃病鏈夐�夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HProcExchEntryID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佹按鍙�2娌℃湁閫夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HProcNo == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HProcExchBillNo == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗″彿娌℃湁閫夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HMaterID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "浜у搧娌℃湁閫夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HSupID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "渚涘簲鍟嗘病鏈夐�夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HProcID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "褰撳墠宸ュ簭娌℃湁閫夋嫨锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (HQty <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙戝嚭鏁伴噺涓嶈兘涓�0锛�"; + objJsonResult.data = null; + return objJsonResult; + } //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙� oCN.BeginTran(); - //涓昏〃 - oCN.RunProc("Insert Into Sc_StationInBillMain " + - "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + - ",HYear,HPeriod,HRemark,HInnerBillNo" + - ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" + - ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" + - ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" + - ",HSupID,HTaxRate,HQty,HPrice,HMoney,HPieceQty" + - ",HProcNo,HOrderProcNO,HWWWorkOrderBillNo,HWWWorkOrderInterID,HWWWorkOrderEntryID" + - ") " + - " values('3792','3792'," + HInterID.ToString() + ",'" + HBillNo + "','" + HBillStatus.ToString() + "',getdate(),'" + HMaker + "',getdate()" + - ",'" + HYear.ToString() + "','" + HPeriod.ToString() + "','" + HRemark + "','" + HInnerBillNo + "'" + - "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID + - ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + - "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + - "," + HSupID + "," + HTaxRate + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + - ",'" + HProcNo + "','" + HOrderProcNO + "'" + ",'" + HWWWorkOrderBillNo + "'" + "," + HWWWorkOrderInterID + "" + "," + HWWWorkOrderEntryID + "" + - ") "); + if ("Add".Equals(eventType)) + { + if (!AllowbillNo(HBillNo)) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒"; + objJsonResult.data = null; + return objJsonResult; + } + //涓昏〃 + oCN.RunProc("Insert Into Sc_StationInBillMain " + + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + + ",HYear,HPeriod,HRemark,HInnerBillNo" + + ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" + + ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" + + ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" + + ",HSupID,HTaxRate,HQty,HPrice,HMoney,HPieceQty" + + ",HProcNo,HOrderProcNO,HWWWorkOrderBillNo,HWWWorkOrderInterID,HWWWorkOrderEntryID,HMainInterID,HPRDOrgID" + + ") " + + " values('3792','3792'," + HInterID.ToString() + ",'" + HBillNo + "','" + HBillStatus.ToString() + "',getdate(),'" + HMaker + "',getdate()" + + ",'" + HYear.ToString() + "','" + HPeriod.ToString() + "','" + HRemark + "','" + HInnerBillNo + "'" + + "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID + + ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + + "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" + + "," + HSupID + "," + HTaxRate + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + + ",'" + HProcNo + "','" + HOrderProcNO + "'" + ",'" + HWWWorkOrderBillNo + "'" + "," + HWWWorkOrderInterID + "" + "," + HWWWorkOrderEntryID + "," + HMainInterID + "," + HPRDOrgID + + ") "); + } + else if ("Modify".Equals(eventType)) + { + + //鍒犻櫎鍏宠仈 + oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HInterID + ",-1"); + oCN.RunProc("exec h_p_WW_EntrustWorkOrderRelationQty_In " + HInterID + ",-1"); + + //鏇存柊涓昏〃 + oCN.RunProc("UpDate Sc_StationInBillMain set " + + "HBillNo='" + HBillNo + "'" + + ",HRemark='" + HRemark + "'" + + ",HUpDater='" + DBUtility.ClsPub.CurUserName + "'" + + ",HUpDateDate=getdate()" + + ",HInnerBillNo='" + HInnerBillNo + "'" + + ",HSupID=" + HSupID + + ",HQty=" + HQty + + ",HPieceQty=" + HPieceQty + + ",HPrice=" + HPrice + + ",HMoney=" + HMoney + + ",HTaxRate=" + HTaxRate + + ",HMaterID=" + HMaterID + + ",HProcID=" + HProcID + + ",HEmpID=" + HEmpID + + ",HProcNo=" + HProcNo + + ",HOrderProcNO='" + HOrderProcNO + "'" + + " where HInterID=" + HInterID); + } + else + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�"; + objJsonResult.data = null; + return objJsonResult; + } ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_QtyCtrl " + HInterID + "", "h_p_MES_StationInBill_QtyCtrl"); if (ds == null) { @@ -232,15 +2016,26 @@ oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HInterID.ToString() + ",1"); oCN.RunProc("exec h_p_WW_EntrustWorkOrderRelationQty_In " + HInterID.ToString() + ",1"); oCN.Commit(); + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.MES_StationEntrustInBill_SaveAutoAddnew == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + { + objJsonResult.Verify = "Y"; + } + else + { + objJsonResult.Verify = "N"; + } + } objJsonResult.code = "1"; objJsonResult.count = 1; - objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; + objJsonResult.Message = "鎿嶄綔鍗曟嵁鎴愬姛锛�"; objJsonResult.data = ds.Tables[0]; return objJsonResult; } catch (Exception e) { - oCN.RollBack(); objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "Exception锛�" + e.Message; @@ -248,5 +2043,594 @@ return objJsonResult; } } + + private bool AllowbillNo(string HBillNo) + { + ds = oCN.RunProcReturn("select HBillNo from Sc_StationInBillMain where HBillNo = '" + HBillNo + "'", "Sc_StationInBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + return true; + } + return false; + } + #endregion + + #region 缂栬緫椤甸潰鏍规嵁id鑾峰彇濮斿宸ュ簭鎺ユ敹鍗曚俊鎭� + [Route("Cj_StationEntrustInBill/GetStationEntrustInBill")] + [HttpGet] + public object GetStationEntrustInBill(int HInterID) + { + try + { + ds = oCN.RunProcReturn("select * from h_v_GetStationInBill where HInterID = " + HInterID, "h_v_GetStationOutBill"); + 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 = "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_StationEntrustInBill/txtHProcNo_KeyDown")] + [HttpGet] + public object txtHProcNo_KeyDown(string sBillNo, string sProcNo) + { + try + { + if (sBillNo.Equals("") || sProcNo.Equals("")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏉″舰鐮佷笉鑳戒负绌猴紒"; + objJsonResult.data = null; + return objJsonResult; + } + + //寰楀埌淇℃伅锛堝澶栨爣璁颁负0鏃讹紝娴佽浆鏍囪涓�1鏃讹級 + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + sBillNo + "' and 涓嬮亾娴佽浆宸ュ簭<>'杞�' and 濮斿鏍囪=1 and 娴佽浆鏍囪=1 and 宸ュ簭鍙�='" + sProcNo + "'", "h_v_Sc_ProcessExchangeBillList"); + //Ds = oCn.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillList where 鍗曟嵁鍙�= '" + sBillNo + "' and 宸ュ簭鍙�='" + sProcNo + "' and 濮斿鏍囪=0 and 娴佽浆鏍囪=1 ", "h_v_Sc_ProcessExchangeBillList"); + //鍐欏叆淇℃伅 + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "宸ュ簭鍙烽敊璇垨鑰呭綋鍓嶅伐搴忓彿涓嶅厑璁歌繘绔欙紝璇烽噸鏂拌緭鍏ワ紒"; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "1"; + 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_StationEntrustInBill/set_ShowBillJudge")] + [HttpGet] + public object set_ShowBillJudge(string HBillNo, string CurUserName,long HInterID) + { + try + { + //ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_DelCtrl '" + HBillNo + "'", "h_p_MES_StationInBill_DelCtrl"); + //if (ds == null || ds.Tables[0].Rows.Count == 0) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鍒ゆ柇鍏宠仈澶辫触锛�"; + // objJsonResult.data = null; + // return objJsonResult; + //} + //else 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 (!ClsPub.Security_Log_second("MES_StationEntrustInBill_Edit", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + ////鍒ゆ柇璇ョ敤鎴峰悕鏄惁鏈夎宸ョ珯鏉冮檺 + //if (BillNew.CheckCenterIDByUser(DBUtility.ClsPub.isLong(66865)) == false) + //{ + // MessageBox.Show("娌℃湁璇ュ伐绔欐潈闄愶紒", "鎻愮ず"); + // return; + //} + ////妫�鏌ユ槸鍚﹀紑绁� + //string d = ""; + //if (BillOld.CheckIsKP(BillOld.omodel.HInterID, ref d) == false) + //{ + // MessageBox.Show(d, "鎻愮ず"); + // return; + //} + string s = ""; + DAL.ClsSc_StationEntrustInBill BillOld = new DAL.ClsSc_StationEntrustInBill(); + if (BillOld.ShowBill(HInterID, ref s) == false) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹湁閿欒锛�"; + objJsonResult.data = null; + return objJsonResult; + } + //鍒ゆ柇鏄惁鍙紪杈� + if (BillOld.omodel.HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�"; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = null; + 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_StationEntrustInBill/set_CheckBill")] + [HttpGet] + public object set_CheckBill(int HInterID, string CurUserName) + { + try + { + //瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + if (HInterID == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁ID涓�0锛屼笉鑳藉鏍革紒"; + objJsonResult.data = null; + return objJsonResult; + } + DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); + //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾 + if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (oBill.omodel.HChecker.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + //瀹℃牳 + if (Cj_StationEntrustInBillCheckBill(HInterID, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳鎴愬姛!"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹℃牳澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + //瀹℃牳 + public bool Cj_StationEntrustInBillCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn) + { + try + { + string HChecker = CurUserName; + string HCheckDate = DBUtility.ClsPub.GetServerDate(-1); + oCN.BeginTran(); + ds = oCN.RunProcReturn("Select * from Sc_StationInBillMain Where HInterID=" + lngBillKey.ToString(), "Sc_StationInBillMain"); + if (ds.Tables[0].Rows.Count == 0) + { + sReturn = "鍗曟嵁鏈壘鍒帮紒"; + return false; + } + + oCN.RunProc(" Update Sc_StationInBillMain set HChecker='" + HChecker + "',HCheckDate='" + HCheckDate + "' Where HInterID=" + lngBillKey.ToString()); + oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Check_In " + lngBillKey.ToString() + ",1"); + sReturn = sReturn + " 瀹℃牳鍔熻兘锛�"; + oCN.Commit(); + return true; + } + catch (Exception e) + { + sReturn = e.Message; + oCN.RollBack(); + return false; ; + } + } + #endregion + + #region 鍙嶅鏍� + [Route("Cj_StationEntrustInBill/set_AbandonCheck")] + [HttpGet] + public object set_AbandonCheck(int HInterID, string CurUserName) + { + try + { + //瀹℃牳鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙嶅鏍稿け璐ワ紒鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + if (HInterID == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁ID涓�0锛屼笉鑳藉弽瀹℃牳锛�"; + objJsonResult.data = null; + return objJsonResult; + } + DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); + //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾 + if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (oBill.omodel.HChecker.Trim() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + //鍙嶅鏍� + if (Cj_StationEntrustInBillAbandonCheckBill(HInterID, CurUserName, ref DBUtility.ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍告垚鍔�!"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙嶅鏍稿け璐ワ紒" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + //鍙嶅鏍� + public bool Cj_StationEntrustInBillAbandonCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn) + { + try + { + string HChecker = CurUserName; + string HCheckDate = DBUtility.ClsPub.GetServerDate(-1); + oCN.BeginTran(); + ds = oCN.RunProcReturn("Select * from Sc_StationInBillMain Where HInterID=" + lngBillKey.ToString(), "Sc_StationInBillMain"); + if (ds.Tables[0].Rows.Count == 0) + { + sReturn = "鍗曟嵁鏈壘鍒帮紒"; + return false; + } + + oCN.RunProc(" Update Sc_StationInBillMain set HChecker='',HCheckDate=null Where HInterID=" + lngBillKey.ToString()); + //oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Check_In " + lngBillKey.ToString() + ",-1"); + sReturn = sReturn + "鍙嶅鏍稿姛鑳斤紒"; + oCN.Commit(); + return true; + } + catch (Exception e) + { + sReturn = e.Message; + oCN.RollBack(); + return false; ; + } + } + #endregion + + + #region 宸ュ簭濮斿鍙戝嚭鍗曞叧闂�/鍙嶅叧闂姛鑳� + [Route("Cj_StationEntrustInBill/CloseCj_StationEntrustInBill")] + [HttpGet] + public object CloseCj_StationEntrustInBill(string HInterID, int Type, string user) + { + try + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("MES_StationEntrustInBill_Close", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愬叧闂�!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + ClsPub.CurUserName = user; + BillOld.MvarItemKey = "Sc_StationInBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 1 鍏抽棴 2 鍙嶅叧闂� + if (Type == 1) + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍏抽棴 + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶉渶瑕佸啀鍏抽棴!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍏抽棴鍗曟嵁 + if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍏抽棴澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + //鍒ゆ柇鍗曟嵁鏄惁宸茬粡鍙嶅叧闂� + DataSet ds; + string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插弽鍏抽棴!涓嶉渶瑕佸啀鍙嶅叧闂�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍙嶅叧闂崟鎹� + if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo)) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅叧闂け璐�!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + } + + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + 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 鏍规嵁id鍒犻櫎濮斿鍙戝嚭鍗� + [Route("Cj_StationEntrustInBill/del_StationEntrustInBill")] + [HttpGet] + public object del_StationEntrustInBill(long HInterID, string HDeleteMan) + { + try + { + + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log_second("MES_StationEntrustInBill_Delete", 1, false, HDeleteMan)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + DAL.ClsSc_StationEntrustInBill oBill = new DAL.ClsSc_StationEntrustInBill(); + 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; + } + if (oBill.omodel.HChecker != "") + { + 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; + } + + //鍐欏叆鍒犻櫎鏃ュ織 + 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 + // } } \ No newline at end of file -- Gitblit v1.9.1