From 9b9e70026e16c076dc784f51aa5bbb7f25d68a43 Mon Sep 17 00:00:00 2001 From: yusijie <ysj@hz-kingdee.com> Date: 星期四, 22 二月 2024 13:47:18 +0800 Subject: [PATCH] PDA(首件/工序 检验单 扫码方法) --- WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs | 226 +++++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 204 insertions(+), 22 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs index 180eb6c..fceb653 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationEntrustInBillController.cs @@ -373,19 +373,19 @@ { if (oSystemParameter.ShowBill(ref sErr)) { - switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) { case "宸ュ簭": - sql = "exec h_p_QC_ProcessCheck_GetProcessExchangeBillList " + "'宸ュ簭','" + BillNo_PGD + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + 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_ProcessCheck_GetProcessExchangeBillList " + "'鐗╂枡','" + BillNo_PGD + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + 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_ProcessCheck_GetProcessExchangeBillList " + "'宸ヨ壓璺嚎','" + BillNo_PGD + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetProcessExchangeBillList"); + sql = "exec h_p_QC_FirstPieceCheck_GetProcessExchangeBillList " + "'宸ヨ壓璺嚎','" + BillNo_PGD + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPieceCheck_GetProcessExchangeBillList"); break; } @@ -393,30 +393,32 @@ } } break; - case "GXCZ": - ds = oCN.RunProcReturn("select * from Sc_StationOutBillMain where HBillNo = '" + HBarCode + "'", "Sc_StationOutBillMain"); - Int64 HStationOutInterID = 0; + 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) + if (ds != null || ds.Tables[0].Rows.Count > 0) { - HStationOutInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); + HStationInInterID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HInterID"]); } if (oSystemParameter.ShowBill(ref sErr)) { - switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) { case "宸ュ簭": - sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'宸ュ簭','" + HStationOutInterID + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'宸ュ簭','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); break; case "鐗╂枡": - sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'鐗╂枡','" + HStationOutInterID + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'鐗╂枡','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); break; case "宸ヨ壓璺嚎": - sql = "exec h_p_QC_ProcessCheck_GetStationOutBillList " + "'宸ヨ壓璺嚎','" + HStationOutInterID + "'"; - ds = oCN.RunProcReturn(sql, "h_p_QC_ProcessCheck_GetStationOutBillList"); + sql = "exec h_p_QC_FirstPiece_GetStationInBillList " + "'宸ヨ壓璺嚎','" + HStationInInterID + "'"; + ds = oCN.RunProcReturn(sql, "h_p_QC_FirstPiece_GetStationInBillList"); break; } @@ -425,7 +427,7 @@ case "MO00": if (oSystemParameter.ShowBill(ref sErr)) { - switch (oSystemParameter.omodel.QC_ProcessCheckBill_QCSchemeSource) + switch (oSystemParameter.omodel.QC_FirstPieceCheckBill_QCSchemeSource) { case "宸ュ簭": sql = "exec h_p_QC_ProcessCheck_GetICMOList " + "'宸ュ簭','" + HBarCode + "'"; @@ -482,6 +484,184 @@ 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) { @@ -917,6 +1097,8 @@ 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 //琛ㄤ綋鏁版嵁 List<Model.ClsQC_FirstPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillSub>>(msg_entry); @@ -1002,10 +1184,10 @@ oCN.RunProc("Insert Into QC_FirstPieceCheckBillMain " + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchBillNo" + - ",HPRDORGID,HLastResult)" + + ",HPRDORGID,HLastResult,HProcExchInterID,HProcExchEntryID)" + " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" + "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" + - "," + HPRDORGID + ",'" + HLastResult + "') "); + "," + HPRDORGID + ",'" + HLastResult + "'," + HProcExchInterID + "," + HProcExchEntryID + ") "); //鎻掑叆瀛愯〃 foreach (Model.ClsQC_FirstPieceCheckBillSub oSub in BillNew.DetailColl) -- Gitblit v1.9.1