From 9a75f7db9431032c0f1ecc64be4966a25c74bafa Mon Sep 17 00:00:00 2001 From: duhe <226547893@qq.com> Date: 星期二, 05 十一月 2024 16:48:12 +0800 Subject: [PATCH] 1 --- WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs | 372 ++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 337 insertions(+), 35 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs index e278d45..e8cb406 100644 --- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs +++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs @@ -2,6 +2,7 @@ using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Pub_Class; +using SyntacticSugar.constant; using System; using System.Collections; using System.Collections.Generic; @@ -76,6 +77,7 @@ long HMainInterID = 0; HMainInterID = list[0].HMainInterID; string eventType = list[0].eventType; + string HDate = list[0].HDate; string BillType = "3791"; string HBillSubType = "3791"; long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D @@ -149,6 +151,7 @@ double HToCheckQty = list[0].HToCheckQty;//鍙栨牱鏁伴噺 double HLossQty = list[0].HLossQty;//閬楀け鏁伴噺 double HBackWorkByMaterQty = list[0].HBackWorkByMaterQty;//閬楀け鏁伴噺 + int HMouldID = list[0].HMouldID;//妯″叿id LogService.Write($"1.瀛楁璧嬪�硷紝鐢ㄦ椂" + sw.Elapsed ); @@ -223,8 +226,14 @@ string Ret = ""; if (oSystemParameter.ShowBill(ref Ret)) { + //鍒ゆ柇瀹㈡埛涓轰箶涓� + if(oSystemParameter.omodel.WMS_CampanyName == "涔斾竴") + { + HDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); + } + //鍒ゆ柇瀹㈡埛涓嶄负榫欏北姹介厤 - if (oSystemParameter.omodel.WMS_CampanyName != "榫欏北姹介厤" && oSystemParameter.omodel.WMS_CampanyName != "鐟炰笌绁�") //绯荤粺鍙傛暟 + if (oSystemParameter.omodel.WMS_CampanyName != "榫欏北姹介厤" && oSystemParameter.omodel.WMS_CampanyName != "鐟炰笌绁�" && oSystemParameter.omodel.WMS_CampanyName != "娣诲悍绉戞妧") //绯荤粺鍙傛暟 { if (HSourceID == 0) { @@ -272,6 +281,19 @@ objJsonResult.code = "0"; objJsonResult.count = 0; objJsonResult.Message = "鍚堟牸鏁伴噺鍔犳姤搴熸暟閲忓姞涓嶈壇鏁伴噺涓嶈兘涓�0锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + //鍒ゆ柇褰撳墠宸ュ崟鏄惁寮�宸� + else if (oSystemParameter.omodel.MES_StationOutBill_MustBeginWorkCtl == "Y") + { + ds = oCN.RunProcReturn("select * from Sc_ICMOBillStatus_Tmp where HSourceID = '" + HSourceID + "' and HICMOBillNo = '" + HICMOBillNo + "' and HInterID = '" + HICMOInterID + "' and hicmostatus =1", "Sc_ICMOBillStatus_Tmp"); + if (ds.Tables[0].Rows[0]["HICMOStatus"].ToString() != "1") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "褰撳墠宸ュ崟涓嶆槸寮�宸ョ姸鎬佷笉鑳芥眹鎶ワ紒"; objJsonResult.data = null; return objJsonResult; } @@ -391,9 +413,9 @@ ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" + ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" + ",HmaterOutqty,HProcPriceRate,HTemporaryAreaID,HWasterQty_Work,HWasterQty_Mater,HBackWorkQty,HShiftsID" + - ",HToCheckQty,HLossQty,HBackWorkByMaterQty" + + ",HToCheckQty,HLossQty,HBackWorkByMaterQty,HMouldID" + ") " + - " values('" + BillType + "','" + (OperationType == "5" ? "SUB" : HBillSubType) + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" + + " values('" + BillType + "','" + (OperationType == "5" ? "SUB" : HBillSubType) + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",'"+ HDate + "','" + HMaker + "',getdate(),'" + HMouldNum + "'" + "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL + "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID + ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID + "," + HPayProcID + @@ -402,7 +424,7 @@ "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) + "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID + "," + HmaterOutqty + "," + HProcPriceRate + "," + HTemporaryAreaID + "," + HWasterQty_Work + "," + HWasterQty_Mater + "," + HBackWorkQty + - "," + HShiftsID + "," + HToCheckQty + "," + HLossQty + ","+ HBackWorkByMaterQty + ") "); + "," + HShiftsID + "," + HToCheckQty + "," + HLossQty + ","+ HBackWorkByMaterQty + "," + HMouldID + ") "); LogService.Write($"4.鏂板缁撴潫锛岀敤鏃�" + sw.Elapsed); LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭鍑虹珯鍗曟嵁:" + HBillNo); @@ -428,6 +450,7 @@ ",HSourceID4=" + HSourceID4 + ",HSourceID5=" + HSourceID5 + ",HPayProcID=" + HPayProcID + + ",HGroupID=" + HGroupID + ",HWorkTimes=" + HWorkTimes + ",HSaveBillFlag=0 " + ",HBadCount=" + HBadCount + @@ -447,6 +470,7 @@ ",HBackWorkQty=" + HBackWorkQty + ",HShiftsID=" + HShiftsID + ",HBackWorkByMaterQty=" + HBackWorkByMaterQty + + ",HMouldID=" + HMouldID + " where HInterID=" + HInterID); LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼宸ュ簭鍑虹珯鍗曟嵁:" + HBillNo); @@ -463,37 +487,37 @@ } //涓昏〃 - //LogService.Write($"5.绯荤粺鎺у埗鏌ヨ鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); - //ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl"); - //if (ds == null) - //{ - // oCN.RollBack(); - // objJsonResult.code = "0"; - // objJsonResult.count = 0; - // objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�"; - // objJsonResult.data = null; - // return objJsonResult; - //} - //LogService.Write($"5.1锛岀敤鏃�" + sw.Elapsed); - //if (ds.Tables[0].Rows.Count == 0) - //{ - // oCN.RollBack(); - // objJsonResult.code = "0"; - // objJsonResult.count = 0; - // objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�"; - // objJsonResult.data = null; - // return objJsonResult; - //} - //LogService.Write($"5.2锛岀敤鏃�" + sw.Elapsed); - //if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") - //{ - // oCN.RollBack(); - // objJsonResult.code = "0"; - // objJsonResult.count = 0; - // objJsonResult.Message = "鏁伴噺鎺у埗," + ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); - // objJsonResult.data = null; - // return objJsonResult; - //} + LogService.Write($"5.绯荤粺鎺у埗鏌ヨ鍒ゆ柇锛岀敤鏃�" + sw.Elapsed); + ds = oCN.RunProcReturn("exec h_p_MES_StationOutBill_QtyCtrl " + HInterID + "", "h_p_MES_StationOutBill_QtyCtrl"); + if (ds == null) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + LogService.Write($"5.1锛岀敤鏃�" + sw.Elapsed); + if (ds.Tables[0].Rows.Count == 0) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒ゆ柇鏁伴噺澶辫触锛�"; + objJsonResult.data = null; + return objJsonResult; + } + LogService.Write($"5.2锛岀敤鏃�" + sw.Elapsed); + if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2") + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏁伴噺鎺у埗," + ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.data = null; + return objJsonResult; + } LogService.Write($"6.鍒ゆ柇缁撴潫锛岀敤鏃�" + sw.Elapsed); oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Out " + HInterID + "," + num + ""); LogService.Write($"6.1锛岀敤鏃�" + sw.Elapsed); @@ -587,6 +611,10 @@ string sReturn = ""; if (oSystemParameter.ShowBill(ref sReturn) == true) { + if (oSystemParameter.omodel.MES_StationOutBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + { + object objResult = set_CheckBill(HInterID.ToString(), user, HBillSubType); + } if (oSystemParameter.omodel.MES_StationOutBill_SaveAutoAddnew == "Y") //绯荤粺鍙傛暟 椤甸潰淇濆瓨鑷姩鍙樻垚鏂板鐘舵�� { objJsonResult.Verify = "Y"; @@ -599,6 +627,27 @@ sw.Stop();//缁撴潫璁℃椂 LogService.Write($"11.鍙傛暟鏌ヨ缁撴潫,鏂板缁撴潫锛岀敤鏃�" + sw.Elapsed); LogService.Write("END--鍑虹珯鍗曟嵁淇濆瓨缁撴潫锛屽嚭绔欏崟鍙凤細" + HBillNo); + + //娴嬭瘯璇彞=========================================================================================================== + string msg_str = ""; + string sql_str = "select a.HQty HQty_Main,b.HQty HQty_Sub " + + "from Sc_ProcessExchangeBillMain as a " + + "inner join Sc_ProcessExchangeBillSub as b on a.HInterID = b.HInterID " + + "where a.HInterID = " + HProcExchInterID; + DataSet ds_str = oCN.RunProcReturn(sql_str, "Sc_ProcessExchangeBillMain"); + if (ds_str.Tables[0].Rows.Count > 0) + { + msg_str = "HQty_Main:" + ds_str.Tables[0].Rows[0]["HQty_Main"].ToString() + ";HQty_Sub:"; + for (int j = 0; j < ds_str.Tables[0].Rows.Count; j++) + { + msg_str += ds_str.Tables[0].Rows[j]["HQty_Sub"].ToString() + ","; + } + } + + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼宸ュ簭鍑虹珯鍗曟嵁锛�" + HBillNo + "[宸ュ簭娴佽浆鍗″彿锛�" + HProcExchBillNo + "]" + msg_str + "','LMES-宸ュ簭鍑虹珯妯″潡','" + DBUtility.ClsPub.IPAddress + "','鏂板鎴栦慨鏀瑰崟鎹�'", ref DBUtility.ClsPub.sExeReturnInfo); + //============================================================================================================== + + objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; @@ -1688,6 +1737,102 @@ //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_StationOutBill/get_Display_byPage")] + [HttpGet] + public object get_Display_byPage(string sWhere, string user, string Organization, int page, int size, string HBillSubType) + { + try + { + List<object> columnNameList = new List<object>(); + if (HBillSubType == "SUB") + { + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Sub_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹屽伐鍗曟棤鏌ヨ鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Cj_StationOutBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍑虹珯鍗曟棤鏌ヨ鏉冮檺!"; + objJsonResult.data = null; + return objJsonResult; + } + } + + + //鑾峰彇绯荤粺鍙傛暟 + string Ret = ""; + if (oSystemParameter.ShowBill(ref Ret)) + { + //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰� + if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤") + { + //鑾峰彇闇�瑕佹嫾鎺ョ殑瀛楃涓� + string sql_splice = DBUtility.ClsPub.SpliceSQL(user, "宸ュ簭姹囨姤鍗曞垪琛�"); + + if (sql_splice == "娌℃湁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁鏌ヨ鍒扮浉鍏崇敤鎴蜂俊鎭�!"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + sWhere += sql_splice; + } + } + } + + //sWhere = sWhere.Replace("'", "''"); + + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("exec h_p_MES_StationOutBillList " + page + "," + size + ",'" + Organization + "'," + "''", "h_p_MES_StationOutBillList"); + } + else + { + ds = oCN.RunProcReturn("exec h_p_MES_StationOutBillList " + page + "," + size + ",'" + Organization + "','" + sWhere + "'", "h_p_MES_StationOutBillList"); + } + + //娣诲姞鍒楀悕 + 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 = int.Parse(ds.Tables[1].Rows[0]["count"].ToString()); + objJsonResult.Message = "Sucess锛�"; + objJsonResult.list = columnNameList; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; } catch (Exception e) { @@ -3673,5 +3818,162 @@ } } #endregion + + #region 褰撳墠宸ュ崟(鎵爜姹囨姤) 鎵惧嚭褰撳墠宸ュ崟浣跨敤妯″叿 + [Route("Cj_StationOutBill_CurrentWork/getHModelList")] + [HttpGet] + public object getHModelList(string HInterID, string HEntryID,string HBillNo) + { + try + { + ds = oCN.RunProcReturn("exec h_p_StationOutBill_Model '" + HInterID + "','"+ HEntryID + "' ,'" + HBillNo + "'", "h_p_StationOutBill_Model"); + + if (ds.Tables[0].Rows.Count != 0 && ds != null) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = ""; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = ""; + return objJsonResult; + } + + + } + catch (Exception e) + { + + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 淇濆瓨鐢熸垚鐧芥爣 + public class WhiteLabelGeneration { + public string ProjectNo { get; set; } + public string OrderingCode { get; set; } + public string DrawVersionNumber { get; set; } + public string CustomerOrderNumber { get; set; } + public string WaybillNumber { get; set; } + public string HRemark { get; set; } + public string HBarCode_Pack { get; set; } + public string HBillType { get; set; } + } + [Route("Cj_StationOutBill_Detail/MES_WhiteLabelGeneration")] + [HttpPost] + public object MES_WhiteLabelGeneration([FromBody] JObject oMain) + { + try + { + oCN.BeginTran(); + + var _value = oMain["oMain"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁 + WhiteLabelGeneration Main = Newtonsoft.Json.JsonConvert.DeserializeObject<WhiteLabelGeneration>(msg2); + + string HBillType = Main.HBillType; + string ProjectNo = Main.ProjectNo; + string OrderingCode = Main.OrderingCode; + string DrawVersionNumber = Main.DrawVersionNumber; + string CustomerOrderNumber = Main.CustomerOrderNumber; + string WaybillNumber = Main.WaybillNumber; + string HRemark = Main.HRemark; + string HBarCode_Pack = Main.HBarCode_Pack; + + ds = oCN.RunProcReturn($"exec h_p_MES_HBarCode_White_SMR_15 '{HBillType}','{ProjectNo}','{OrderingCode}','{DrawVersionNumber}','{CustomerOrderNumber}','{WaybillNumber}','{HRemark}','{HBarCode_Pack}'", "h_p_MES_HBarCode_White_SMR_15"); + + string HBarCode_White = ds.Tables[0].Rows[0]["HBarCode_White"].ToString(); + + if (HBarCode_White == "") + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鐢熸垚鐧芥爣澶辫触,鍗曟嵁鏍囪瘑:" + HBarCode_Pack + "锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.RunProc("update Sc_PackUnionBillMain set HBarCode_White='" + HBarCode_White + "' where HBarCode_Pack='" + HBarCode_Pack + "'"); + + oCN.Commit(); + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + 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("Cj_StationOutBill/PushDownBackInfo")] + [HttpGet] + public object PushDownBackInfo(string linterid, string user) + { + try + { + List<object> columnNameList = new List<object>(); + + ds = oCN.RunProcReturn("select * from h_v_Sc_StationOutBill_PushDownBackInfo where hmainid in (" + linterid + ")", "h_v_Sc_StationOutBill_PushDownBackInfo"); + + if (ds.Tables[0].Rows.Count > 0 && ds != null) + { + //娣诲姞鍒楀悕 + 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 = ds.Tables[0]; + 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 = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion } } \ No newline at end of file -- Gitblit v1.9.1