From 95f65190334bd1baaebe0e6a7312a06b660cd4d1 Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期三, 15 五月 2024 10:46:04 +0800 Subject: [PATCH] 优化 --- WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs | 1960 +++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 1,753 insertions(+), 207 deletions(-) diff --git a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs index 337127e..55daeae 100644 --- a/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs +++ b/WebAPI/Controllers/CJGL/Sc_ProcessExchangeBillController.cs @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing Newtonsoft.Json; +using Newtonsoft.Json.Linq; using Pub_Class; using System; using System.Collections; @@ -6,6 +7,7 @@ using System.Data; using System.Data.SqlClient; using System.Web.Http; +using System.Windows.Forms; using WebAPI.Models; namespace WebAPI.Controllers @@ -17,7 +19,11 @@ private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill(); + + #region[鏂板鍗曟嵁-淇濆瓨鎸夐挳] /// <summary> /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 ///鍙傛暟锛歴tring sql銆� @@ -29,227 +35,647 @@ { var _value = sMainSub["sMainSub"].ToString(); string msg1 = _value.ToString(); - //淇濆瓨鍗曟嵁 - return objJsonResult = AddBillMain(msg1); - } - - public json AddBillMain(string msg1) - { string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); string msg3 = sArray[1].ToString(); - bool bResult; + string msg4 = sArray[2].ToString(); + string msg5 = sArray[3].ToString(); + string HBillSubType = sArray[4].ToString(); + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + + string UserName = ""; + ListModels oListModels = new ListModels(); + try { - msg2 = "[" + msg2.ToString() + "]"; - List<Model.ClsSc_ProcessExchangeBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillMain>>(msg2); - DAL.ClsSc_ProcessExchangeBill BillNew = new DAL.ClsSc_ProcessExchangeBill(); - //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� - string s = ""; - int sYear = 0; - int sPeriod = 0; - DateTime HDate = mainList[0].HDate;//鏃ユ湡 - if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false) + if (HBillSubType == "SUB") { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = s; - objJsonResult.data = null; - return objJsonResult; - } - BillNew.omodel.HPRDORGID= mainList[0].HPRDORGID;//缁勭粐 - BillNew.omodel.HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D - BillNew.omodel.HYear = sYear; - BillNew.omodel.HPeriod = sPeriod; - BillNew.omodel.HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 - BillNew.omodel.HDate = HDate; - BillNew.omodel.HRemark = mainList[0].HRemark;//澶囨敞 - BillNew.omodel.HMaker = mainList[0].HMaker; - BillNew.omodel.HWWOrderInterID = ClsPub.isLong(mainList[0].HWWOrderInterID); - BillNew.omodel.HWWOrderEntryID = ClsPub.isLong(mainList[0].HWWOrderEntryID); - BillNew.omodel.HWWOrderBillNo = ClsPub.isStrNull(mainList[0].HWWOrderBillNo); - BillNew.omodel.HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID); - BillNew.omodel.HICMOEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); - BillNew.omodel.HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); - BillNew.omodel.HMaterID2 = ClsPub.isLong(mainList[0].HMaterID2); - BillNew.omodel.HMaterID = ClsPub.isLong(mainList[0].HMaterID); - BillNew.omodel.HMaterNumber = ClsPub.isStrNull(mainList[0].HMaterNumber); - BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo); - BillNew.omodel.HUnitID = ClsPub.isLong(mainList[0].HUnitID); - BillNew.omodel.HUnitNumber = ClsPub.isStrNull(mainList[0].HUnitNumber); - BillNew.omodel.HPlanQty = ClsPub.isDoule(mainList[0].HPlanQty); - BillNew.omodel.HQty = ClsPub.isDoule(mainList[0].HQty); - BillNew.omodel.HPlanBeginDate = ClsPub.isDate(mainList[0].HPlanBeginDate); - BillNew.omodel.HPlanEndDate = ClsPub.isDate(mainList[0].HPlanEndDate); - BillNew.omodel.HExplanation = ClsPub.isStrNull(mainList[0].HExplanation); - BillNew.omodel.HInnerBillNo = ClsPub.isStrNull(mainList[0].HInnerBillNo); - BillNew.omodel.HWorkShopID = ClsPub.isLong(mainList[0].HWorkShopID); - BillNew.omodel.HSupID = ClsPub.isLong(mainList[0].HSupID); - BillNew.omodel.HBLFlag = mainList[0].HBLFlag; - BillNew.omodel.HMainMaterID = ClsPub.isLong(mainList[0].HMainMaterID); - BillNew.omodel.HKeyMaterID = ClsPub.isLong(mainList[0].HKeyMaterID); - BillNew.omodel.HOrderProcNO = ClsPub.isStrNull(mainList[0].HOrderProcNO); - BillNew.omodel.HEquipMentID = ClsPub.isLong(mainList[0].HEquipMentID); - BillNew.omodel.HMateOutBatchNo = ClsPub.isStrNull(mainList[0].HMateOutBatchNo); - BillNew.omodel.HProjectNum = ClsPub.isStrNull(mainList[0].HProjectNum); - BillNew.omodel.HProdMaterCode = ClsPub.isStrNull(mainList[0].HProdMaterCode); - BillNew.omodel.HSeOrderBillNo = ClsPub.isStrNull(mainList[0].HSeOrderBillNo); - BillNew.omodel.HCusShortName = ClsPub.isStrNull(mainList[0].HCusShortName); - BillNew.omodel.HCusNeedMaterial = ClsPub.isStrNull(mainList[0].HCusNeedMaterial); - BillNew.omodel.HPlanSendGoodsDate = ClsPub.isStrNull(mainList[0].HPlanSendGoodsDate); - BillNew.omodel.HProdMaterName = ClsPub.isStrNull(mainList[0].HProdMaterName); - BillNew.omodel.HCusName = ClsPub.isStrNull(mainList[0].HCusName); - BillNew.omodel.HWorkRemark = ClsPub.isStrNull(mainList[0].HWorkRemark); - BillNew.omodel.HImportNote = ClsPub.isStrNull(mainList[0].HImportNote); - BillNew.omodel.HMaterNumber_A = ClsPub.isStrNull(mainList[0].HMaterNumber_A); - BillNew.omodel.HMaterNumber_B = ClsPub.isStrNull(mainList[0].HMaterNumber_B); - BillNew.omodel.HMaterNumber_C = ClsPub.isStrNull(mainList[0].HMaterNumber_C); - BillNew.omodel.HMaterNumber_D = ClsPub.isStrNull(mainList[0].HMaterNumber_D); - BillNew.omodel.HProdType = ClsPub.isStrNull(mainList[0].HProdType); - BillNew.omodel.HMaterShortName = ClsPub.isStrNull(mainList[0].HMaterShortName); - BillNew.omodel.HMaterIDA = ClsPub.isStrNull(mainList[0].HMaterIDA); - BillNew.omodel.HMaterIDB = ClsPub.isStrNull(mainList[0].HMaterIDB); - BillNew.omodel.HMaterIDC = ClsPub.isStrNull(mainList[0].HMaterIDC); - BillNew.omodel.HMaterIDD = ClsPub.isStrNull(mainList[0].HMaterIDD); - List<Model.ClsSc_ProcessExchangeBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillSub>>(msg3); - BillNew.DetailColl = new List<Model.ClsSc_ProcessExchangeBillSub>(); - if (BillNew.omodel.HICMOInterID == 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "璇烽�夋嫨浠诲姟鍗曪紒"; - objJsonResult.data = null; - return objJsonResult; - } - for (int i = 0; i < subList.ToArray().Length; i++) - { - if (DBUtility.ClsPub.isInt(subList[i].HProcID) != 0)//HQty + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Sub_Edit", 1, false, msg4)) { - Model.ClsSc_ProcessExchangeBillSub oSub = new Model.ClsSc_ProcessExchangeBillSub(); - oSub.HEntryID = i+1; - oSub.HRemark = DBUtility.ClsPub.isStrNull(subList[i].HRemark); - oSub.HSourceInterID = ClsPub.isLong(mainList[0].HICMOInterID); - oSub.HSourceEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); - oSub.HSourceBillType = "85"; - oSub.HSourceBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); - oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty); - //oSub.HRelationQty_In = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_In); - //oSub.HRelationQty_Out = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Out); - //oSub.HRelationQty_WWOrder = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_WWOrder); - //oSub.HRelationQty_Bad = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Bad); - oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney); - oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan); - oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(subList[i].HEntryCloseDate); - oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType); - oSub.HQty = DBUtility.ClsPub.isDoule(subList[i].HQty); - if (oSub.HQty <= 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝娴佽浆鍗℃暟閲忎笉鑳戒负0鎴栬�呭皬浜�0"; - objJsonResult.data = null; - return objJsonResult; - } - oSub.HProcNo = DBUtility.ClsPub.isLong(subList[i].HProcNo); - if (oSub.HProcNo <= 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝娴佹按鍙蜂笉鑳戒负0鎴栬�呭皬浜�0"; - objJsonResult.data = null; - return objJsonResult; - } - oSub.HProcID = DBUtility.ClsPub.isLong(subList[i].HProcID); - oSub.HProcNumber = DBUtility.ClsPub.isStrNull(subList[i].HProcNumber); - oSub.HWorkRemark = DBUtility.ClsPub.isStrNull(subList[i].HWorkRemark); - oSub.HCenterID = DBUtility.ClsPub.isLong(subList[i].HCenterID); - oSub.HDeptID = DBUtility.ClsPub.isLong(subList[i].HDeptID); - oSub.HDeptNumber = DBUtility.ClsPub.isStrNull(subList[i].HDeptNumber); - ////oSub.HGroupID = DBUtility.ClsPub.isLong(grdMain.Rows[i].Cells[HGroupIDCol].Value); - oSub.HGroupNumber = DBUtility.ClsPub.isStrNull(subList[i].HGroupNumber); - oSub.HWorkerID = DBUtility.ClsPub.isLong(subList[i].HWorkerID); - oSub.HWorkerNumber = DBUtility.ClsPub.isStrNull(subList[i].HWorkerNumber); - oSub.HSourceID = DBUtility.ClsPub.isLong(subList[i].HSourceID); - oSub.HTimeUnit = DBUtility.ClsPub.isStrNull(subList[i].HTimeUnit); - oSub.HPlanWorkTimes = DBUtility.ClsPub.isSingle(subList[i].HPlanWorkTimes); - oSub.HPlanBeginDate = DBUtility.ClsPub.isDate(subList[i].HPlanBeginDate); - oSub.HPlanEndDate = DBUtility.ClsPub.isDate(subList[i].HPlanEndDate); - oSub.HRelBeginDate = DBUtility.ClsPub.isDate(subList[i].HRelBeginDate); - oSub.HRelEndDate = DBUtility.ClsPub.isDate(subList[i].HRelEndDate); - oSub.HReadyTime = 0; - oSub.HQueueTime = 0; - oSub.HMoveTime = 0; - oSub.HBeginDayQty = DBUtility.ClsPub.isSingle(subList[i].HBeginDayQty); - oSub.HBeginFixQty = DBUtility.ClsPub.isSingle(subList[i].HBeginFixQty); - oSub.HFixWorkDays = DBUtility.ClsPub.isSingle(subList[i].HFixWorkDays); - oSub.HTrunWorkDays = DBUtility.ClsPub.isSingle(subList[i].HTrunWorkDays); - oSub.HReadyTimes = DBUtility.ClsPub.isSingle(subList[i].HReadyTimes); - oSub.HMyWorkDays = DBUtility.ClsPub.isSingle(subList[i].HMyWorkDays); - oSub.HOutPrice = DBUtility.ClsPub.isSingle(subList[i].HOutPrice); - oSub.HOutMoney = DBUtility.ClsPub.isSingle(subList[i].HOutMoney); - oSub.HLastProc = "鍚�"; - oSub.HFstProc = "鍚�"; - oSub.HKeyProc = DBUtility.ClsPub.isStrNull(subList[i].HKeyProc); - oSub.HSupID = DBUtility.ClsPub.isLong(subList[i].HSupID); - oSub.HSupFlag = DBUtility.ClsPub.isBool(subList[i].isEntrust); - oSub.HBackProc = DBUtility.ClsPub.isBool(subList[i].HBackProc); - oSub.HEdit = DBUtility.ClsPub.isBool(subList[i].HEdit); - if (oSub.HCenterID == 0 && oSub.HSupFlag == false) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝宸ヤ綔涓績鎴栧澶栨爣璁颁笉鑳藉悓鏃朵负绌�"; - objJsonResult.data = null; - return objJsonResult; - } - oSub.HICMOBillNo = DBUtility.ClsPub.isStrNull(subList[i].HICMOBillNo); - oSub.HICMOInterID = DBUtility.ClsPub.isLong(subList[i].HICMOInterID); - oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(subList[i].HSeOrderInterID); - oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HSeOrderEntryID); - oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HSeOrderBillNo); - oSub.HWWOrderInterID = DBUtility.ClsPub.isLong(subList[i].HWWOrderInterID); - oSub.HWWOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HWWOrderEntryID); - oSub.HWWOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HWWOrderBillNo); - oSub.HSumPassRate = DBUtility.ClsPub.isSingle(subList[i].HSumPassRate); - oSub.HPassRate = DBUtility.ClsPub.isSingle(subList[i].HPassRate); - oSub.HOverRate = DBUtility.ClsPub.isDoule(subList[i].HOverRate); - oSub.HMaxQty = DBUtility.ClsPub.isDoule(subList[i].HMaxQty); - oSub.HTechnologyParameter = DBUtility.ClsPub.isStrNull(subList[i].HTechnologyParameter); - oSub.HPicNum = DBUtility.ClsPub.isStrNull(subList[i].HPicNum); - oSub.HProcCheckNote = DBUtility.ClsPub.isStrNull(subList[i].HProcCheckNote); - oSub.HMouldNo = ""; - oSub.HProcWorkNum = ""; - BillNew.DetailColl.Add(oSub); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎸囧紩鍗℃棤淇濆瓨鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; } } - //淇濆瓨瀹屾瘯鍚庡鐞� - //if (BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew) - //{ - // bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); - //} - //else - //{ - // bResult = BillNew.ModifyBill(BillNew.omodel.HInterID, ref ClsPub.sExeReturnInfo); - //} - bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); - //鎻愮ず - if (bResult == true) + else { + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg4)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃棤淇濆瓨鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + + DBUtility.ClsPub.CurUserName = msg4; + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); + List<Model.ClsSc_ProcessExchangeBillMain> lsmain = new List<Model.ClsSc_ProcessExchangeBillMain>(); + msg2 = msg2.Replace("\\", ""); + msg2 = msg2.Replace("\n", ""); //\n + lsmain = oListModels.getObjectByJson_Sc_ProcessExchangeBillMain(msg2); + foreach (Model.ClsSc_ProcessExchangeBillMain oItem in lsmain) { - objJsonResult.code = "1"; + UserName = oItem.HMaker; //鍒跺崟浜� + oItem.HBillType = "3772"; + oItem.HBillSubType = HBillSubType == "SUB" ? HBillSubType : "3772"; + oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); + oItem.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month); + oItem.HDate = HBillSubType == "SUB" ? DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")) : oItem.HDate; + if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + oBill.omodel = oItem; + } + + //琛ㄤ綋鏁版嵁 + //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆� + msg3 = msg3.Substring(1, msg3.Length - 2); + msg3 = msg3.Replace("\\", ""); + msg3 = msg3.Replace("\n", ""); //\n + //msg2 = msg2.Replace("'", "鈥�"); + List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>(); + ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg3); + int i = 0; + foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in ls) + { + + i++; + oItemSub.HEntryID = i; + oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now); + oBill.DetailColl.Add(oItemSub); + + } + //淇濆瓨 + //淇濆瓨瀹屾瘯鍚庡鐞� + bool bResult; + if (msg5 == "xz") + { + LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo); + // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); + bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); + + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + } + else + { + LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",淇敼宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo); + bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); + + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "淇敼宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + } + if (bResult) + { + objJsonResult.code = "0"; objJsonResult.count = 1; - //objJsonResult.Message = "鍗曟嵁瀛樼洏瀹屾瘯!鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim(); - objJsonResult.Message = ClsPub.sExeReturnInfo+"鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim(); - objJsonResult.data = null; + objJsonResult.Message = "淇濆瓨鎴愬姛锛�"; + //WebAPIController.Add_Log("閫佽揣鍗曚笅鎺�", UserName, "鐢熸垚閫佽揣鍗�"); + objJsonResult.data = 1; return objJsonResult; } else { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = 1; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString(); + objJsonResult.data = 1; + return objJsonResult; + } + } + + //public json AddBillMain(string msg1) + //{ + // string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + // string msg2 = sArray[0].ToString();//琛ㄥご + // string msg3 = sArray[1].ToString();//琛ㄤ綋 + // string user = sArray[2].ToString();//鐢ㄦ埛鍚� + + // //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄� + // if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, user)) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; + // objJsonResult.data = null; + // return objJsonResult; + // } + + // bool bResult; + // try + // { + // msg2 = "[" + msg2.ToString() + "]"; + // List<Model.ClsSc_ProcessExchangeBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillMain>>(msg2); + // DAL.ClsSc_ProcessExchangeBill BillNew = new DAL.ClsSc_ProcessExchangeBill(); + // //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞� + // string s = ""; + // int sYear = 0; + // int sPeriod = 0; + // DateTime HDate = mainList[0].HDate;//鏃ユ湡 + // if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = s; + // objJsonResult.data = null; + // return objJsonResult; + // } + // BillNew.omodel.HPRDORGID= mainList[0].HPRDORGID;//缁勭粐 + // BillNew.omodel.HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + // BillNew.omodel.HYear = sYear; + // BillNew.omodel.HPeriod = sPeriod; + // BillNew.omodel.HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 + // BillNew.omodel.HDate = HDate; + // BillNew.omodel.HRemark = mainList[0].HRemark;//澶囨敞 + // BillNew.omodel.HMaker = mainList[0].HMaker; + // BillNew.omodel.HWWOrderInterID = ClsPub.isLong(mainList[0].HWWOrderInterID); + // BillNew.omodel.HWWOrderEntryID = ClsPub.isLong(mainList[0].HWWOrderEntryID); + // BillNew.omodel.HWWOrderBillNo = ClsPub.isStrNull(mainList[0].HWWOrderBillNo); + // BillNew.omodel.HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID); + // BillNew.omodel.HICMOEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); + // BillNew.omodel.HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); + // BillNew.omodel.HMaterID2 = ClsPub.isLong(mainList[0].HMaterID2); + // BillNew.omodel.HMaterID = ClsPub.isLong(mainList[0].HMaterID); + // BillNew.omodel.HMaterNumber = ClsPub.isStrNull(mainList[0].HMaterNumber); + // BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo); + // BillNew.omodel.HUnitID = ClsPub.isLong(mainList[0].HUnitID); + // BillNew.omodel.HUnitNumber = ClsPub.isStrNull(mainList[0].HUnitNumber); + // BillNew.omodel.HPlanQty = ClsPub.isDoule(mainList[0].HPlanQty); + // BillNew.omodel.HQty = ClsPub.isDoule(mainList[0].HQty); + // BillNew.omodel.HPlanBeginDate = ClsPub.isDate(mainList[0].HPlanBeginDate); + // BillNew.omodel.HPlanEndDate = ClsPub.isDate(mainList[0].HPlanEndDate); + // BillNew.omodel.HExplanation = ClsPub.isStrNull(mainList[0].HExplanation); + // BillNew.omodel.HInnerBillNo = ClsPub.isStrNull(mainList[0].HInnerBillNo); + // BillNew.omodel.HWorkShopID = ClsPub.isLong(mainList[0].HWorkShopID); + // BillNew.omodel.HSupID = ClsPub.isLong(mainList[0].HSupID); + // BillNew.omodel.HBLFlag = mainList[0].HBLFlag; + // BillNew.omodel.HMainMaterID = ClsPub.isLong(mainList[0].HMainMaterID); + // BillNew.omodel.HKeyMaterID = ClsPub.isLong(mainList[0].HKeyMaterID); + // BillNew.omodel.HOrderProcNO = ClsPub.isStrNull(mainList[0].HOrderProcNO); + // BillNew.omodel.HEquipMentID = ClsPub.isLong(mainList[0].HEquipMentID); + // BillNew.omodel.HMateOutBatchNo = ClsPub.isStrNull(mainList[0].HMateOutBatchNo); + // BillNew.omodel.HProjectNum = ClsPub.isStrNull(mainList[0].HProjectNum); + // BillNew.omodel.HProdMaterCode = ClsPub.isStrNull(mainList[0].HProdMaterCode); + // BillNew.omodel.HSeOrderBillNo = ClsPub.isStrNull(mainList[0].HSeOrderBillNo); + // BillNew.omodel.HCusShortName = ClsPub.isStrNull(mainList[0].HCusShortName); + // BillNew.omodel.HCusNeedMaterial = ClsPub.isStrNull(mainList[0].HCusNeedMaterial); + // BillNew.omodel.HPlanSendGoodsDate = ClsPub.isStrNull(mainList[0].HPlanSendGoodsDate); + // BillNew.omodel.HProdMaterName = ClsPub.isStrNull(mainList[0].HProdMaterName); + // BillNew.omodel.HCusName = ClsPub.isStrNull(mainList[0].HCusName); + // BillNew.omodel.HWorkRemark = ClsPub.isStrNull(mainList[0].HWorkRemark); + // BillNew.omodel.HImportNote = ClsPub.isStrNull(mainList[0].HImportNote); + // BillNew.omodel.HMaterNumber_A = ClsPub.isStrNull(mainList[0].HMaterNumber_A); + // BillNew.omodel.HMaterNumber_B = ClsPub.isStrNull(mainList[0].HMaterNumber_B); + // BillNew.omodel.HMaterNumber_C = ClsPub.isStrNull(mainList[0].HMaterNumber_C); + // BillNew.omodel.HMaterNumber_D = ClsPub.isStrNull(mainList[0].HMaterNumber_D); + // BillNew.omodel.HProdType = ClsPub.isStrNull(mainList[0].HProdType); + // BillNew.omodel.HMaterShortName = ClsPub.isStrNull(mainList[0].HMaterShortName); + // BillNew.omodel.HMaterIDA = ClsPub.isStrNull(mainList[0].HMaterIDA); + // BillNew.omodel.HMaterIDB = ClsPub.isStrNull(mainList[0].HMaterIDB); + // BillNew.omodel.HMaterIDC = ClsPub.isStrNull(mainList[0].HMaterIDC); + // BillNew.omodel.HMaterIDD = ClsPub.isStrNull(mainList[0].HMaterIDD); + // List<Model.ClsSc_ProcessExchangeBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillSub>>(msg3); + // BillNew.DetailColl = new List<Model.ClsSc_ProcessExchangeBillSub>(); + // if (BillNew.omodel.HICMOInterID == 0) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "璇烽�夋嫨浠诲姟鍗曪紒"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // for (int i = 0; i < subList.ToArray().Length; i++) + // { + // if (DBUtility.ClsPub.isInt(subList[i].HProcID) != 0)//HQty + // { + // Model.ClsSc_ProcessExchangeBillSub oSub = new Model.ClsSc_ProcessExchangeBillSub(); + // oSub.HEntryID = i+1; + // oSub.HRemark = DBUtility.ClsPub.isStrNull(subList[i].HRemark); + // oSub.HSourceInterID = ClsPub.isLong(mainList[0].HICMOInterID); + // oSub.HSourceEntryID = ClsPub.isLong(mainList[0].HICMOEntryID); + // oSub.HSourceBillType = "85"; + // oSub.HSourceBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo); + // oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty); + // //oSub.HRelationQty_In = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_In); + // //oSub.HRelationQty_Out = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Out); + // //oSub.HRelationQty_WWOrder = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_WWOrder); + // //oSub.HRelationQty_Bad = DBUtility.ClsPub.isDoule(subList[i].HRelationQty_Bad); + // oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney); + // oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan); + // oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(subList[i].HEntryCloseDate); + // oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType); + // oSub.HQty = DBUtility.ClsPub.isDoule(subList[i].HQty); + // if (oSub.HQty <= 0) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝娴佽浆鍗℃暟閲忎笉鑳戒负0鎴栬�呭皬浜�0"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // oSub.HProcNo = DBUtility.ClsPub.isLong(subList[i].HProcNo); + // if (oSub.HProcNo <= 0) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝娴佹按鍙蜂笉鑳戒负0鎴栬�呭皬浜�0"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // oSub.HProcID = DBUtility.ClsPub.isLong(subList[i].HProcID); + // oSub.HProcNumber = DBUtility.ClsPub.isStrNull(subList[i].HProcNumber); + // oSub.HWorkRemark = DBUtility.ClsPub.isStrNull(subList[i].HWorkRemark); + // oSub.HCenterID = DBUtility.ClsPub.isLong(subList[i].HCenterID); + // oSub.HDeptID = DBUtility.ClsPub.isLong(subList[i].HDeptID); + // oSub.HDeptNumber = DBUtility.ClsPub.isStrNull(subList[i].HDeptNumber); + // ////oSub.HGroupID = DBUtility.ClsPub.isLong(grdMain.Rows[i].Cells[HGroupIDCol].Value); + // oSub.HGroupNumber = DBUtility.ClsPub.isStrNull(subList[i].HGroupNumber); + // oSub.HWorkerID = DBUtility.ClsPub.isLong(subList[i].HWorkerID); + // oSub.HWorkerNumber = DBUtility.ClsPub.isStrNull(subList[i].HWorkerNumber); + // oSub.HSourceID = DBUtility.ClsPub.isLong(subList[i].HSourceID); + // oSub.HTimeUnit = DBUtility.ClsPub.isStrNull(subList[i].HTimeUnit); + // oSub.HPlanWorkTimes = DBUtility.ClsPub.isSingle(subList[i].HPlanWorkTimes); + // oSub.HPlanBeginDate = DBUtility.ClsPub.isDate(subList[i].HPlanBeginDate); + // oSub.HPlanEndDate = DBUtility.ClsPub.isDate(subList[i].HPlanEndDate); + // oSub.HRelBeginDate = DBUtility.ClsPub.isDate(subList[i].HRelBeginDate); + // oSub.HRelEndDate = DBUtility.ClsPub.isDate(subList[i].HRelEndDate); + // oSub.HReadyTime = 0; + // oSub.HQueueTime = 0; + // oSub.HMoveTime = 0; + // oSub.HBeginDayQty = DBUtility.ClsPub.isSingle(subList[i].HBeginDayQty); + // oSub.HBeginFixQty = DBUtility.ClsPub.isSingle(subList[i].HBeginFixQty); + // oSub.HFixWorkDays = DBUtility.ClsPub.isSingle(subList[i].HFixWorkDays); + // oSub.HTrunWorkDays = DBUtility.ClsPub.isSingle(subList[i].HTrunWorkDays); + // oSub.HReadyTimes = DBUtility.ClsPub.isSingle(subList[i].HReadyTimes); + // oSub.HMyWorkDays = DBUtility.ClsPub.isSingle(subList[i].HMyWorkDays); + // oSub.HOutPrice = DBUtility.ClsPub.isSingle(subList[i].HOutPrice); + // oSub.HOutMoney = DBUtility.ClsPub.isSingle(subList[i].HOutMoney); + // oSub.HLastProc = "鍚�"; + // oSub.HFstProc = "鍚�"; + // oSub.HKeyProc = DBUtility.ClsPub.isStrNull(subList[i].HKeyProc); + // oSub.HSupID = DBUtility.ClsPub.isLong(subList[i].HSupID); + // oSub.HSupFlag = DBUtility.ClsPub.isBool(subList[i].isEntrust); + // oSub.HBackProc = DBUtility.ClsPub.isBool(subList[i].HBackProc); + // oSub.HEdit = DBUtility.ClsPub.isBool(subList[i].HEdit); + // if (oSub.HCenterID == 0 && oSub.HSupFlag == false) + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "绗�" + ClsPub.isStrNull(i + 1) + "琛岋紝宸ヤ綔涓績鎴栧澶栨爣璁颁笉鑳藉悓鏃朵负绌�"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // oSub.HICMOBillNo = DBUtility.ClsPub.isStrNull(subList[i].HICMOBillNo); + // oSub.HICMOInterID = DBUtility.ClsPub.isLong(subList[i].HICMOInterID); + // oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(subList[i].HSeOrderInterID); + // oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HSeOrderEntryID); + // oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HSeOrderBillNo); + // oSub.HWWOrderInterID = DBUtility.ClsPub.isLong(subList[i].HWWOrderInterID); + // oSub.HWWOrderEntryID = DBUtility.ClsPub.isLong(subList[i].HWWOrderEntryID); + // oSub.HWWOrderBillNo = DBUtility.ClsPub.isStrNull(subList[i].HWWOrderBillNo); + // oSub.HSumPassRate = DBUtility.ClsPub.isSingle(subList[i].HSumPassRate); + // oSub.HPassRate = DBUtility.ClsPub.isSingle(subList[i].HPassRate); + // oSub.HOverRate = DBUtility.ClsPub.isDoule(subList[i].HOverRate); + // oSub.HMaxQty = DBUtility.ClsPub.isDoule(subList[i].HMaxQty); + // oSub.HTechnologyParameter = DBUtility.ClsPub.isStrNull(subList[i].HTechnologyParameter); + // oSub.HPicNum = DBUtility.ClsPub.isStrNull(subList[i].HPicNum); + // oSub.HProcCheckNote = DBUtility.ClsPub.isStrNull(subList[i].HProcCheckNote); + // oSub.HMouldNo = ""; + // oSub.HProcWorkNum = ""; + // BillNew.DetailColl.Add(oSub); + // } + // } + // //淇濆瓨瀹屾瘯鍚庡鐞� + // //if (BillStatus == DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew) + // //{ + // // bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); + // //} + // //else + // //{ + // // bResult = BillNew.ModifyBill(BillNew.omodel.HInterID, ref ClsPub.sExeReturnInfo); + // //} + // bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo); + // //鎻愮ず + // if (bResult == true) + // { + // objJsonResult.code = "1"; + // objJsonResult.count = 1; + // //objJsonResult.Message = "鍗曟嵁瀛樼洏瀹屾瘯!鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim(); + // objJsonResult.Message = ClsPub.sExeReturnInfo+"鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim(); + // objJsonResult.data = null; + // return objJsonResult; + // } + // else + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo; + // 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[鏂板鍗曟嵁-淇濆瓨鎸夐挳-鎵归噺澶嶅埗] + /// <summary> + /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("Sc_ProcessExchangeBill/AddBill_Copy_pl")] + [HttpPost] + public object AddBill_Copy_pl([FromBody] JObject sMainSub) + { + var _value = sMainSub["sMainSub"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + int msg2 = int.Parse(sArray[0].ToString()); + string msg3 = sArray[1].ToString(); + string msg4 = sArray[2].ToString(); + string msg5 = sArray[3].ToString(); + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + + string UserName = ""; + ListModels oListModels = new ListModels(); + string sReturn = ""; + try + { + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg4)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒"; objJsonResult.data = null; return objJsonResult; } + + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); + DBUtility.ClsPub.HOrgID = long.Parse(msg5); + DBUtility.ClsPub.CurUserName = msg4; + oBill.ShowBill(long.Parse(msg3), ref sReturn); + + ds = oCN.RunProcReturn("select isnull(sum(HQty),0) from Sc_ProcessExchangeBillMain where HICMOBillNo='" + oBill.omodel.HICMOBillNo + "' and HInterID <>"+ oBill.omodel.HInterID, "Sc_ProcessExchangeBillMain"); + var HQty = double.Parse(ds.Tables[0].Rows[0][0].ToString()); + int num = 0; + //鍗曟嵁鏁伴噺 * 寮犳暟 + 宸茬敓鎴愪笉鍖呮嫭鏈崟鎹殑鏁伴噺 >鐢熶骇璁㈠崟鏁伴噺 + if ((oBill.omodel.HQty * msg2) + HQty > oBill.omodel.HPlanQty) + { + if (((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) % oBill.omodel.HQty) == 0) + { + num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty); + } else + { + num = (int)((oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty) / oBill.omodel.HQty); + num += 1; + } + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏈�澶氬彲浠ュ鍒�" + num + "寮狅紒"; + objJsonResult.data = null; + return objJsonResult; + } + + if (num == 0) { + double HPlanQty = oBill.omodel.HPlanQty - oBill.omodel.HQty - HQty; + for (int i = 0; i < msg2; i++) + { + oBill.omodel.HBillNo = DBUtility.ClsPub.CreateBillCode("3772", ref DBUtility.ClsPub.sExeReturnInfo, true); + oBill.omodel.HDate =DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd")); + oBill.omodel.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); + oBill.omodel.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month); + oBill.omodel.HChecker = ""; + oBill.omodel.HCheckDate = ""; + oBill.omodel.HMaker = msg4; + + if (HPlanQty < oBill.omodel.HQty) + { + oBill.omodel.HQty = HPlanQty; + } + + for (int j = 0; j < oBill.DetailColl.Count; j++) + { + oBill.DetailColl[j].HRelationQty_In = 0; + oBill.DetailColl[j].HRelationQty_Out = 0; + oBill.DetailColl[j].HRelationQty_Bad = 0; + } + + //淇濆瓨瀹屾瘯鍚庡鐞� + bool bResult; + LogService.Write("鐢ㄦ埛:" + msg4 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo); + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg4 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + + bResult = oBill.AddBill(ref sReturn); + if (bResult) + { + num++; + HPlanQty -= oBill.omodel.HQty; + } + } + + } + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "澶嶅埗浜�" + num + "寮犲崟鎹紒"; + objJsonResult.data = 1; + return objJsonResult; + + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString(); + objJsonResult.data = 1; + return objJsonResult; + } + } + #endregion + + #region[鎵归噺鏂板鍗曟嵁-淇濆瓨鎸夐挳] + /// <summary> + /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("Sc_ProcessExchangeBill/AddBill_pl")] + [HttpPost] + public object AddBill_pl([FromBody] JObject sMainSub) + { + var _value = sMainSub["sMainSub"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString();//涓昏〃 + string msg3 = sArray[1].ToString();//鍗曟嵁鍙峰強鏁伴噺 + string msg4 = sArray[2].ToString();//宸ヨ壓璺嚎 + string msg5 = sArray[3].ToString();//绫诲瀷 + string msg6 = sArray[4].ToString();//鐢ㄦ埛 + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + + ListModels oListModels = new ListModels(); + + try + { + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Edit", 1, false, msg6)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鍗曟嵁鍙� 鍙婃暟閲� + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); + List<Model.ClsSc_ProcessExchangeBillMain> ListHbillNo = new List<Model.ClsSc_ProcessExchangeBillMain>(); + msg3 = msg3.Replace("\\", ""); + msg3 = msg3.Replace("\n", ""); //\n + ListHbillNo = JsonConvert.DeserializeObject<List<Model.ClsSc_ProcessExchangeBillMain>>(msg3); + + //涓昏〃淇℃伅 + Model.ClsSc_ProcessExchangeBillMain Main = new Model.ClsSc_ProcessExchangeBillMain(); + msg2 = msg2.Replace("\\", ""); + msg2 = msg2.Replace("\n", ""); //\n + Main = JsonConvert.DeserializeObject<Model.ClsSc_ProcessExchangeBillMain>(msg2); + + DBUtility.ClsPub.CurUserName = msg6; + Main.HMaker = msg6; //鍒跺崟浜� + Main.HBillType = "3772"; + Main.HBillSubType = "3772"; + Main.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); + Main.HMaterID = Main.HMaterID2; + if (DBUtility.ClsPub.isStrNull(Main.HDate) == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + + //琛ㄤ綋鏁版嵁 + //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆� + msg4 = msg4.Substring(1, msg4.Length - 2); + msg4 = msg4.Replace("\\", ""); + msg4 = msg4.Replace("\n", ""); //\n + List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>(); + ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg4); + + //寰幆鏂板鍗曟嵁 + for (int i = 0; i < ListHbillNo.Count; i++) + { + Main.HBillNo = ListHbillNo[i].HBillNo; + Main.HQty = ListHbillNo[i].HQty; + Main.HSplitNo = ListHbillNo[i].HSplitNo; + Main.HAuxQty = 0; + Main.HAuxUnit = 0; + oBill.omodel = Main; + + int j = 0; + foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in ls) + { + j++; + oItemSub.HEntryID = j; + oItemSub.HQty = Main.HQty; + oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now); + oBill.DetailColl.Add(oItemSub); + } + //淇濆瓨 + //淇濆瓨瀹屾瘯鍚庡鐞� + bool bResult=false; + if (msg5 == "2") + { + LogService.Write("鐢ㄦ埛:" + msg6 + ",鏃ユ湡:" + DateTime.Now + ",鏂板宸ュ簭娴佽浆鍗″崟鎹�:" + oBill.omodel.HBillNo); + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + msg6 + "','" + HComputerName + "','" + "鏂板宸ュ簭娴佽浆鍗″崟鎹細" + oBill.omodel.HBillNo + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + + bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); + } + oBill.DetailColl.Clear(); + if (!bResult) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = 1; + return objJsonResult; + } + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "淇濆瓨鎴愬姛锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString(); + objJsonResult.data = 1; + return objJsonResult; + } + } + + #endregion + + #region 宸ュ簭娴佽浆鍗″垪琛ㄦ樉绀哄櫒鍏锋竻鍗曚俊鎭� + [Route("Sc_ProcessExchangeBillList/QJQD")] + [HttpGet] + public object QJQD(Int64 HProcExchHinteID) + { + try + { + + //寰楀埌淇℃伅 + ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuerySub_Mould where hmainid= " + HProcExchHinteID , "h_v_Sc_ProcessExchangeBillQuerySub_Mould"); + //鍐欏叆淇℃伅 + //if (ds == null || ds.Tables[0].Rows.Count == 0) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鏈煡璇㈠埌鍑虹珯鍗曟槑缁嗕俊鎭紒"; + // objJsonResult.data = null; + // return objJsonResult; + //} + + List<object> listCol = new List<object>(); + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + listCol.Add(JsonConvert.DeserializeObject(str)); + } + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = listCol; + return objJsonResult; } catch (Exception e) { @@ -260,7 +686,9 @@ return objJsonResult; } } + #endregion + #region[杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚] /// <summary> /// 杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚 /// </summary> @@ -268,7 +696,7 @@ /// <returns>object</returns> [Route("Sc_ProcessExchangeBill/GetICMOBillList")] [HttpGet] - public object GetICMOBillList(int hmainid,int OrganizationID) + public object GetICMOBillList(int hmainid,int HEntryID, int OrganizationID) { try { @@ -280,7 +708,7 @@ objJsonResult.data = null; return objJsonResult; } - ds = oCN.RunProcReturn("select * from h_v_Sc_ICMOBillListDetail where hmainid=" + hmainid, "h_v_Sc_ICMOBillListDetail"); + ds = oCN.RunProcReturn("select * from h_v_Sc_ICMOBillListDetail where hmainid=" + hmainid + " and HEntryID=" + HEntryID, "h_v_S_Sc_ICMOBillList"); if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; @@ -307,7 +735,9 @@ return objJsonResult; } } + #endregion + #region[杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚] /// <summary> /// 杩斿洖鐢熶骇浠诲姟鍗曟槑缁嗚 /// </summary> @@ -315,7 +745,7 @@ /// <returns>object</returns> [Route("Sc_ProcessExchangeBill/GetICMOBillDetail")] [HttpGet] - public object GetICMOBillDetail(int hmainid, int OrganizationID) + public object GetICMOBillDetail(int hmainid,int HEntryID, int OrganizationID) { try { @@ -327,7 +757,7 @@ objJsonResult.data = null; return objJsonResult; } - ds = oCN.RunProcReturn("select * from h_v_S_Sc_ICMOBillList where hmainid=" + hmainid, "h_v_S_Sc_ICMOBillList"); + ds = oCN.RunProcReturn("select * from h_v_S_Sc_ICMOBillList where hmainid=" + hmainid + " and HEntryID=" + HEntryID+ " and HSTOCKINORGID='"+ OrganizationID+"'", "h_v_S_Sc_ICMOBillList"); if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; @@ -354,7 +784,1123 @@ return objJsonResult; } } + #endregion - // + #region[缂栬緫鏃惰幏鍙栬〃澶存暟鎹甝 + /// <summary> + /// 缂栬緫鑾峰彇琛ㄥご淇℃伅 + /// </summary> + /// <param name="HInterID">涓籌D</param> + /// <returns></returns> + [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain")] + [HttpGet] + public ApiResult<DataSet> GetProcessExchangeBillMain(string HInterID) + { + if (string.IsNullOrEmpty(HInterID)) + return new ApiResult<DataSet> { code = -1, msg = "ID涓嶈兘涓虹┖" }; + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + var dataSet = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillQuery where hmainid= " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery"); + if (dataSet == null || dataSet.Tables[0].Rows.Count == 0) + return new ApiResult<DataSet> { code = -1, msg = "涓嶅瓨鍦ㄥ伐搴忔祦杞崱" }; + return new ApiResult<DataSet> { code = 1, msg = "鏌ヨ鎴愬姛", data = dataSet }; + } + #endregion + + #region[缂栬緫鏃惰幏鍙栬〃浣撴暟鎹甝 + [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillSub")] + [HttpGet] + public object GetProcessExchangeBillSub(string HInterID) + { + DataSet ds; + try + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + string sql = string.Format(@"select 娴佹按鍙� HProcNo,HProcID,宸ュ簭浠g爜 HProcNumber,宸ュ簭鍚嶇О HProcName,鍔犲伐璇存槑 HWorkRemark,HCenterID,宸ヤ綔涓績浠g爜 HCenterNumber, + 宸ヤ綔涓績 HCenterName,HSupID,渚涘簲鍟嗕唬鐮� HSupNumber,渚涘簲鍟� HSupName,isEntrust HSupFlag,璁″垝鏁伴噺 HQty,鍔犲伐鍗曚环 HOutPrice, 琛ㄤ綋澶囨敞 HRemark, + 杩涚珯鍏宠仈鏁伴噺 HRelationQty_In,鍑虹珯鍏宠仈鏁伴噺 HRelationQty_Out,濮斿宸ュ崟鏁伴噺 HRelationQty_WWOrder,涓嶅悎鏍兼暟閲� HRelationQty_Bad,瓒呴姣斾緥 HOverRate, + 鑹巼 HPassRate,绱鑹巼 HSumPassRate,鍥剧焊缂栧彿 HPicNum,鏈伐搴忕‘璁よ褰� HProcCheckNote,宸ヨ壓鍙傛暟 HTechnologyParameter,HDeptID, + 鍔犲伐杞﹂棿浠g爜 HDeptNumber,鍔犲伐杞﹂棿 HDeptName,鍑虹珯鎶ュ簾鍏宠仈鏁伴噺 HRelationQty_OutBad + from h_v_Sc_ProcessExchangeBillQuerySub"); + ds = oCN.RunProcReturn(sql+ " where hmainid="+ HInterID + " order by cast(娴佹按鍙� as int) ", "h_v_Sc_ProcessExchangeBillQuerySub"); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + } + return objJsonResult; + } + #endregion + + #region [宸ュ簭娴佽浆鍗″垹闄ゅ姛鑳絔 + /// <summary> + /// 宸ュ簭娴佽浆鍗″垹闄ゅ姛鑳� + /// </summary> + /// <returns></returns> + [Route("Sc_ProcessExchangeBill/DeltetProcessExchangeBillByID")] + [HttpGet] + public object DeltetProcessExchangeBillByID(string HInterID, int HPRDORGID, string user, string HSouceBillType) + { + + if (HSouceBillType == "SUB") + { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Sub_Drop", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎸囧紩鍗℃棤鍒犻櫎鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + else { + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Drop", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娴佽浆鍗℃棤鍒犻櫎鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + + + string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О + + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); + + string[] HInterIDs = HInterID.Split(','); + string[] HBillNos = new string[HInterIDs.Length]; + + string HBillNo_S = ""; + + for (int i = 0; i < HInterIDs.Length; i++) + { + Int64 lngBillKey = 0; + lngBillKey = DBUtility.ClsPub.isLong(HInterIDs[i]); + + DBUtility.ClsPub.HOrgID = HPRDORGID; + if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (lngBillKey == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁ID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + //鍒犻櫎鍓嶅垽鏂叧鑱旀暟閲� + SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + DataSet ds; + ds = oCn.RunProcReturn("select ct from ( " + + " select 1 ct from Sc_StationInBillMain Where HProcExchInterID=" + lngBillKey + " " + + " union all " + + " select 1 from Sc_StationOutBillMain Where HProcExchInterID=" + lngBillKey + " ) as a ", "Sc_ProcExchReportSub"); + if (ds.Tables[0].Rows.Count != 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "娴佽浆鍗″凡缁忔湁涓嬫父杩涘嚭绔欏崟鍚庯紝涓嶅厑璁稿垹闄わ紒"; + objJsonResult.data = null; + return objJsonResult; + } + + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn)) + { + if (oSystemParameter.omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame == "Y") + { + if (oBill.omodel.HMaker != user && (user != "admin" && user != "Admin")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒"; + objJsonResult.data = null; + return objJsonResult; + } + } + } + + + if (oBill.omodel.HBillStatus > 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵��,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + if (oBill.omodel.HChecker != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍙�:" + oBill.omodel.HBillNo + "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�"; + objJsonResult.data = null; + return objJsonResult; + } + HBillNo_S += oBill.omodel.HBillNo + ","; + HBillNos[i] = oBill.omodel.HBillNo; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鏈壘鍒�"; + objJsonResult.data = null; + return objJsonResult; + } + } + + HBillNo_S = HBillNo_S.Substring(0, HBillNo_S.Length - 1); + + oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鍒犻櫎宸ュ簭娴佽浆鍗″崟鎹細" + HBillNo_S + "','LMES-宸ュ簭娴佽浆鍗℃ā鍧�','" + DBUtility.ClsPub.IPAddress + "','鍒犻櫎鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo); + + for (int i = 0; i < HInterIDs.Length; i++) + { + oCN.BeginTran(); + if (HSouceBillType == "SUB") + { + ds = oCN.RunProcReturn("select * from Sc_ProcessExchangeBillMain where HInterID=" + HInterIDs[i], "Sc_ProcessExchangeBillMain"); + + if (ds.Tables[0].Rows.Count == 0) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳祦杞崱鏁版嵁!"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.RunProc("update Sc_ProcessExchangeBillSub set HSourceID=0 where HInterID=" + ds.Tables[0].Rows[0]["HMainSourceInterID"].ToString() + " and HEntryID=" + ds.Tables[0].Rows[0]["HMainSourceEntryID"].ToString()); + } + + //鍒犻櫎鍓嶆帶鍒�========================================= + string sql1 = "exec h_p_Sc_ProcessExchangeBill_BeforeDelCtrl " + HInterIDs[i] + ",'" + HBillNos[i] + "','" + user + "'"; + ds = oCN.RunProcReturn(sql1, "h_p_Sc_ProcessExchangeBill_BeforeDelCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:鍒犻櫎鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴"; + objJsonResult.data = null; + oCN.RollBack(); + return objJsonResult; + } + + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍒犻櫎澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + oCN.RollBack(); + return objJsonResult; + } + //================================================================================== + + bool IsDete = oBill.DeleteBill(long.Parse(HInterIDs[i]), HBillNos[i], "h_p_Sc_ProcessExchangeBill_AfterDelCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo); + + if (!IsDete) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + + + oCN.Commit(); + } + + if (oSystemParameter.omodel.WMS_CampanyName == "鐟炰笌绁�") + { + ds = oCN.RunProcReturn("select * from Sc_ProcessExchangeBillMain where HICMOInterID='" + oBill.omodel.HICMOInterID + "' and HICMOEntryID='" + oBill.omodel.HICMOEntryID + "'", "Sc_ProcessExchangeBillMain"); + + if (ds.Tables[0].Rows.Count == 0) + { + oCN.RunProc("update AIS20220308151944..T_PRD_MOENTRY set F_BSV_TEXT2 = '鍚�' where FID='" + oBill.omodel.HICMOInterID + "' and FENTRYID='" + oBill.omodel.HICMOEntryID + "'"); + } + } + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = null; + return objJsonResult; + } + #endregion + + #region[缂栬緫鏃惰幏鍙栬〃浣撴暟鎹�(宸ヨ壓鍙傛暟)] + [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillSubTech")] + [HttpGet] + public object GetProcessExchangeBillSubTech(string HInterID) + { + DataSet ds; + try + { + List<object> columnNameList = new List<object>(); + + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + string sql = string.Format(@"exec h_p_Sc_GetProcessExchangeBillSubTech "); + ds = oCN.RunProcReturn(sql + HInterID, "h_p_Sc_GetProcessExchangeBillSubTech"); + + //娣诲姞鍒楀悕 + 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.list = columnNameList; + objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鎷嗗垎 缂栬緫鑾峰彇娴佽浆鍗℃暟鎹� + /// <summary> + /// 缂栬緫鑾峰彇琛ㄥご淇℃伅 + /// </summary> + /// <param name="HInterID">涓籌D</param> + /// <returns></returns> + [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_cf")] + [HttpGet] + public object GetProcessExchangeBillMain_cf(string HInterID) + { + DataSet ds; + try + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + ds = oCN.RunProcReturn("select top 1 * from h_v_Sc_ProcessExchangeBillQuery where hmainid= " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery"); + + DataSet Ds = oCN.RunProcReturn("select top 1 HNo from Sc_ProcessExchangeBillmain where HBillNo like '%" + ds.Tables[0].Rows[0]["鍗曟嵁鍙�"].ToString() + "-%' order by LEN(HBillno) , HbillNo desc ", "Sc_ProcessExchangeBillmain"); + + char c = '1'; + string sNo = "01"; + int sCount = 0; + + if (Ds == null || Ds.Tables[0].Rows.Count == 0) + { + } + else + { + sCount = DBUtility.ClsPub.isInt(Ds.Tables[0].Rows[0]["HNo"]); + if (sCount >= 1) + { + sNo = Convert.ToChar(sCount + (int)c).ToString(); + sNo = "00" + sNo; + sNo = sNo.Substring(sNo.Length - 2, 2); + } + } + + string sBillNo = ds.Tables[0].Rows[0]["鍗曟嵁鍙�"].ToString(); + sBillNo = sBillNo.Replace("WORKX", ""); + sBillNo = sBillNo.Replace("WORK", ""); + sBillNo = sBillNo.Replace("_", "-"); + sBillNo = sBillNo + "-" + sNo; + ds.Tables[0].Rows[0]["鍗曟嵁鍙�"] = sBillNo; + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + } + return objJsonResult; + } + + + /// <summary> + /// 鑾峰彇琛ㄤ綋鏁版嵁淇℃伅 + /// </summary> + /// <param name="HInterID"></param> + /// <returns></returns> + [Route("Sc_ProcessExchangeBill/GetProcessExchangeBillSub_cf")] + [HttpGet] + public object GetProcessExchangeBillSub_cf(string HInterID) + { + DataSet ds; + try + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + + var ds1= oCN.RunProcReturn("select isnull(max(娴佹按鍙�),0) from h_v_Sc_ProcessExchangeBillQuerySub where hmainid=" + HInterID + " and 鍑虹珯鍏宠仈鏁伴噺>0 ", "h_v_Sc_ProcessExchangeBillQuerySub"); + + string sql = string.Format(@"select * from h_v_Sc_ProcessExchangeBillQuerySub"); + + ds = oCN.RunProcReturn(sql + " where hmainid=" + HInterID + " and 鍑虹珯鍏宠仈鏁伴噺=0 and cast(娴佹按鍙� as int)>" + ds1 .Tables[0].Rows[0][0].ToString(), "h_v_Sc_ProcessExchangeBillQuerySub"); + + if (float.Parse(ds.Tables[0].Rows[0]["杩涚珯鍏宠仈鏁伴噺"].ToString()) > 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "褰撳墠鍗曟嵁:"+ ds.Tables[0].Rows[0]["宸ュ簭鍚嶇О"].ToString() + "鏈嚭绔欎笉鑳芥媶鍒�!"; + objJsonResult.data = ds.Tables[0]; + } + else { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + } + return objJsonResult; + } + + /// <summary> + /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("Sc_ProcessExchangeBill/AddBill_cf")] + [HttpPost] + public object AddBill_cf([FromBody] JObject sMainSub) + { + var _value = sMainSub["sMainSub"].ToString(); + string msg1 = _value.ToString(); + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString(); + string msg3 = sArray[1].ToString(); + string msg4 = sArray[2].ToString(); + string msg5 = sArray[3].ToString(); + string linterid = sArray[4].ToString(); + + string UserName = ""; + ListModels oListModels = new ListModels(); + + try + { + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_CF", 1, false, msg5)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳媶鍒嗘潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); + List<Model.ClsSc_ProcessExchangeBillMain> lsmain = new List<Model.ClsSc_ProcessExchangeBillMain>(); + msg2 = msg2.Replace("\\", ""); + msg2 = msg2.Replace("\n", ""); //\n + lsmain = oListModels.getObjectByJson_Sc_ProcessExchangeBillMain(msg2); + string sReturn = ""; + DBUtility.ClsPub.HOrgID = lsmain[0].HPRDORGID; + oBill.ShowBill(long.Parse(linterid), ref sReturn); + foreach (Model.ClsSc_ProcessExchangeBillMain oItem in lsmain) + { + if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛佹病鏈夊崟鎹棩鏈燂紝鏃犳硶淇濆瓨锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + + oBill.omodel.HMaker = msg5; //鍒跺崟浜� + oBill.omodel.HNo = DBUtility.ClsPub.isLong(oItem.HBillNo.Split('-')[1]); + oBill.omodel.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year); + oBill.omodel.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month); + oBill.omodel.HDate = oItem.HDate;// 鏃ユ湡 + oBill.omodel.HPlanBeginDate = oItem.HPlanBeginDate;// 璁″垝寮�宸ユ棩鏈� + oBill.omodel.HPlanEndDate = oItem.HPlanEndDate;// 璁″垝瀹屽伐鏃ユ湡 + oBill.omodel.HQty = oItem.HQty;// 鏁伴噺 + oBill.omodel.HBillNo = oItem.HBillNo;// 鍗曟嵁鍙� + } + + //琛ㄤ綋鏁版嵁 + //鎸� },{鏉ユ媶鍒嗘暟缁� //鍘绘帀銆愬拰銆� + msg3 = msg3.Substring(1, msg3.Length - 2); + msg3 = msg3.Replace("\\", ""); + msg3 = msg3.Replace("\n", ""); //\n + //msg2 = msg2.Replace("'", "鈥�"); + List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>(); + ls = oListModels.getObjectByJson_Sc_ProcessExchangeBillSub(msg3); + + string HEntryID = ""; + + for (int i = 0; i < oBill.DetailColl.Count; i++) + { + if (oBill.DetailColl[i].HRelationQty_Out > 0 || oBill.DetailColl[i].HRelationQty_In > 0) + { + HEntryID += i + ","; + } + } + if (HEntryID != "") + { + HEntryID = HEntryID.Substring(0, HEntryID.Length - 1); + var num = HEntryID.Split(','); + + for (int k = 0; k < num.Length; k++) + { + oBill.DetailColl.RemoveAt(int.Parse(num[k]) - k); + } + } + + int j = 0 ; + foreach (Model.ClsSc_ProcessExchangeBillSub oItemSub in oBill.DetailColl) + { + if (ls[j].HSplitQty > ls[j].HLeftQty) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "绗�" + (j + 1) + "琛岋紝鎷嗗垎鏁伴噺涓嶈兘澶т簬鍙媶鍒嗘暟閲忥紒"; + objJsonResult.data = null; + return objJsonResult; + } + + if (oBill.DetailColl[j].HProcNo == ls[j].HProcNo) + { + oBill.DetailColl[j].HEntryID = j+1; + oBill.DetailColl[j].HQty = ls[j].HQty; + oBill.DetailColl[j].HBackProc = ls[j].HBackProc; + oBill.DetailColl[j].HPrevSourceInterID = ls[j].HPrevSourceInterID; + oBill.DetailColl[j].HPrevSourceEntryID = ls[j].HPrevSourceEntryID; + oBill.DetailColl[j].HRemark = ls[j].HRemark; + oBill.DetailColl[j].HTechnologyParameter = ls[j].HTechnologyParameter; + j++; + } + } + + + //淇濆瓨 + //淇濆瓨瀹屾瘯鍚庡鐞� + bool bResult = false; + if (msg4 == "1") + { + bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo); + } + //else + //{ + // bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo); + //} + + oCN.BeginTran(); + + oCN.RunProc("update Sc_ProcessExchangeBillSub set HQty=(select HQty from Sc_ProcessExchangeBillMain where HInterID="+ oBill.DetailColl[0].HPrevSourceInterID + ") where HInterID=" + oBill.DetailColl[0].HPrevSourceInterID ); + + oCN.Commit(); + + if (bResult) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "淇濆瓨鎴愬姛锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.sExeReturnInfo; + objJsonResult.data = 1; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString(); + objJsonResult.data = 1; + return objJsonResult; + } + } + + #endregion + + + #region 宸ュ簭娴佽浆鍗″鏍�/鍙嶅鏍稿姛鑳� + [Route("Sc_ProcessExchangeBill/CheckSc_ProcessExchangeBill")] + [HttpGet] + public object CheckSc_ProcessExchangeBill(string HInterID, int Type, string user,string HBillSubType) + { + try + { + if (HBillSubType == "SUB") + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Check", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎸囧紩鍗℃棤鏉冮檺瀹℃牳!"; + objJsonResult.data = null; + return objJsonResult; + } + } + else { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Sub_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; + } + + ClsPub.CurUserName = user; + BillOld.MvarItemKey = "Sc_ProcessExchangeBillMain"; + 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; + } + } + + //瀹℃牳鍓嶆帶鍒� + string HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString(); + sql = "exec h_p_Sc_ProcessExchangeBill_BeforeCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_ProcessExchangeBill_BeforeCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴"; + objJsonResult.data = null; + return objJsonResult; + + } + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + return objJsonResult; + } + + + //瀹℃牳鍗曟嵁 + if (!BillOld.CheckBill(Int64.Parse(HInterID), HBillNo, "h_p_Sc_ProcessExchangeBill_AfterCheckCtrl", user, 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]["HChecker"] == null || ds.Tables[0].Rows[0]["HChecker"].ToString() == "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插弽瀹℃牳!涓嶉渶瑕佸啀鍙嶅鏍�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + + //鍙嶅鏍稿墠鎺у埗 + string HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString(); + sql = "exec h_p_Sc_ProcessExchangeBill_BeforeUnCheckCtrl " + int.Parse(HInterID) + ",'" + HBillNo + "','" + user + "'"; + ds = oCN.RunProcReturn(sql, "h_p_Sc_ProcessExchangeBill_BeforeUnCheckCtrl"); + if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�"; + objJsonResult.data = null; + return objJsonResult; + + } + if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ; + objJsonResult.data = null; + return objJsonResult; + } + + //鍙嶅鏍稿崟鎹� + if (BillOld.AbandonCheck(Int64.Parse(HInterID), HBillNo, "h_p_Sc_ProcessExchangeBill_AfterUnCheckCtrl", user, ref ClsPub.sExeReturnInfo)) + { + //SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + //DataSet DSet = oCn.RunProcReturn("exec h_p_Sc_ICMOBill_AbandonCheckCtrl " + int.Parse(HInterID), "h_p_Sc_ICMOBill_AbandonCheckCtrl"); + ////if (DBUtility.ClsPub.isInt(DSet.Tables[0].Rows[0]["Hback"]) != 0) + ////{ + //// objJsonResult.code = "0"; + //// objJsonResult.count = 1; + //// objJsonResult.Message = "璇ヤ换鍔″崟宸蹭笅鎺ㄦ祦杞崱锛屼笉鍏佽鍙嶅鏍�" + DBUtility.ClsPub.isStrNull(DSet.Tables[0].Rows[0]["HBackRemark"]); + //// objJsonResult.data = null; + //// return objJsonResult; + ////} + } + else + { + 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 宸ュ簭娴佽浆鍗″叧闂�/鍙嶅叧闂姛鑳� + [Route("Sc_ProcessExchangeBill/CloseSc_ProcessExchangeBill")] + [HttpGet] + public object CloseSc_ProcessExchangeBill(string HInterID, int Type, string user,string HBillSubType) + { + try + { + if (HBillSubType == "SUB") + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_Sub_Close", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎸囧紩鍗℃棤鏉冮檺鍏抽棴!"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + //鍒ゆ柇鏄惁鏈夊垹闄ゆ潈闄� + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_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_ProcessExchangeBillMain"; + 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 宸ュ簭娴佽浆鍗� 浣滃簾/鍙嶄綔搴� + /// <summary> + /// </summary> + /// <param name="HInterID">鍗曟嵁ID</param> + /// <param name="IsAudit">浣滃簾(0),鍙嶄綔搴�(1)</param> + /// <param name="CurUserName">浣滃簾浜�</param> + /// <returns></returns> + [Route("Sc_ProcessExchangeBill/DeleteSc_ProcessExchangeBill")] + [HttpGet] + public object DeleteSc_ProcessExchangeBill(int HInterID, int IsAudit, string CurUserName) + { + string ModRightNameCheck = "Sc_ProcessExchangeBill_Delete"; + DBUtility.ClsPub.CurUserName = CurUserName; + try + { + //妫�鏌ユ潈闄� + if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "浣滃簾澶辫触锛佹棤鏉冮檺锛�"; + objJsonResult.data = null; + return objJsonResult; + } + //HInterID鏁版嵁鍒ゆ柇 + 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); //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹� + DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill(); //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣� + + ////閽堝闇�瑕佽繘琛岀殑鎿嶄綔锛屾楠屽綋鍓嶅崟鎹殑鐘舵�佹槸鍚︽敮鎸侀渶瑕佽繘琛岀殑鎿嶄綔 + //if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁 + //{ + // if (oBill.omodel.HChecker.Trim() != "") + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘杩涜浣滃簾锛�"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // if (IsAudit == 0) //浣滃簾鍒ゆ柇 + // { + // if (oBill.omodel.HDeleteMan.Trim() != "") + // { + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鍗曟嵁宸蹭綔搴�!涓嶈兘鍐嶄綔搴燂紒"; + // objJsonResult.data = null; + // return objJsonResult; + // } + // } + // if (IsAudit == 1) //鍙嶄綔搴熷垽鏂� + // { + // if (oBill.omodel.HDeleteMan.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.Cancelltion(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) //鍙嶅叧闂彁浜� + { + //鍙嶅叧闂彁浜� + oBill.oCn.BeginTran(); + if (oBill.AbandonCancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true) + { + + //鎺у埗鍏宠仈鏁伴噺,鍒ゆ柇鍙嶅叧闂悗锛岀敓浜ц鍗曚笅鎺ㄦ祦杞崱鎬绘暟鏄惁瓒呰繃璁″垝鏁伴噺 + ds = oCN.RunProcReturn("exec h_p_Sc_ProcessExchangeBill_Checkqty " + lngBillKey, "h_p_Sc_ProcessExchangeBill_Checkqty"); + if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) != 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙嶄綔搴熷け璐�!鍘熷洜:" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]).ToString(); + objJsonResult.data = null; + + oBill.oCn.RollBack(); + return objJsonResult; + } + + oBill.oCn.Commit(); + 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_ProcessExchangeBill/GetProcessExchangeBillMain_Change_init")] + [HttpGet] + public object GetProcessExchangeBillMain_Change_init(string HInterID) + { + try + { + if (string.IsNullOrEmpty(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖"; + objJsonResult.data = null; + return objJsonResult; + } + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + + ds = oCN.RunProcReturn("select * from h_v_Sc_ProcessExchangeBillQuery where hmainid = " + HInterID + " ", "h_v_Sc_ProcessExchangeBillQuery"); + + if (ds==null||ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛佷笉瀛樺湪宸ュ簭娴佽浆鍗�"; + 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("Sc_ProcessExchangeBill/GetProcessExchangeBillMain_Change_save")] + [HttpGet] + public object GetProcessExchangeBillMain_Change_save(string HInterID,string HMaterModel2, string user) + { + try + { + if (!DBUtility.ClsPub.Security_Log("Sc_ProcessExchangeBill_ChangeBill", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犲崟鎹彉鏇存潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + if (string.IsNullOrEmpty(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛丠InterID涓嶈兘涓虹┖"; + objJsonResult.data = null; + return objJsonResult; + } + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + + oCN.BeginTran(); + oCN.RunProc("update Sc_ProcessExchangeBillMain set HMaterModel2 = '" + HMaterModel2 + "' where HInterID = " + HInterID + ""); + oCN.Commit(); + + 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 + } } \ No newline at end of file -- Gitblit v1.9.1