From a09ff1d01aeebae9037118035f10e06c570b092e Mon Sep 17 00:00:00 2001
From: ch <37327@LLOOCCY>
Date: 星期三, 19 一月 2022 08:46:34 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs |  184 ++++++++++++++++++++++-----------------------
 1 files changed, 90 insertions(+), 94 deletions(-)

diff --git a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
index 19632c0..6068dc9 100644
--- a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
+++ b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs
@@ -104,6 +104,9 @@
             string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
             string msg2 = sArray[0].ToString();
             string msg3 = sArray[1].ToString();
+
+            int hentryid = int.Parse(sArray[2].ToString());//瀛愯〃鐨勯『搴廼d
+            int OperationType = int.Parse(sArray[3].ToString());//鏁版嵁绫诲瀷 1娣诲姞 3淇敼
             try
             {
                 msg2 = "[" + msg2.ToString() + "]";
@@ -112,7 +115,7 @@
                 long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
                 string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
                 DateTime HDate = mainList[0].HDate;//鏃ユ湡
-                int HYear = 2021;
+                int HYear = DateTime.Now.Year;
                 double HPeriod = 1;
                 string HRemark = mainList[0].HRemark;//澶囨敞
                 string HMaker = mainList[0].HMaker;//鍒跺崟浜�
@@ -136,23 +139,46 @@
                 double HDelSourceRate = mainList[0].HDelSourceRate;//鍑忚祫婧愬噺閲�
                 int HPRDORGID = mainList[0].HPRDORGID;  //缁勭粐
 
-                //涓昏〃
-                oCN.RunProc("Insert Into Gy_RoutingBillMain   " +
-                "(HBillType,HInterID,HBillNo,HDate" +
-                ",HYear,HPeriod,HRemark,HMaker,Hmakedate,HMaterID,HName,HMaterTypeID" +
-                ",HRoutingGroupID,HUnitID,HMaterNumber,HUnitNumber,HStandard" +
-                ",HMainGroupID,HMainProcID,HMainCenterID,HMainTimeUnit,HMainUnitTime,HMainWorkQty" +
-                ",HMainPrice,HStdSourceQty,HAddSourceRate,HPRDORGID,HDelSourceRate" +
-                ") " +
-                " values('" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
-                "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()," + HMaterID + ",'" + HName + "'," + HMaterTypeID +
-                "," + HRoutingGroupID + "," + HUnitID + ",'" + HMaterNumber + "','" + HUnitNumber + "'," + Convert.ToString(HStandard ? 1 : 0) +
-                "," + HMainGroupID + "," + HMainProcID + "," + HMainCenterID + ",'" + HMainTimeUnit + "'," + HMainUnitTime + "," + HMainWorkQty +
-                "," + HMainPrice + "," + HStdSourceQty + "," + HAddSourceRate + "," + HPRDORGID + "," + HDelSourceRate +
-                ") ");
+                string HPicNumVer = mainList[0].HPicNumVer;//鍥惧彿鐗堟湰
+                string HPicNumAssemble = mainList[0].HPicNumAssemble;//鎬昏鍥惧彿
+                string HMaterTexture = mainList[0].HMaterTexture;//鏉愯川
+                string HProductNum = mainList[0].HProductNum;//鎴愬搧缂栧彿
+                string HVerNum = mainList[0].HVerNum;//鐗堟湰
 
+                if (OperationType == 1)//鏂板
+                {
+                    //涓昏〃
+                    oCN.RunProc("Insert Into Gy_RoutingBillMain   " +
+                    "(HBillType,HInterID,HBillNo,HDate" +
+                    ",HYear,HPeriod,HRemark,HMaker,Hmakedate,HMaterID,HName,HMaterTypeID" +
+                    ",HRoutingGroupID,HUnitID,HMaterNumber,HUnitNumber,HStandard" +
+                    ",HMainGroupID,HMainProcID,HMainCenterID,HMainTimeUnit,HMainUnitTime,HMainWorkQty" +
+                    ",HMainPrice,HStdSourceQty,HAddSourceRate,HPRDORGID,HDelSourceRate" +
+                    ",HPicNumVer,HPicNumAssemble,HMaterTexture,HProductNum,HVerNum) " + " values('" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'" +
+                    "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()," + HMaterID + ",'" + HName + "'," + HMaterTypeID +
+                    "," + HRoutingGroupID + "," + HUnitID + ",'" + HMaterNumber + "','" + HUnitNumber + "'," + Convert.ToString(HStandard ? 1 : 0) +
+                    "," + HMainGroupID + "," + HMainProcID + "," + HMainCenterID + ",'" + HMainTimeUnit + "'," + HMainUnitTime + "," + HMainWorkQty +
+                    "," + HMainPrice + "," + HStdSourceQty + "," + HAddSourceRate + "," + HPRDORGID + "," + HDelSourceRate +
+                    ",'"+ HPicNumVer + "','" + HPicNumAssemble + "','" + HMaterTexture + "','" + HProductNum + "','" + HVerNum + "') ");
+                }
+                else if (OperationType == 3)
+                { //淇敼
+                    oCN.RunProc("update Gy_RoutingBillMain  set " +
+                       "HDate='" + HDate +
+                       "',HYear='" + HYear + "',HPeriod='" + HPeriod + "',HRemark='" + HRemark + "',HMaker='" + HMaker +
+                       "',Hmakedate=getdate(),HMaterID='" + HMaterID + "',HName='" + HName + "',HMaterTypeID='" + HMaterTypeID +
+                       "',HRoutingGroupID='" + HRoutingGroupID + "',HUnitID='" + HUnitID + "',HMaterNumber='" + HMaterNumber + "',HUnitNumber='" + HUnitNumber +
+                       "',HStandard='" + Convert.ToString(HStandard ? 1 : 0) + "',HMainGroupID='" + HMainGroupID + "',HMainProcID='" + HMainProcID + "',HMainCenterID='" + HMainCenterID +
+                       "',HMainTimeUnit='" + HMainTimeUnit + "',HMainUnitTime='" + HMainUnitTime + "',HMainWorkQty='" + HMainWorkQty + "',HMainPrice='" + HMainPrice +
+                       "',HStdSourceQty='" + HStdSourceQty + "',HAddSourceRate='" + HAddSourceRate + "',HDelSourceRate='" + HDelSourceRate +
+                        "',HPicNumVer='" + HPicNumVer + "',HPicNumAssemble='" + HPicNumAssemble + "',HMaterTexture='" + HMaterTexture + "'" +
+                        ",HProductNum='" + HProductNum + "',HVerNum='" + HVerNum + "' where HInterID='" + HInterID + "'");
+
+                    //鍒犻櫎瀛愯〃
+                    oCN.RunProc("delete from Gy_RoutingBillSub where HInterID='" + HInterID + "' and HEntryID='" + hentryid + "'");
+                }
                 //淇濆瓨瀛愯〃
-                objJsonResult = AddBillSub(msg3, HInterID);
+                objJsonResult = AddBillSub(msg3, HInterID, hentryid);
                 if (objJsonResult.code == "0")
                 {
                     objJsonResult.code = "0";
@@ -164,23 +190,28 @@
                 oCN.RunProc("exec h_p_Gy_RoutingBillCheck " + HInterID);  //璁剧疆榛樿宸ヨ壓璺嚎
                 //鍒ゆ柇鏄惁閲嶅宸ュ簭鍙�
                 ds = oCN.RunProcReturn("exec h_p_Gy_RoutingCtrl " + HInterID, "h_p_Gy_RoutingCtrl");
-                if (ds == null || ds.Tables[0].Rows.Count == 0)
+
+                if (OperationType == 1)
                 {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鍒ゆ柇閲嶅宸ュ簭鍙峰け璐ワ紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                else
-                {
-                    if (ClsPub.isStrNull(ds.Tables[0].Rows[0][0]) == "2")
+                    
+                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                     {
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
-                        objJsonResult.Message = ClsPub.isStrNull(ds.Tables[0].Rows[0][1]);
+                        objJsonResult.Message = "鍒ゆ柇閲嶅宸ュ簭鍙峰け璐ワ紒";
                         objJsonResult.data = null;
                         return objJsonResult;
+                    }
+                    else
+                    {
+                        if (ClsPub.isStrNull(ds.Tables[0].Rows[0][0]) == "2")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = ClsPub.isStrNull(ds.Tables[0].Rows[0][1]);
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
                 }
                 objJsonResult.code = "1";
@@ -199,11 +230,14 @@
             }
         }
 
-        public json AddBillSub(string msg3,long HInterID) {
-            List<Gy_RoutingBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_RoutingBillSub>>(msg3);
-            for (int i=0;i< subList.ToArray().Length;i++)
+        public json AddBillSub(string msg3, long HInterID, int hentryid)
+        {
+            List<Gy_RoutingBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_RoutingBillSub>>(msg3);
+            int i = 0;
+            foreach (Gy_RoutingBillSub oSub in DetailColl)
             {
-                if (subList[i].HWorkQty <= 0)
+                i++;
+                if (oSub.HWorkQty <= 0)
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -211,72 +245,34 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                long HCenterID = 0;//宸ヤ綔涓績ID
-                string HTimeUnit = "";//鏃堕棿鍗曚綅
-                double HUnitTime = 0;//杩愯鏃堕棿
-                double HReadyTime = 0;//鍑嗗鏃堕棿
-                double HQueueTime = 0;//鎺掗槦鏃堕棿
-                double HMoveTime = 0;//杞Щ鏃堕棿
-                string HCloseMan = "";//鍏抽棴浜�
-                bool HCloseType = false;//
-                string HProcType = "";//宸ュ簭绫诲瀷
-                bool HNextProcFlag = false;//涓嬮亾娴佽浆宸ュ簭
-                bool HFlowProc = false;//娴佽浆宸ュ簭
-                double HFixPrice = 0;//鐝骇瀹氶
-                double HProcPrice = 0;//宸ュ簭宸ヤ环
-                double HBadPrice = 0;//涓嶅悎鏍煎崟浠�
-                double HWasterPrice = 0;//鎶ュ簾鍗曚环
-                bool HStdFlag = false;//鏍囧噯瀹氶
-                double HBeginDayQty = 0;//寮�宸ヤ綑閲忥紙澶╂暟锛�
-                double HBeginFixQty = 0;//寮�宸ヤ綑閲忥紙鍥烘暟锛�
-                long HSourceInterID = 0;//婧愬崟涓诲唴鐮�
-                long HSourceEntryID = 0;//婧愬崟瀛愬唴鐮�
-                string HSourceBillNo = "";//婧愬崟鍗曞彿
-                string HSourceBillType = "";//婧愬崟绫诲瀷
-                double HRelationQty = 0;//鍏宠仈鏁伴噺
-                double HRelationMoney = 0;//鍏宠仈閲戦
-                bool HAutoTrunFlag = false;//鑷姩绉昏浆
-                double HFixWorkDays = 0;//涓婇亾鍥哄畾澶╂暟
-                double HTrunWorkDays = 0;//涓婇亾寰幆鍛ㄦ湡
-                double HReadyTimes = 0;//鏈亾鍑嗗鏃堕棿
-                double HICMOReadyTimes = 0;//鎹㈠崟鍑嗗鏃堕棿
-                double HSubStdEmpQty = 0;//鏍囧噯浜烘暟
-                double HSubCanUseSourceQty = 0;//鍙搷浣滆澶囨暟
-                long HProcID_S = 0;//宸ユID
-                long HCenterID_S = 0;//浜х嚎涓績ID
-                double HWorkQty_S = 0;//浜х嚎浜ц兘
-                double HSubStdEmpQty_S = 0;//浜х嚎浜烘暟
-                string HMouldNo = "";//妯″叿缂栧彿
-                double HChangeMould = 0;//鎹㈡ā鏃堕棿/鎹㈠垁鏃堕棿
-                string HPackStd = "";//鍛ㄨ浆绠辨爣鍑�
-                string HPack = "";//鍛ㄨ浆绠�
-                string HPutArea = "";//鏆傛斁鍖�
-                double HMyWorkDays = 0;//鐢熶骇鍛ㄦ湡
-                double HMyFixWorkDays = 0;//鍥哄畾鐢熶骇澶╂暟
 
                 oCN.RunProc("Insert into Gy_RoutingBillSub " +
-                      "(HInterID,HEntryID,HProcID,HProcNO,HSupID,HSupFlag" +
-                      ",HWorkQty,HCenterID,HTimeUnit,HUnitTime" +
-                      ",HReadyTime,HQueueTime,HMoveTime" +
-                      ",HCloseMan,HCloseType,HRemark,HProcType,HNextProcFlag,HFlowProc" +
-                      ",HFixPrice,HProcPrice,HBadPrice,HWasterPrice,HStdFlag,HBeginDayQty,HBeginFixQty" +
-                      ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HAutoTrunFlag" +
-                      ",HFixWorkDays,HTrunWorkDays,HReadyTimes,HICMOReadyTimes,HSubStdEmpQty,HSubCanUseSourceQty" +
-                      ",HProcID_S,HCenterID_S,HWorkQty_S,HSubStdEmpQty_S,HMouldNo,HChangeMould" +
-                      ",HPackStd,HPack,HPutArea,HMyWorkDays,HMyFixWorkDays,HPassRate" +
-                      ") values("
-                      + HInterID + "," + i + "," + subList[i].HProcID + "," + subList[i].HProcNo + "," + subList[i].HSupID + "," + Convert.ToString(subList[i].HSupFlag ? 1 : 0) + "" +
-                      "," + subList[i].HWorkQty + "," + HCenterID + ",'" + HTimeUnit + "'," + HUnitTime +
-                      "," + HReadyTime + "," + HQueueTime + "," + HMoveTime +
-                      ",'" + HCloseMan + "'," + Convert.ToString(HCloseType ? 1 : 0) + ",'" + subList[i].HRemark + "','" + HProcType + "'," + Convert.ToString(HNextProcFlag ? 1 : 0) + "," + Convert.ToString(HFlowProc ? 1 : 0) +
-                      "," + HFixPrice + "," + HProcPrice + "," + HBadPrice + "," + HWasterPrice + "," + Convert.ToString(HStdFlag ? 1 : 0) + "," + HBeginDayQty + "," + HBeginFixQty +
-                      "," + HSourceInterID + "," + HSourceEntryID + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty + "," + HRelationMoney + "," + Convert.ToString(HAutoTrunFlag ? 1 : 0) +
-                     "," + HFixWorkDays + "," + HTrunWorkDays + "," + HReadyTimes + "," + HICMOReadyTimes + "," + HSubStdEmpQty + "," + HSubCanUseSourceQty +
-                     "," + HProcID_S + "," + HCenterID_S + "," + HWorkQty_S + ", " + HSubStdEmpQty_S + ",'" + HMouldNo + "'," + HChangeMould +
-                     ",'" + HPackStd + "','" + HPack + "','" + HPutArea + "'," + HMyWorkDays + "," + HMyFixWorkDays + "," + subList[i].HPassRate +
-                      ") ");
+                  "(HInterID,HEntryID,HProcID,HProcNO,HSupID,HSupFlag" +
+                  ",HWorkQty,HCenterID,HTimeUnit,HUnitTime" +
+                  ",HReadyTime,HQueueTime,HMoveTime" +
+                  ",HCloseMan,HCloseType,HRemark,HProcType,HNextProcFlag,HFlowProc" +
+                  ",HFixPrice,HProcPrice,HBadPrice,HWasterPrice,HStdFlag,HBeginDayQty,HBeginFixQty" +
+                  ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HAutoTrunFlag" +
+                  ",HFixWorkDays,HTrunWorkDays,HReadyTimes,HICMOReadyTimes,HSubStdEmpQty,HSubCanUseSourceQty" +
+                  ",HProcID_S,HCenterID_S,HWorkQty_S,HSubStdEmpQty_S,HMouldNo,HChangeMould" +
+                  ",HPackStd,HPack,HPutArea,HMyWorkDays,HMyFixWorkDays,HPassRate" +
+                  ",HTechnologyParameter,HPicNum,HProcCheckNote" +
+                  ",HOverRate,HProcWorkNum" +
+                  ") values("
+                  + HInterID + "," + (hentryid==-1?i: hentryid) + "," + oSub.HProcID.ToString() + ",'" + (hentryid == -1 ? i : hentryid) + "'," + oSub.HSupID.ToString() + "," + Convert.ToString(oSub.HSupFlag ? 1 : 0) + "" +
+                  "," + oSub.HWorkQty.ToString() + "," + oSub.HCenterID.ToString() + ",'" + oSub.HTimeUnit.ToString() + "'," + oSub.HUnitTime.ToString() +
+                  "," + oSub.HReadyTime.ToString() + "," + oSub.HQueueTime.ToString() + "," + oSub.HMoveTime.ToString() +
+                  ",'" + oSub.HCloseMan + "'," + Convert.ToString(oSub.HCloseType ? 1 : 0) + ",'" + oSub.HRemark + "','" + oSub.HProcType + "'," + Convert.ToString(oSub.HNextProcFlag ? 1 : 0) + "," + Convert.ToString(oSub.HFlowProc ? 1 : 0) +
+                  "," + oSub.HFixPrice.ToString() + "," + oSub.HProcPrice.ToString() + "," + oSub.HBadPrice.ToString() + "," + oSub.HWasterPrice.ToString() + "," + Convert.ToString(oSub.HStdFlag ? 1 : 0) + "," + oSub.HBeginDayQty.ToString() + "," + oSub.HBeginFixQty.ToString() +
+                  "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + "," + Convert.ToString(oSub.HAutoTrunFlag ? 1 : 0) +
+                 "," + oSub.HFixWorkDays.ToString() + "," + oSub.HTrunWorkDays.ToString() + "," + oSub.HReadyTimes.ToString() + "," + oSub.HICMOReadyTimes.ToString() + "," + oSub.HSubStdEmpQty.ToString() + "," + oSub.HSubCanUseSourceQty.ToString() +
+                 "," + oSub.HProcID_S.ToString() + "," + oSub.HCenterID_S.ToString() + "," + oSub.HWorkQty_S.ToString() + ", " + oSub.HSubStdEmpQty_S.ToString() + ",'" + oSub.HMouldNo + "'," + oSub.HChangeMould.ToString() +
+                 ",'" + oSub.HPackStd + "','" + oSub.HPack + "','" + oSub.HPutArea + "'," + oSub.HMyWorkDays.ToString() + "," + oSub.HMyFixWorkDays.ToString() + "," + oSub.HPassRate.ToString() +
+                 ",'" + oSub.HTechnologyParameter.ToString() + "','" + oSub.HPicNum.ToString() + "','" + oSub.HProcCheckNote.ToString() +
+                 "', " + oSub.HOverRate.ToString() + ",'" + oSub.HProcWorkNum.ToString() + "'" +
+                  ") ");
             }
-            
+
             objJsonResult.code = "1";
             objJsonResult.count = 1;
             objJsonResult.Message = null;

--
Gitblit v1.9.1