From e0f1e38e04ca7debc900e0e91d87b6b5b67c6a76 Mon Sep 17 00:00:00 2001 From: zzr99 <1940172413@qq.com> Date: 星期五, 05 十一月 2021 15:46:06 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs | 342 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 321 insertions(+), 21 deletions(-) diff --git a/WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs b/WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs index 66f36c0..d44c377 100644 --- a/WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs +++ b/WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs @@ -1,4 +1,5 @@ 锘縰sing Newtonsoft.Json.Linq; +using Pub_Class; using System; using System.Collections.Generic; using System.Data; @@ -12,6 +13,8 @@ { public class Sc_MESBeginWorkBillController : ApiController { + public DBUtility.ClsPub.Enum_BillStatus BillStatus;//鍗曟嵁鐘舵�侊紙鏂板锛屼慨鏀癸紝娴忚锛屾洿鏂板崟浠凤紝鍙樻洿锛� + private json objJsonResult = new json(); public DataSet ds = new DataSet(); public WebServer webserver = new WebServer(); @@ -19,8 +22,12 @@ private WebS.WebService1 oWebs = new WebS.WebService1(); //鑾峰彇绯荤粺鍙傛暟 Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); - Pub_Class.ClsXt_SystemParameterMain oSystemParameterMain = new Pub_Class.ClsXt_SystemParameterMain(); + public DAL.ClsSc_MESBeginWorkBill BillNew = new DAL.ClsSc_MESBeginWorkBill(); //瀵瑰簲鍗曟嵁绫� + public DAL.ClsSc_MESBeginWorkBill BillOld = new DAL.ClsSc_MESBeginWorkBill(); //瀵瑰簲鍗曟嵁绫� + + public DAL.ClsSc_ICMOBillWorkQtyStatus_Tmp BillNew1 = new DAL.ClsSc_ICMOBillWorkQtyStatus_Tmp(); //瀵瑰簲鍗曟嵁绫� + public DAL.ClsSc_ICMOBillWorkQtyStatus_Tmp BillOld1 = new DAL.ClsSc_ICMOBillWorkQtyStatus_Tmp(); //瀵瑰簲鍗曟嵁绫� #region 寮�宸ュ崟 @@ -194,10 +201,11 @@ /// <returns></returns> [Route("Sc_MESBeginWorkBill/DeltetMESBeginWorkBill")] [HttpGet] - public object DeltetMESBeginWorkBill(string HInterID) + public object DeltetMESBeginWorkBill(string HInterID,string UserName) { + DBUtility.ClsPub.CurUserName = UserName; //缂栬緫鏉冮檺 - if (!DBUtility.ClsPub.Security_Log("MES_MESBeginWorkBill_Delete", 1, true, DBUtility.ClsPub.CurUserName)) + if (!DBUtility.ClsPub.Security_Log_second("MES_MESBeginWorkBill_Delete", 1, true, DBUtility.ClsPub.CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -284,7 +292,7 @@ try { //瀹℃牳鏉冮檺 - if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true, CurUserName)) + if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, true, CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -366,8 +374,8 @@ } else { - objJsonResult.code = "1"; - objJsonResult.count = 1; + objJsonResult.code = "0"; + objJsonResult.count = 0; objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; objJsonResult.data = null; return objJsonResult; @@ -386,8 +394,8 @@ } else { - objJsonResult.code = "1"; - objJsonResult.count = 1; + objJsonResult.code = "0"; + objJsonResult.count = 0; objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo; objJsonResult.data = null; return objJsonResult; @@ -459,8 +467,16 @@ [HttpPost] public object SaveGetMESBeginWorkFrom([FromBody] JObject msg) { + + var _value = msg["msg"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString(); + string UserName = sArray[1].ToString(); + string refSav = sArray[2].ToString(); + DBUtility.ClsPub.CurUserName = UserName; //淇濆瓨鏉冮檺 - if (!DBUtility.ClsPub.Security_Log("MES_MESBeginWorkBill_Edit", 1, true, DBUtility.ClsPub.CurUserName)) + if (!DBUtility.ClsPub.Security_Log_second("MES_MESBeginWorkBill_Edit", 1, true, DBUtility.ClsPub.CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -480,11 +496,7 @@ objJsonResult.data = null; return objJsonResult; } - - var _value = msg["msg"].ToString(); - string msg1 = _value.ToString(); - string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); - string msg2 = sArray[0].ToString(); + ListModels oListModels = new ListModels(); try { @@ -495,6 +507,55 @@ lsmain = oListModels.getObjectByJson_Gy_MESBeginWorkFrom(msg2); foreach (Models.ClsSc_MESBeginWorkBillMain oItem in lsmain) { + if (refSav == "Add") + { + //鍗曟嵁鍙锋槸鍚﹂噸澶� + if (BillNew.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld.omodel.HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒"; + objJsonResult.data = 1; + return objJsonResult; + } + } + if (refSav == "Update") + { + if (BillOld.ShowBill(oItem.HInterID, ref s) == false) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹湁璇紒"; + objJsonResult.data = 1; + return objJsonResult; + } + //鍒ゆ柇鏄惁鍙紪杈� + if (BillOld.omodel.HChecker != "" && BillOld.omodel.HChecker != null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + if (BillOld.omodel.HBillStatus > 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒"; + objJsonResult.data = 1; + return objJsonResult; + } + if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld, ref s)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = s + "锛屼笉鍏佽淇敼"; + objJsonResult.data = 1; + return objJsonResult; + } + } + DBUtility.ClsPub.CurUserName =oItem.HMaker; oItem.HBillType = "3787"; oItem.HBillSubType = "3787"; @@ -527,7 +588,7 @@ string sReturn = ""; if (oSystemParameter.ShowBill(ref sReturn) == true) { - if (oSystemParameterMain.Sc_MESBeginWorkBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + if (oSystemParameter.omodel.Sc_ICMOBillWorkQtyStatus_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 { objJsonResult.Verify = "Y"; } @@ -635,7 +696,7 @@ public static DataSet Sc_GetMESProductReportBillList(string sWhere) { - string sql = string.Format(@"select a.HInterID, a.HBillNo,a.HDate,a.HBillType,a.HMaterID,m.HNumber HMaterCode,m.HName HMaterName,m.HModel HMaterSpec + string sql = string.Format(@"select a.HInterID, a.HBillNo,a.HDate,a.HBillType,a.HBillStatus,a.HMaterID,m.HNumber HMaterCode,m.HName HMaterName,m.HModel HMaterSpec ,a.HSourceID,s.HNumber HSourceCode,s.HName HSourceName,a.HGroupID,g.HNumber HGroupCode,g.HName HGroupName ,a.HWorkManID,e.HName HWorkManName,a.HMaker,a.HMakeDate, a.HReportType ,a.HQty,a.HICMOBillNo,a.HICMOInterID,a.HICMOEntryID @@ -703,6 +764,8 @@ string msg1 = _value.ToString(); string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); + string refSav = sArray[1].ToString(); + string s = ""; ListModels oListModels = new ListModels(); try { @@ -713,6 +776,55 @@ lsmain = oListModels.getObjectByJson_Gy_MESProductReportFrom(msg2); foreach (Models.ClsSc_ICMOBillWorkQtyStatus_Tmp oItem in lsmain) { + if (refSav == "Add") + { + //鍗曟嵁鍙锋槸鍚﹂噸澶� + if (BillNew1.IsExistBillNo(ref ClsPub.sExeReturnInfo, oItem.HBillNo, BillStatus, BillOld1.omodel.HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒涓嶅厑璁镐繚瀛橈紒"; + objJsonResult.data = 1; + return objJsonResult; + } + } + if (refSav == "Update") + { + if (BillOld1.ShowBill(oItem.HInterID, ref s) == false) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹湁璇紒"; + objJsonResult.data = 1; + return objJsonResult; + } + //鍒ゆ柇鏄惁鍙紪杈� + if (BillOld1.omodel.HChecker != "" && BillOld1.omodel.HChecker != null) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹凡缁忚瀹℃牳锛屼笉鍏佽淇敼锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + if (BillOld1.omodel.HBillStatus > 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹浜庝笉鍙紪杈戠姸鎬侊紝涓嶅厑璁镐慨鏀癸紒"; + objJsonResult.data = 1; + return objJsonResult; + } + if (!DBUtility.Xt_BaseBillFun.Fun_AllowEditBill(BillOld1, ref s)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = s + "锛屼笉鍏佽淇敼"; + objJsonResult.data = 1; + return objJsonResult; + } + } + oItem.HBillType = "3724"; oItem.HBillSubType = "3724"; oItem.HReportType = 3;//锛�1鏉$爜鎵弿锛�2鏈哄櫒姹囨姤锛�3鎵嬪伐褰曞叆锛� @@ -733,12 +845,29 @@ bool bResult; if (oBill.omodel.HInterID == 0) { - // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); + if (bResult) + { + objJsonResult.HInterID = DBUtility.ClsPub.sExeReturnInfo; //杩斿洖涓籌D + //绯荤粺鍙傛暟 鑷姩瀹℃牳 + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.Sc_ICMOBillWorkQtyStatus_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + { + objJsonResult.Verify = "Y"; + } + else + { + objJsonResult.Verify = "N"; + } + } + } } else { bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); + objJsonResult.Verify = "N"; } if (bResult) { @@ -768,20 +897,167 @@ } #endregion + #region 鎶ュ伐骞冲彴浜ч噺姹囨姤瀹℃牳銆佸弽瀹℃牳 + /// <summary> + /// + /// </summary> + /// <param name="HInterID">鍗曟嵁ID</param> + /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param> + /// <param name="CurUserName">瀹℃牳浜�</param> + /// <returns></returns> + [Route("Sc_MESBeginWorkBill/MESProductAuditProcessReportList")] + [HttpGet] + public object MESProductAuditProcessReportList(int HSourceID,int HSourceInterID,int HSourceEntryID,string HSourceBillNo, int HICMOInterID,int HICMOEntryID, int HInterID, int IsAudit, string CurUserName) + { + string ModRightNameCheck = "MES_ProcExchReport_Check"; + DBUtility.ClsPub.CurUserName = CurUserName; + try + { + string StrMessage = ""; + //瀹℃牳鏉冮檺 + if (!WebClsPub.Security_Log(ModRightNameCheck, 1, true, CurUserName,ref StrMessage)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = StrMessage; + objJsonResult.data = null; + return objJsonResult; + } + if (HInterID <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID灏忎簬0锛�"; + objJsonResult.data = null; + return objJsonResult; + } + Int64 lngBillKey = 0; + lngBillKey = DBUtility.ClsPub.isLong(HInterID); + DLL.ClsSc_ICMOBillWorkQtyStatus_Tmp oBill = new DLL.ClsSc_ICMOBillWorkQtyStatus_Tmp(); + //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾 + if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (oBill.omodel.HCloseMan.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插叧闂�!涓嶈兘鍐嶆瀹℃牳锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (oBill.omodel.HDeleteMan.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍐嶆瀹℃牳锛�"; + objJsonResult.data = null; + return objJsonResult; + } + if (IsAudit == 0) //瀹℃牳鍒ゆ柇 + { + if (oBill.omodel.HChecker.Trim() != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + if (IsAudit == 1) //鍙嶅鏍稿垽鏂� + { + 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 (IsAudit == 0) //瀹℃牳鎻愪氦 + { + //瀹℃牳鎻愪氦 + if (oBill.CheckBill(HSourceID, HSourceInterID,HSourceEntryID,HSourceBillNo,HICMOInterID, HICMOEntryID, lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) + { + 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; + } + } + if (IsAudit == 1) //鍙嶅鏍告彁浜� + { + //鍙嶅鏍告彁浜bandonCheck + if (oBill.AbandonCheck(HSourceID, HSourceInterID, HSourceEntryID, HSourceBillNo, HICMOInterID, HICMOEntryID, lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) + { + 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; + } + } + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + #region 鎶ュ伐骞冲彴浜ч噺姹囨姤鍒犻櫎 [Route("Sc_MESBeginWorkBill/DeltetMESProductReportBill")] [HttpGet] - public object DeleteGetLineBindBillList(string HInterID,string HICMOInterID,string HICMOEntryID) + public object DeleteGetLineBindBillList(string HInterID,string HICMOInterID,string HICMOEntryID,string UserName) { try { oCN.BeginTran(); + //鏌ヨ浜ч噺姹囨姤涓存椂琛ㄦ暟閲� + ds = oCN.RunProcReturn("select isnull(HQty,0) HQty,isnull(HWasterQty,0) HWasterQty,isnull(HBadQty,0) HBadQty from Sc_ICMOBillWorkQtyStatus_Tmp where HInterID='" + HInterID + "' and HICMOInterID='" + HICMOInterID + "' and HICMOEntryID='" + HICMOEntryID + "'", "Sc_ICMOBillWorkQtyStatus_Tmp"); + double HQty =double.Parse(ds.Tables[0].Rows[0]["HQty"].ToString()); + double HWasterQty = double.Parse(ds.Tables[0].Rows[0]["HWasterQty"].ToString()); + double HBadQty = double.Parse(ds.Tables[0].Rows[0]["HBadQty"].ToString()); + double sumqty = HQty + HBadQty + HWasterQty; //姹囨姤鏁伴噺+涓嶈壇+鎶ュ簾 + //鏇存柊浜ч噺瑁呴噺涓存椂琛ㄥ凡姹囨姤鏁伴噺 + string sql1 = string.Format(@"update Sc_ICMOBillStatus_Tmp set HICMOStatus='1',HFinishFlag='0', HRelationInterID=0,HSplitRelationQty=HSplitRelationQty-" + sumqty + ",HDateFinishQty=HDateFinishQty-"+ sumqty + " where HICMOInterID='"+ HICMOInterID + "' and HICMOEntryID='"+ HICMOEntryID + "'"); + oCN.RunProc(sql1); //鏇存柊鍒囨崲鐘舵�佸�� string sql = string.Format(@"delete Sc_ICMOBillWorkQtyStatus_Tmp where HInterID='" + HInterID + "'"); oCN.RunProc(sql); - //鏇存柊浜ч噺瑁呴噺涓存椂琛ㄥ凡姹囨姤鏁伴噺 - string sql1 = string.Format(@"update Sc_ICMOBillStatus_Tmp set HRelationInterID=0,HSplitRelationQty=0 where HInterID='" + HInterID + "' and HICMOInterID='"+ HICMOInterID + "' and HICMOEntryID='"+ HICMOEntryID + "'"); - oCN.RunProc(sql); + oCN.Commit(); objJsonResult.code = "1"; objJsonResult.count = 1; @@ -810,6 +1086,29 @@ ListModels oListModels = new ListModels(); try { + //绯荤粺鍙傛暟 鐢熸垚鐢熶骇姹囨姤鍗曞墠鍒ゆ柇鏄惁棣栨 + //string sReturn = ""; + //if (oSystemParameter.ShowBill(ref sReturn) == true) + //{ + // if (oSystemParameter.omodel.Sc_ICMOReportBill_FirstCheckOut == "Y") //绯荤粺鍙傛暟 蹇呴』棣栦欢妫�楠岄�氳繃鎵嶈兘淇濆瓨鍗曟嵁 + // { + // //绯荤粺鍙傛暟瀹℃牳,鍒欐牴鎹敓浜ц鍗曞彿锛屽叧鑱旈妫�妫�楠屽崟涓簮鍗曞彿鏌ユ壘妫�楠屽崟鏁版嵁锛屽垽鏂崟鎹姸鎬佹槸鍚﹀悎鏍� + // ds = oCN.RunProcReturn("select * from QC_FirstPieceCheckBillMain where HICMOInterID='" + HICMOInterID + "' and HICMOEntryID='" + HICMOEntryID + "'", "QC_FirstPieceCheckBillMain"); + // if (ds.Tables[0].Rows.Count > 0) //鏈夐妫�妫�楠屽崟 + // { + // int rows = ds.Tables[0].AsEnumerable().Where(item => item["HLastResult"].ToString().Equals("True")).Count(); //鍒ゆ柇褰撳墠鏁版嵁(涓�鏉℃垨澶氭潯)涓渶缁堝垽瀹氭槸鍚︽湁鍚堟牸 + // if (rows <= 0) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "褰撳墠宸ュ崟棣栨妫�楠屽垽瀹氫笉鍚堟牸,鏃犳硶鐢熸垚姹囨姤鍗曪紒"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // } + // } + //} + string sHSourceType = HSourceBillType; string BillType = "3711"; //鍗曟嵁绫诲瀷 (鐢熶骇姹囨姤鍗�) //寰楀埌mainid @@ -849,6 +1148,7 @@ //model.HPRDORGID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HPRDORGID"]); model.HMainSourceInterID = HICMOInterID; model.HMainSourceEntryID = HICMOEntryID; + //oWebs.Timeout = 30000; bool flag=oWebs.set_SaveICMOProductReportBill_Layui(model,workcode,HSourceID, sHSourceType, ref DBUtility.ClsPub.sErrInfo); if (flag) -- Gitblit v1.9.1