From ab7c79d12c1fdd8b4046b7e7616e730df71f50a2 Mon Sep 17 00:00:00 2001
From: wangyi <2946747746@qq.com>
Date: 星期一, 12 一月 2026 15:29:13 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/MJGL/Sc_MouldScrapRequestBillController.cs |  203 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 203 insertions(+), 0 deletions(-)

diff --git a/WebAPI/Controllers/MJGL/Sc_MouldScrapRequestBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldScrapRequestBillController.cs
index cc4c6eb..7f7be16 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldScrapRequestBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldScrapRequestBillController.cs
@@ -244,6 +244,7 @@
                     NewHEntryID += 1;
                 }
 
+
                 oCN.RunProc($@"Insert into Sc_MouldScrapRequestBillSub 
                 (HInterID,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty
 	            ,HRelationMoney,HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust,HQty,HPrice,HMoney,HDesignLife,HLeaveLife,HWHID) 
@@ -261,6 +262,208 @@
         }
         #endregion
 
+
+
+        #region 鍣ㄥ叿鎶ュ簾鐢宠鍗� 淇濆瓨/缂栬緫鍔熻兘
+        [Route("Sc_MouldScrapRequestBill/MouldScrapRequestBillEdit1")]
+        [HttpPost]
+        public object MouldScrapRequestBillEdit1([FromBody] JObject sMainSub)
+        {
+            try
+            {
+                var _value = sMainSub["sMainSub"].ToString();
+                string msg1 = _value.ToString();
+                oCN.BeginTran();
+                //淇濆瓨涓昏〃
+                objJsonResult = AddBillMain1(msg1);
+                if (objJsonResult.code == "0")
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                oCN.Commit();
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鍗曟嵁淇濆瓨鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "淇濆瓨澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+        public json AddBillMain1(string msg1)
+        {
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+            string msg3 = sArray[1].ToString(); //瀛愯〃鏁版嵁
+    
+            try
+            {
+                msg2 = "[" + msg2.ToString() + "]";
+                List<ClsSc_MouldScrapRequestBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_MouldScrapRequestBillMain>>(msg2);
+                
+                List<ClsSc_MouldScrapRequestBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_MouldScrapRequestBillSub>>(msg3);
+
+                DataTable dtMould = GetMaterialByMouldNo(DetailColl[0].HMaterID);
+                DataRow row = dtMould.Rows[0];
+                string sErrMsg = "";
+                Int64 HInterID = 0;
+                string HBillNo = "";
+                HInterID = DBUtility.ClsPub.CreateBillID_Prod("3823", ref sErrMsg);
+                HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("3823", ref sErrMsg, true);
+                long HBillStatus = 1;//鍗曟嵁鍙�
+                long HPRDORGID = 100038;//缁勭粐
+                DateTime HDate = DateTime.Now;//鏃ユ湡
+                string HRemark = "閽夐拤鏁版嵁鍚屾";//澶囨敞
+                long HEmpID =  0;//鐢宠浜�  
+                long HDeptID = 0;//閮ㄩ棬
+                long HMangerID = 0;//璐熻矗浜�
+                long HWHID = row["HWhID"] != DBNull.Value ? Convert.ToInt32(row["HWhID"]) : 0;
+                string HReason = "閽夐拤鏁版嵁鍚屾鎶ュ簾";//鎶ュ簾鍘熷洜
+                string HMaker = "閽夐拤";//鍒跺崟浜�
+
+                DateTime dt = DateTime.Now;
+
+
+
+                //ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_POOrderBillList");
+
+         
+                    //DataSet Ds;
+                    //Int64 NewHInterID = 1;
+                    //Ds = oCN.RunProcReturn("select MAX(HInterID)HInterID from Cg_POOrderBillMain", "Cg_POOrderBillMain");
+                    //if (Ds.Tables[0].Rows.Count != 0 && ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"].ToString()) != 0)
+                    //{
+                    //    NewHInterID = ClsPub.isLong(Ds.Tables[0].Rows[0]["HInterID"].ToString());
+                    //    NewHInterID += 1;
+                    //}
+                    //涓昏〃
+                    oCN.RunProc(@"Insert Into Sc_MouldScrapRequestBillMain   
+                        (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate,HBillNo,HBillStatus
+	                    ,HReason,HExplanation,HRemark,HBackRemark,HMaker,HMakeDate,HMainSourceInterID
+	                    ,HMainSourceEntryID,HMainSourceBillNo,HEmpID,HDeptID,HMangerID,HWHID,HCheckItemNowID
+                        ,HCheckItemNextID,HCheckFlowID,HBacker,HChecker,HUpDater,HCloseMan,HCloseType,HDeleteMan,HInnerBillNo)
+                        values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 3823 + "','" +
+                    3823 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HReason + "','" + mainList[0].HExplanation + "','" + HRemark +
+                    "','" + mainList[0].HBackRemark + "','" + HMaker + "','" + dt + "'," + mainList[0].HMainSourceInterID +
+                    "," + mainList[0].HMainSourceEntryID + ",'" + mainList[0].HMainSourceBillNo + "'," + HEmpID + "," +HDeptID + "," + HMangerID + "," + HWHID + ",0,0,0" + ",'" + mainList[0].HBacker + "','" + mainList[0].HChecker + "','" + mainList[0].HUpDater + "','" + mainList[0].HCloseMan + "'," + 0 + ",'" + mainList[0].HDeleteMan + "','" + mainList[0].HInnerBillNo + "'" + ")");
+           
+             
+                //淇濆瓨瀛愯〃
+                objJsonResult = AddBillSub1(msg3, HInterID);
+
+                if (objJsonResult.code == "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = null;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        public json AddBillSub1(string msg3, long HInterID)
+        {
+            List<ClsSc_MouldScrapRequestBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_MouldScrapRequestBillSub>>(msg3);
+
+
+
+            int i = 0;
+            foreach (ClsSc_MouldScrapRequestBillSub oSub in DetailColl)
+            {
+                i++;
+
+                DataSet Cs;
+                Int64 NewHEntryID = 1;
+                Cs = oCN.RunProcReturn("select MAX(HEntryID)HEntryID from Sc_MouldScrapRequestBillSub", "Sc_MouldScrapRequestBillSub");
+                if (Cs.Tables[0].Rows.Count != 0 && ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString()) != 0)
+                {
+                    NewHEntryID = ClsPub.isLong(Cs.Tables[0].Rows[0]["HEntryID"].ToString());
+                    NewHEntryID += 1;
+                }
+
+                DataTable dtMould = GetMaterialByMouldNo(oSub.HMaterID);
+                DataRow row = dtMould.Rows[0];
+            
+                oSub.HUnitID = row["HUnitID"] != DBNull.Value ? Convert.ToInt32(row["HUnitID"]) : 0;
+                oSub.HQty = 1;
+                oSub.HWHID = row["HWhID"] != DBNull.Value ? Convert.ToInt32(row["HWhID"]) : 0;
+                oSub.HMaterID = row["hmainid"] != DBNull.Value ? Convert.ToInt32(row["hmainid"]) : 0;
+  
+
+
+                oCN.RunProc($@"Insert into Sc_MouldScrapRequestBillSub 
+                (HInterID,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty
+	            ,HRelationMoney,HMaterID,HPropertyID,HSecUnitID,HSecUnitRate,HUnitID,HQtyMust,HQty,HPrice,HMoney,HDesignLife,HLeaveLife,HWHID) 
+                 values({HInterID},{NewHEntryID},'{oSub.HRemark}',{oSub.HSourceInterID}
+                ,{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney},{oSub.HMaterID}
+                ,{oSub.HPropertyID},{oSub.HSecUnitID},{oSub.HSecUnitRate},{oSub.HUnitID},0,{oSub.HQty},{oSub.HPrice},{oSub.HMoney},{oSub.HDesignLife}
+                ,{oSub.HLeaveLife},{oSub.HWHID})");
+            }
+
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = null;
+            objJsonResult.data = null;
+            return objJsonResult;
+        }
+
+
+        #region 鏍规嵁鍐呯爜鑾峰彇鑾峰彇鍣ㄥ叿淇℃伅
+
+        public DataTable GetMaterialByMouldNo(long HMaterID)
+        {
+            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+
+            string sql = @"SELECT 
+                    HUnitID,
+                    HWhID,
+                    HSPID,
+                    hmainid
+               FROM h_v_Gy_MouldFileList as a
+               WHERE a.HMaterID= '" + HMaterID + "' AND a.HBillType = '3899'";
+
+            var dataSet = oCN.RunProcReturn(sql, "h_v_Gy_MouldFileList");
+
+            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
+                return null;
+
+            return dataSet.Tables[0];
+        }
+
+        #endregion
+
+
         #region [鍒犻櫎]
         [Route("Sc_MouldScrapRequestBill/Delete")]
         [HttpGet]

--
Gitblit v1.9.1