From 5a3caef6e991f1ee69d8e5dc355468e570805e32 Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期四, 16 一月 2025 12:56:07 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs | 1294 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 1,258 insertions(+), 36 deletions(-)

diff --git a/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs b/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs
index e765a51..8c4f92d 100644
--- a/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs
+++ b/WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs
@@ -1,4 +1,5 @@
 锘縰sing DBUtility;
+using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
 using System;
 using System.Collections.Generic;
@@ -8,7 +9,10 @@
 using System.Net.Http;
 using System.Web.Http;
 using WebAPI.Models;
-
+using System.Web;
+using WebAPI.Controllers.SCGL.鏃ヨ鍒掔鐞�;
+using System.IO;
+using SyntacticSugar.constant;
 namespace WebAPI.Controllers.SBGL
 {
     public class Gy_EquipFileMainController : ApiController
@@ -29,7 +33,7 @@
         {
             try
             {
-                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileList", 1, false, user))
+                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_Query", 1, false, user))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -48,22 +52,12 @@
                     ds = oCN.RunProcReturn(sql, "h_v_Gy_EquipFileMainList");
                 }
 
-                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
-                //{
+              
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.data = ds.Tables[0];
                 return objJsonResult;
-                //}
-                //else
-                //{
-                //objJsonResult.code = "0";
-                //objJsonResult.count = 0;
-                //objJsonResult.Message = "鏃犳暟鎹�";
-                //objJsonResult.data = null;
-                //return objJsonResult;
-                //}
             }
             catch (Exception e)
             {
@@ -75,6 +69,53 @@
             }
         }
 
+        #endregion
+
+        #region 涓嬫帹鏍规嵁璁惧id鏌ヨ鍥炴樉
+        [Route("Gy_EquipFileMain/get锘縎b_EquipList")]
+        [HttpGet]
+        public object getSb_EquipBeginBillList(int HInterID, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_EquipFileBill_Query", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ヨ澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_Gy_EquipFileMainList where hmainid=" + HInterID, " h_v_Gy_EquipFileMainList");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
         #endregion
 
         #region [璁惧妗f鍒犻櫎鍔熻兘]
@@ -91,7 +132,7 @@
                 return objJsonResult;
             }
 
-            string s = "";
+            //string s = "";
             Int64 lngBillKey = 0;
             lngBillKey = DBUtility.ClsPub.isLong(HItemID);
             if (lngBillKey == 0)
@@ -103,9 +144,23 @@
                 return objJsonResult;
             }
             DLL.ClsGy_EquipFileMain oBill = new DLL.ClsGy_EquipFileMain();
-            if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))
+            oCN.BeginTran();
+            ds = oCN.RunProcReturn("select * from Gy_EquipFileBillMain where HInterID=" + HItemID, "Gy_EquipFileBillMain");
+            if (ds.Tables[0].Rows.Count > 0)
             {
+                if (int.Parse(ds.Tables[0].Rows[0]["HBillStatus"].ToString()) > 1)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁褰撳墠澶勪簬涓嶈兘鍒犻櫎鐘舵�侊紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 oCN.RunProc("Delete From Gy_EquipFileBillMain  where HInterID=" + lngBillKey);
+                oCN.RunProc("Delete From Gy_EquipFileBillSub_MaintainRule  where HInterID=" + lngBillKey);
+                oCN.RunProc("Delete From Gy_EquipFileBillSub_DotCheckRule  where HInterID=" + lngBillKey);
+                oCN.Commit();
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "鍒犻櫎鎴愬姛";
@@ -120,6 +175,7 @@
                 objJsonResult.data = null;
                 return objJsonResult;
             }
+            
         }
 
         #endregion
@@ -150,6 +206,80 @@
         }
         #endregion
 
+        # region 璁惧淇濆吇瑙勭▼缂栬緫鏃惰幏鍙栬〃浣撴暟鎹柊(淇濆吇瑙勭▼鍒楄〃銆佺偣妫�瑙勭▼鍒楄〃)
+        [Route("Gy_EquipFileMain/Gy_EquipFileMainSubAndSubItem")]
+        [HttpGet]
+        public object Gy_EquipFileMainSubAndSubItem(string HInterID)
+        {
+
+            DataSet ds, ds1;
+            List<object> list = new List<object>();
+            string Swhere = "";
+            try
+            {
+                if (HInterID != "" || HInterID != null)
+                {
+                    Swhere = " and hmainid='" + HInterID + "'";
+                }
+                else
+                {
+                    Swhere = HInterID;
+                }
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                //鑾峰彇淇濆吇椤圭洰缂栬緫鏁版嵁
+                string sql = "select 淇濆吇椤圭洰ID HMaintainItemID,淇濆吇椤圭洰浠g爜 HMaintainItemNumber,淇濆吇椤圭洰 HMaintainItem,淇濆吇閮ㄤ綅 HMaintainPart,鍏蜂綋瑕佹眰 HClaim,璐熻矗浜篒D HManagerID,璐熻矗浜轰唬鐮� HManagerNumber,璐熻矗浜哄悕绉� HManagerName,瀛愬娉�2 HRemark from h_v_Sb_EquipMaintainRuleSub_Item where 1 = 1 " + Swhere + "";
+                ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipMaintainRuleSub_Item");
+                //鑾峰彇閰嶄欢椤圭洰缂栬緫鏁版嵁
+                string sql1 = "select 閰嶄欢ID HMaterID,閰嶄欢浠g爜 HMaterNumber,閰嶄欢鍚嶇О HMaterName,鍗曚綅ID HUnitID,璁¢噺鍗曚綅浠g爜 HUnitNumber,璁¢噺鍗曚綅鍚嶇О HUnitName,鐢ㄩ噺 HQty,瀛愬娉�1 HRemark from h_v_Sb_EquipMaintainRuleSub where 1 = 1 " + Swhere + "";
+                ds1 = oCN.RunProcReturn(sql1, "h_v_Sb_EquipMaintainRuleSub");
+
+                list.Add(ds.Tables[0]);
+                list.Add(ds1.Tables[0]);
+                objJsonResult.code = "0";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�";
+                objJsonResult.list = list;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+            }
+            return objJsonResult;
+        }
+        #endregion
+
+        #region[璁惧妗f缂栬緫鏃惰幏鍙栧瓙琛ㄦ暟鎹甝
+        [Route("Gy_EquipFileMain/Gy_EquipFileSubDetai")]
+        [HttpGet]
+        public object Gy_EquipFileSubDetai(long HInterID)
+        {
+            try
+            {
+                List<DataTable> tableList = new List<DataTable>();
+                ds = oCN.RunProcReturn("select a.*,b.HBillNo from Gy_EquipFileBillSub_MaintainRule AS a left join Sb_EquipMaintainRuleBillMain as b on b.HInterID = a.HMaintainRuleID where a.HInterID = " + HInterID, "Gy_EquipFileBillSub_MaintainRule");
+                tableList.Add(ds.Tables[0]);
+                ds = oCN.RunProcReturn("select a.*,b.HBillNo from Gy_EquipFileBillSub_DotCheckRule AS a left join Sb_EquipDotCheckRuleBillMain as b on b.HInterID = a.HDotCheckRuleID where a.HInterID = " + HInterID, "Gy_EquipFileBillSub_DotCheckRule");
+                tableList.Add(ds.Tables[0]);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "";
+                objJsonResult.data = tableList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 璁惧妗f鏂板淇濆瓨
         /// <summary>
         /// 妯℃不鍏峰垎绫�-淇濆瓨鎸夐挳
@@ -165,11 +295,12 @@
                 var _value = oMain["oMain"].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 msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+                string msg3 = sArray[1].ToString(); //瀛愯〃1
+                string msg4 = sArray[2].ToString(); //瀛愯〃2
+                string msg5 = sArray[3].ToString(); //鐢ㄦ埛
 
-                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Edit", 1, false, msg4))
+                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Edit", 1, false, msg5))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -210,7 +341,15 @@
                 string HLogo = list[0].HLogo;                //鈭�		varchar(50)	//鍝佺墝
                 int HSellSupID = list[0].HSellSupID;              // 鈭�	int		//渚涘簲鍟�(Gy_Supplier)
                 int HMakeSupID = list[0].HMakeSupID;              // int		//鍒堕�犲晢 (Gy_Supplier) 
-                string HMaker = msg4;
+            
+                string HMacAddress = list[0].HMacAddress;   // varchar(50) //鏁伴噰鐗╃悊鍦板潃
+                string HIPAddress = list[0].HIPAddress;   // varchar(50) //鏁伴噰IP鍦板潃
+                string HLinkNETMode = list[0].HLinkNETMode;   // varchar(50) //鑱旂綉鏂瑰紡
+                string HCollectMode = list[0].HCollectMode;   // varchar(50) //閲囬泦鏂瑰紡
+                string HCollectClass = list[0].HCollectClass;   // varchar(50) //閲囬泦绫诲瀷
+                string HMainSourceFlag = list[0].HMainSourceFlag;             //varchar(10) //鏄惁涓荤敓浜ц澶�(鍚︼紝鏄�)
+                int HMainSourceID = list[0].HMainSourceID;  //int //鎵�灞炰富鐢熶骇璁惧锛圙y_EquipFileBillMain锛�
+                string HMaker = msg5;
                 string HMakeDate = DateTime.Now.Date.ToString();
                 int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID;
                 int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID;
@@ -224,22 +363,76 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
+                DataSet DS = oCN.RunProcReturn("Select * from Gy_EquipFileBillMain Where  HEquipFileNumber='" + HEquipFileNumber + "' and HInterID<>" + HInterID, "Gy_EquipFileBillMain", ref Pub_Class.ClsPub.sExeReturnInfo);
+
+                if (DS.Tables[0].Rows.Count != 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "浠g爜閲嶅锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCN.BeginTran();
+                //淇濆瓨鍓嶆帶鍒�=========================================
+                string HBillNote = "";
+                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBillMain_BeforeSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBillMain_BeforeSaveCtrl");
+                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]["HBackRemark"].ToString(); ;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //=========================================================
                 //涓昏〃
                 oCN.RunProc("Insert into Gy_EquipFileBillMain " +
-                   " (hbillno,HEquipFileNumber,HEquipFileNo,HName,HModel,HModel2,HMaterID,HUnitID,HOutComDate" +
+                   " (HInterID,hbillno,HEquipFileNumber,HEquipFileNo,HName,HModel,HModel2,HMaterID,HUnitID,HOutComDate" +
                    ",HOutComNo,HDeptID,HUseEmpID,HRepairEmpID,HAddress,HSetupDate,HStartupDate,HStatus," +
-"HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID,HSourceID) " +
-                   " Values('" + hbillno + "','" + HEquipFileNumber + "','" + HEquipFileNo + "','" + HName + "','" + HModel + "','" + HModel2 + "'," + HMaterID + "," + HUnitID +
+                    "HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID," +
+                    "HSourceID,HMainSourceFlag,HMacAddress,HMainSourceID,HIPAddress,HLinkNETMode,HCollectMode,HCollectClass) " +
+                   " Values("+ HInterID+",'" + hbillno + "','" + HEquipFileNumber + "','" + HEquipFileNo + "','" + HName + "','" + HModel + "','" + HModel2 + "'," + HMaterID + "," + HUnitID +
                    ",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HUseEmpID + "," + HRepairEmpID + ",'" + HAddress +
                    "','" + HSetupDate + "','" + HStartupDate + "','" + HStatus + "'," + HEquipFileTypeID + ",'" + HProNum +
-                   "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID + ",'3308','" + HDate + "','" + HYear + "','" + HMaker + "','" + HMakeDate + "','" + HEquipMaintainRuleInterID + "','" + HEquipDotCheckRuleInterID +"'," + HSourceID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                   "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID + ",'3308','" + HDate + "','" + HYear + "','" + HMaker + "','" + HMakeDate + "','" + HEquipMaintainRuleInterID + "','" + HEquipDotCheckRuleInterID +"'" +
+                   "," + HSourceID + ",'" + HMainSourceFlag + "','" + HMacAddress + "','" + HMainSourceID + "','" + HIPAddress + "','" + HLinkNETMode + "','" + HCollectMode + "','" + HCollectClass + "')", ref DBUtility.ClsPub.sExeReturnInfo);
                 //淇敼涓婄骇涓洪潪鏈骇浠g爜
+                objJsonResult = AddBillSub(msg3, msg4, HInterID, hbillno, 1);
+
+                //淇濆瓨鍚庢帶鍒�=========================================
+                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBillMain_AfterSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBillMain_AfterSaveCtrl");
+                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]["HBackRemark"].ToString(); ;
+                    objJsonResult.data = null;
+                    oCN.RollBack();
+                    return objJsonResult;                    
+                }
+                //=========================================================
+
                 oCN.Commit();
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "鏂板鎴愬姛锛�";
                 //objJsonResult.data = null;
                 return objJsonResult;
             }
@@ -267,11 +460,12 @@
                 var _value = oMain["oMain"].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 msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+                string msg3 = sArray[1].ToString(); //瀛愯〃1
+                string msg4 = sArray[2].ToString(); //瀛愯〃2
+                string msg5 = sArray[3].ToString(); //鐢ㄦ埛
 
-                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Edit", 1, false, msg4))
+                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Edit", 1, false, msg5))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -308,7 +502,14 @@
                 string HLogo = list[0].HLogo;                //鈭�		varchar(50)	//鍝佺墝
                 int HSellSupID = list[0].HSellSupID;              // 鈭�	int		//渚涘簲鍟�(Gy_Supplier)
                 int HMakeSupID = list[0].HMakeSupID;              // int		//鍒堕�犲晢 (Gy_Supplier)
-                string HUpDater = msg4;
+                string HMainSourceFlag = list[0].HMainSourceFlag;             //varchar(10) //鏄惁涓荤敓浜ц澶�(鍚︼紝鏄�)
+                string HMacAddress = list[0].HMacAddress;   // varchar(50) //鏁伴噰鐗╃悊鍦板潃
+                string HIPAddress = list[0].HIPAddress;   // varchar(50) //鏁伴噰IP鍦板潃
+                string HLinkNETMode = list[0].HLinkNETMode;   // varchar(50) //鑱旂綉鏂瑰紡
+                string HCollectMode = list[0].HCollectMode;   // varchar(50) //閲囬泦鏂瑰紡
+                string HCollectClass = list[0].HCollectClass;   // varchar(50) //閲囬泦绫诲瀷
+                int HMainSourceID = list[0].HMainSourceID;  //int //鎵�灞炰富鐢熶骇璁惧锛圙y_EquipFileBillMain锛�
+                string HUpDater = msg5;
                 string HUpDateDate = DateTime.Now.Date.ToString();
                 int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID;
                 int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID;
@@ -363,19 +564,24 @@
                     ",HLogo='" + HLogo + "'" +
                     ",HSellSupID=" + HSellSupID +
                     ",HMakeSupID= " + HMakeSupID +
-                    ",HUpDater= '" + HUpDater + "'" +
+                    ",HUpDater= '" + HUpDater + "'" +                    
                     ",HUpDateDate= '" + HUpDateDate + "'" +
                     ",HEquipDotCheckRuleInterID='" + HEquipDotCheckRuleInterID + "'" +
                     ",HEquipMaintainRuleInterID='" + HEquipMaintainRuleInterID + "'" +
                     ",HSourceID='" + HSourceID + "'" +
+                    ",HMainSourceFlag= '" + HMainSourceFlag + "'" +
+                    ",HMacAddress= '" + HMacAddress + "'" +
+                    ",HMainSourceID = '" + HMainSourceID + "'" +
+                    ",HIPAddress='" + HIPAddress + "'" +
+                    ",HLinkNETMode='" + HLinkNETMode + "'" +
+                    ",HCollectMode='" + HCollectMode + "'" +
+                    ",HCollectClass='" + HCollectClass + "'" +
                     " Where HInterID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                 //淇敼瀛愰」鐩唬鐮�
                 //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_RepairCheck,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
                 //
+                objJsonResult = AddBillSub(msg3, msg4, HInterID, list[0].HBillNo, 2);
                 oCN.Commit();
-                objJsonResult.code = "1";
-                objJsonResult.count = 1;
-                objJsonResult.Message = "淇敼鎴愬姛锛�";
                 //objJsonResult.data = null;
                 return objJsonResult;
             }
@@ -388,6 +594,110 @@
                 objJsonResult.data = null;
                 return objJsonResult;
             }
+        }
+        #endregion
+
+        #region 璁惧妗f淇濆瓨瀛愯〃鏁版嵁
+        /// <summary>
+        /// 瀛愯〃鏁版嵁鏂板鎴栬�呯紪杈�
+        /// </summary>
+        /// <param name="msg3"></param>
+        /// <param name="msg4"></param>
+        /// <param name="HInterID"></param>
+        /// <param name="HBillNo"></param>
+        /// <param name="OperationType">1涓烘坊鍔�2涓虹紪杈�</param>
+        /// <returns></returns>
+        public json AddBillSub(string msg3, string msg4, long HInterID, string HBillNo, int OperationType)
+        {
+                List<ClsGy_EquipFileBillSub_MaintainRule> MaintainRuleColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_EquipFileBillSub_MaintainRule>>(msg3);
+
+                List<ClsGy_EquipFileBillSub_DotCheckRule> DotCheckRuleColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsGy_EquipFileBillSub_DotCheckRule>>(msg4);
+                if (OperationType == 2)
+                {
+                    //鍒犻櫎瀛愯〃
+                    oCN.RunProc("delete from Gy_EquipFileBillSub_MaintainRule where HInterID = " + HInterID );
+                    oCN.RunProc("delete from Gy_EquipFileBillSub_DotCheckRule where HInterID = " + HInterID );
+                }
+                int i = 0;
+                //淇濆瓨淇濆吇瑙勭▼
+                foreach (ClsGy_EquipFileBillSub_MaintainRule oSub in MaintainRuleColl)
+                {
+                    i++;
+                    if (oSub.HMaintainRuleID <= 0 || oSub.HMaintainRuleID == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "绗�" + i + "琛�,淇濆吇瑙勭▼涓嶈兘涓虹┖";
+                        objJsonResult.data = null;
+                        throw new Exception("淇濆吇瑙勭▼涓嶈兘涓虹┖");
+                }
+                    DataSet Cs;
+                    Int64 NewHEntryID = 1;
+                    Int64 newHFlag = 1;
+                    Cs = oCN.RunProcReturn("select MAX(HEntryID)HEntryID from Gy_EquipFileBillSub_MaintainRule", "Gy_EquipFileBillSub_MaintainRule");
+                    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;
+                    }
+                    if(oSub.HStdFlag == true)
+                    {
+                        newHFlag = 1;
+                    }
+                    else
+                    {
+                        newHFlag = 0;
+                    }
+                    oCN.RunProc($@"Insert into Gy_EquipFileBillSub_MaintainRule 
+                (HInterID,HBillNo_bak,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,
+                 HMaintainRuleID,HStdFlag
+	            ) 
+                 values({HInterID},'{HBillNo}',{NewHEntryID},'{oSub.HRemark}',{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney}
+                ,{oSub.HMaintainRuleID},{newHFlag})");
+                }
+                i = 0;
+                //淇濆瓨鐐规瑙勭▼
+                foreach (ClsGy_EquipFileBillSub_DotCheckRule oSub in DotCheckRuleColl)
+                {
+                    i++;
+                    if (oSub.HDotCheckRuleID <= 0 || oSub.HDotCheckRuleID == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "绗�" + i + "琛�,鐐规瑙勭▼涓嶈兘涓虹┖";
+                        objJsonResult.data = null;
+                        throw new Exception("鐐规瑙勭▼涓嶈兘涓虹┖");
+                    }
+                    DataSet Cs;
+                    Int64 NewHEntryID = 1;
+                    Int64 newHFlag = 1;
+                    Cs = oCN.RunProcReturn("select MAX(HEntryID)HEntryID from Gy_EquipFileBillSub_DotCheckRule", "Gy_EquipFileBillSub_DotCheckRule");
+                    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;
+                    }
+                    if (oSub.HStdFlag == true)
+                    {
+                        newHFlag = 1;
+                    }
+                    else
+                    {
+                        newHFlag = 0;
+                    }
+                    oCN.RunProc($@"Insert into Gy_EquipFileBillSub_DotCheckRule 
+                (HInterID,HBillNo_bak,HEntryID,HRemark,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,
+                 HDotCheckRuleID,HStdFlag
+	            ) 
+                 values({HInterID},'{HBillNo}',{NewHEntryID},'{oSub.HRemark}',{oSub.HSourceInterID},{oSub.HSourceEntryID},'{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HRelationQty},{oSub.HRelationMoney}
+                ,{oSub.HDotCheckRuleID},{newHFlag})");
+                }
+                //淇敼涓婄骇涓洪潪鏈骇浠g爜
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "淇濆瓨鎴愬姛锛�";
+                //objJsonResult.data = null;
+                return objJsonResult;
         }
         #endregion
 
@@ -731,5 +1041,917 @@
 
         }
         #endregion
+
+        #region 璁惧杩愯鐘舵�佹姤琛�
+
+        [Route("SB_EquipRunningStatus/Report")]
+        [HttpGet]
+        public object Report(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileList", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "娌℃湁鏌ョ湅鏉冮檺";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_Sb_EquipRunningStatusReport " + sWhere + " order by 鎵�灞炴棩鏈� desc", "h_v_Sb_EquipRunningStatusReport");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_Sb_EquipRunningStatusReport where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by 鎵�灞炴棩鏈� desc";
+                    ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipRunningStatusReport");
+                }
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+
+                //if (ds.Tables[0].Rows.Count != 0 && ds != null)
+                //{
+                   
+                //}
+                //else
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犳暟鎹�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 璁惧杩愯鐘舵�佹姤琛� 鏍戠姸鍥� 閮ㄩ棬鍒嗙被鏌ヨ
+        public class TreeModel_Report
+        {
+            public string id { get; set; }
+            public string title { get; set; }
+            public string type { get; set; }
+            public List<TreeModel_Report> children = new List<TreeModel_Report>();
+        }
+        [Route("SB_EquipRunningStatus/ReportTreeGetList")]
+        [HttpGet]
+        public object ReportTreeGetList(string sWhere, string user)
+        {
+            try
+            {
+
+                ds = oCN.RunProcReturn("select HItemID,HNumber,HName  from Gy_Department", "Gy_Department");
+
+                List<TreeModel_Report> treeModels = new List<TreeModel_Report>();
+                TreeModel_Report first = new TreeModel_Report();
+
+                DataSet Ds;
+                string HCampanyName = "";
+                Ds = oCN.RunProcReturn("select HValue from Xt_SystemParameter where HCaption = '瀹㈡埛鍚嶇О'", "Xt_SystemParameter");
+                if (Ds.Tables[0].Rows.Count != 0 && Ds != null)
+                {
+                    HCampanyName = Ds.Tables[0].Rows[0]["HValue"].ToString();
+                }
+               
+                first.id = "0";
+                first.title = HCampanyName;
+                treeModels.Add(first);
+
+                foreach (DataRow row in ds.Tables[0].Rows)
+                {
+                    var strLen = row["hitemid"].ToString().Split('.');
+                    if (strLen.Length == 1)
+                    {
+                        TreeModel_Report tree = new TreeModel_Report();
+                        tree.id = row["HItemID"].ToString();
+                        tree.title = row["HName"].ToString();
+                        tree.type = "Department";
+                        treeModels[0].children.Add(tree);
+                    }
+                }                
+                getWorkCenter_Level2(ds.Tables[0], treeModels[0].children);
+
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = Newtonsoft.Json.JsonConvert.SerializeObject(treeModels);
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        /// <summary>
+        /// 绗簩绾у伐浣滀腑蹇�
+        /// </summary>
+        public void getWorkCenter_Level2(DataTable dt, List<TreeModel_Report> tree)
+        {
+            for (int i = 0;i < dt.Rows.Count;i++)
+            {
+                var HDeptID = dt.Rows[i]["HItemID"].ToString();
+                ds = oCN.RunProcReturn("select distinct HItemID,HNumber,HName from Gy_WorkCenter where HDeptID = " + HDeptID, "Gy_WorkCenter");
+                if (ds.Tables[0].Rows.Count != 0 && ds != null)
+                {
+                    for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
+                    {
+                        TreeModel_Report tbjson = new TreeModel_Report();
+                        tbjson.id = ds.Tables[0].Rows[j]["HItemID"].ToString();
+                        tbjson.title = ds.Tables[0].Rows[j]["HName"].ToString();
+                        tbjson.type = "WorkCenter";
+                        tree[i].children.Add(tbjson);
+                    }
+                }
+                //digui_Report(ds.Tables[0], tree[i].children, 2);
+            }
+            
+        }
+
+        /// <summary>
+        /// 閫掑綊鍑芥暟
+        /// </summary>
+        public void digui_Report(DataTable dt, List<TreeModel_Report> tree, int num)
+        {
+            for (int m = 0; m < tree.Count; m++)
+            {
+                tree[m].children = new List<TreeModel_Report>();
+                for (int i = 0; i < dt.Rows.Count; i++)//绗竴娆″惊鐜紝寰楀埌鎵�鏈夋牴鑺傜偣鐨勫瓙闆�
+                {
+                    var HWorkCenterNumber = dt.Rows[i]["HNumber"].ToString();
+                    DataSet Ds;
+                    Ds = oCN.RunProcReturn("select distinct HItemID,HNumber,HName from Gy_WorkCenter where HNumber like '" + HWorkCenterNumber + "%'", "Gy_WorkCenter");
+
+                    if (Ds.Tables[0].Rows.Count != 0 && Ds != null)
+                    {
+                        for (int j = 0;j < Ds.Tables[0].Rows.Count;j++)
+                        {
+                            var strLen = Ds.Tables[0].Rows[j]["HNumber"].ToString().Split('.');
+                            if (strLen.Length == num && Ds.Tables[0].Rows[j]["HNumber"].ToString().Contains(tree[m].id + "."))
+                            {
+                                TreeModel_Report tbjson = new TreeModel_Report();
+                                tbjson.id = Ds.Tables[0].Rows[j]["HItemID"].ToString();
+                                tbjson.title = Ds.Tables[0].Rows[j]["HName"].ToString();
+                                tbjson.type = "WorkCenter";
+                                tree[m].children.Add(tbjson);
+                            }
+                        }                        
+                    }                   
+                }
+                var strLens = tree[m].id.Split('.');
+                for (int i = 0; i < tree[m].children.Count; i++)
+                {
+                    digui_Report(dt, tree[m].children, strLens.Length + 2);//鍐嶆鐢ㄥ瓙闆嗗幓寰幆锛屾嬁鍑哄瓙闆嗙殑瀛愰泦
+                }
+            }
+
+        }
+        #endregion
+
+        #region 璁惧PDA妯″潡 鎵爜       
+        [Route("Gy_EquipFileBill/txtHBarCode_KeyDown")]
+        [HttpGet]
+        public object txtHBarCode_KeyDown(string HBarCode, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+
+                if (HBarCode == null || HBarCode.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏉$爜淇℃伅涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    string sql = "select * from h_v_Gy_EquipFileBill_KeyDown_PDA where 鏉″舰鐮� = '" + HBarCode + "'";
+                    ds = oCN.RunProcReturn(sql, "锘縣_v_Gy_EquipFileBill_KeyDown_PDA");
+                }
+
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    //娣诲姞鍒楀悕
+                    foreach (DataColumn col in ds.Tables[0].Columns)
+                    {
+                        Type dataType = col.DataType;
+                        string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                        columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                    }
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "璁惧鏉$爜锛�" + HBarCode + " ,娌℃湁鍒涘缓姝よ澶囨。妗�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+               
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 璁惧灞ュ巻鍒楄〃
+
+        [Route("Gy_EquipFileMain/GetResumeList")]
+        [HttpGet]
+        public object GetResumeList(string HInterID, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileList", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁鏌ョ湅鏉冮檺";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //鏇存敼涓哄瓨鍌ㄨ繃绋嬫墽琛�
+                //ds = oCN.RunProcReturn($@"select a.HInterID,a.HDate '鏃ユ湡',a.HBillType,x.HName 鍗曟嵁绫诲瀷,a.HBillNo as '鍗曟嵁鍙�',
+                //    CASE WHEN a.HBillStatus <= 1 THEN '鍒涘缓' WHEN a.HBillStatus = 2 THEN '宸插鏍�' WHEN a.HBillStatus = 3 AND 
+                //    a.HCloseType = 0 THEN '鑷姩鍏抽棴' WHEN a.HBillStatus = 3 AND 
+                //    a.HCloseType = 1 THEN '鎵嬪姩鍏抽棴' WHEN a.HBillStatus = 4 THEN '宸蹭綔搴�' ELSE '鍏跺畠鐘舵��' END AS 鍗曟嵁鐘舵��,
+                //    a.HMaker AS 鍒跺崟浜�, a.HMakeDate AS 鍒跺崟鏃ユ湡,a.HChecker AS 瀹℃牳浜�, a.HCheckDate AS 瀹℃牳鏃ユ湡, a.HUpDater AS 淇敼浜�, a.HUpDateDate AS 淇敼鏃ユ湡, 
+                //    a.HCloseMan AS 鍏抽棴浜�, a.HCloseDate AS 鍏抽棴鏃ユ湡, a.HDeleteMan AS 浣滃簾浜�, a.HDeleteDate AS 浣滃簾鏃ユ湡
+                //    from (
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType  from Gy_EquipFileBillMain where HInterID = {HInterID} UNION ALL 
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sb_EquipStockInCheckBillMain where HEquipID = {HInterID} UNION ALL
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sb_EquipDotCheckBillMain where HEquipID = {HInterID} UNION ALL
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sb_EquipMaintainBillMain where HEquipID = {HInterID} UNION ALL
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sb_EquipRepairWorkBillMain where HEquipID = {HInterID} UNION ALL
+                //    select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sb_EquipConkBookBillMain where HEquipID = {HInterID}
+                //    )as a,Xt_BillType as x
+                //    where a.HBillType = x.HNumber
+                //    ORDER BY '鏃ユ湡' ASC;", "h_v_Gy_EquipFileMainList");
+
+                ds = oCN.RunProcReturn("exec h_p_Gy_EquipFileReport '" + HInterID + "'", "h_p_Gy_EquipFileReport");
+
+                //娣诲姞鍔ㄦ�佸垪淇℃伅
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 鍣ㄥ叿灞ュ巻鍒楄〃
+
+        [Route("Gy_MouldFileMain/GetMouldResumeList")]
+        [HttpGet]
+        public object GetMouldResumeList(string HInterID, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                if (!DBUtility.ClsPub.Security_Log("Gy_MouldFileList", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁鏌ョ湅鏉冮檺";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //鏇存敼涓哄瓨鍌ㄨ繃绋嬫墽琛�
+                //ds = oCN.RunProcReturn($@"select a.HInterID,a.HDate '鏃ユ湡',a.HBillType,x.HName 鍗曟嵁绫诲瀷,a.HBillNo as '鍗曟嵁鍙�',
+                //CASE WHEN a.HBillStatus <= 1 THEN '鍒涘缓' WHEN a.HBillStatus = 2 THEN '宸插鏍�' WHEN a.HBillStatus = 3 AND 
+                //a.HCloseType = 0 THEN '鑷姩鍏抽棴' WHEN a.HBillStatus = 3 AND 
+                //a.HCloseType = 1 THEN '鎵嬪姩鍏抽棴' WHEN a.HBillStatus = 4 THEN '宸蹭綔搴�' ELSE '鍏跺畠鐘舵��' END AS 鍗曟嵁鐘舵��,
+                //a.HMaker AS 鍒跺崟浜�, a.HMakeDate AS 鍒跺崟鏃ユ湡,a.HChecker AS 瀹℃牳浜�, a.HCheckDate AS 瀹℃牳鏃ユ湡, a.HUpDater AS 淇敼浜�, a.HUpDateDate AS 淇敼鏃ユ湡, 
+                //a.HCloseMan AS 鍏抽棴浜�, a.HCloseDate AS 鍏抽棴鏃ユ湡, a.HDeleteMan AS 浣滃簾浜�, a.HDeleteDate AS 浣滃簾鏃ユ湡
+                //from (
+                //select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType  from Gy_MouldFileMain where HInterID = {HInterID} UNION ALL 
+                //select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sc_MouldDotCheckBillMain where HMouldID = {HInterID} UNION ALL
+                //select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sc_MouldMaintainBillMain where HMouldID = {HInterID} UNION ALL
+                //select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sc_MouldRepairWorkBillMain  where HMouldID = {HInterID} UNION ALL
+                //select HInterID,HDate,HBillType,HBillNo,HBillStatus,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate,HCloseMan,HCloseDate,HDeleteMan,HDeleteDate,HCloseType from Sc_MouldConkBookBillMain where HMouldID = {HInterID} UNION ALL
+                //select a.HInterID,a.HDate,a.HBillType,a.HBillNo,a.HBillStatus,a.HMaker,a.HMakeDate,a.HChecker,a.HCheckDate,a.HUpDater,a.HUpDateDate,a.HCloseMan,a.HCloseDate,a.HDeleteMan,a.HDeleteDate,a.HCloseType 
+                //from Sc_MouldStockBillMain as a,Sc_MouldStockBillSub as b 
+                //where  a.HInterID = b.HInterID and b.HMaterID = {HInterID} and HBillType in ('3801','3829','3826','3831','3827')
+                //)as a,Xt_BillType as x
+                //where a.HBillType = x.HNumber
+                //ORDER BY '鏃ユ湡' ASC;", "Gy_MouldFileResume");
+
+                ds = oCN.RunProcReturn("exec h_p_Gy_MouldFileReport '" + HInterID + "'", "h_p_Gy_MouldFileReport");
+
+                //娣诲姞鍔ㄦ�佸垪淇℃伅
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        #endregion
+
+        #region 璁惧妗f 鏂囦欢瀵煎叆淇濆瓨
+        #region 璁惧妗f 鏂囦欢涓婁紶
+        [Route("Gy_EquipFileMain/Gy_EquipFileMain_Excel")]
+        [HttpPost]
+        public object Gy_EquipFile_Excel()
+        {
+            try
+            {
+                //鑾峰彇鏂囦欢鍚嶇О
+                var file = HttpContext.Current.Request.Files[0];
+                //鑾峰彇鏂囦欢鐗╃悊璺緞
+                string ExcelPath = HttpContext.Current.Server.MapPath("~/" + file.FileName);
+                //淇濆瓨鏂囦欢
+                file.SaveAs(ExcelPath);
+
+                NpoiHelper np = new NpoiHelper();
+                DataSet ExcelDs = np.ReadExcel(ExcelPath, 1, 1, "0");
+
+                //鍒犻櫎鏂囦欢
+                File.Delete(ExcelPath);
+
+                //鍒涘缓涓存椂琛�
+                DataTable tb2 = new DataTable("dt2");
+
+                //娣诲姞鍒楀悕
+                for (int i = 0; i < ExcelDs.Tables[0].Columns.Count; i++)
+                {
+                    tb2.Columns.Add(ExcelDs.Tables[0].Rows[0][i].ToString());
+                }
+
+                //妯℃澘缂哄皯鍒� 浣嗛渶瑕佷粠鏁版嵁搴撲腑鏌ヨ鍑烘潵鏄剧ず鍦ㄩ〉闈㈢殑瀛楁
+                tb2.Columns.Add("HOrgID", typeof(Int32));//缁勭粐ID
+                tb2.Columns.Add("HMaterID", typeof(Int32));//鐗╂枡ID
+                tb2.Columns.Add("HEquipTypeID", typeof(Int32));//鍒嗙被ID
+                tb2.Columns.Add("HUnitID", typeof(Int32));//鍗曚綅ID
+                tb2.Columns.Add("HDeptID", typeof(Int32));//閮ㄩ棬ID
+                tb2.Columns.Add("HUseEmpID", typeof(Int32));//浣跨敤璐熻矗浜篒D
+                tb2.Columns.Add("HRepairEmpID", typeof(Int32));//缁存姢璐熻矗浜篒D
+                tb2.Columns.Add("HSupID", typeof(Int32));//渚涘簲鍟咺D
+                tb2.Columns.Add("HMadeSupID", typeof(Int32));//鍒堕�犲晢ID
+                //娣诲姞鏁版嵁
+                for (int i = 1; i < ExcelDs.Tables[0].Rows.Count; i++)
+                {
+                    DataRow row = tb2.NewRow();
+                    for (int j = 0; j < ExcelDs.Tables[0].Columns.Count; j++)
+                    {
+                        row[j] = ExcelDs.Tables[0].Rows[i][j].ToString();
+                    }
+                    tb2.Rows.Add(row);
+                }
+
+
+                var error = "";
+
+                //鍒ゆ柇瀵煎叆鏂囦欢鍒楁槸鍚﹀畬鏁�
+                if (!tb2.Columns.Contains("缁勭粐浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囦唬鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁勭粐鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愮粍缁囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧鍚嶇О"))
+                    error += "娌℃湁鎵惧埌銆愯澶囧悕绉般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧缂栧彿"))
+                    error += "娌℃湁鎵惧埌銆愯澶囩紪鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧鍒嗙被"))
+                    error += "娌℃湁鎵惧埌銆愯澶囧垎绫汇�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧瑙勬牸"))
+                    error += "娌℃湁鎵惧埌銆愯澶囪鏍笺�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧鍨嬪彿"))
+                    error += "娌℃湁鎵惧埌銆愯澶囧瀷鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瀵瑰簲ERP鐗╂枡浠g爜"))
+                    error += "娌℃湁鎵惧埌銆愬搴擡RP鐗╂枡浠g爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瀵瑰簲ERP鐗╂枡"))
+                    error += "娌℃湁鎵惧埌銆愬搴擡RP鐗╂枡銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁¢噺鍗曚綅"))
+                    error += "娌℃湁鎵惧埌銆愯閲忓崟浣嶃�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧鍑哄巶鏃ユ湡"))
+                    error += "娌℃湁鎵惧埌銆愯澶囧嚭鍘傛棩鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("璁惧鍑哄巶缂栧彿"))
+                    error += "娌℃湁鎵惧埌銆愯澶囧嚭鍘傜紪鍙枫�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("浣跨敤閮ㄩ棬"))
+                    error += "娌℃湁鎵惧埌銆愪娇鐢ㄩ儴闂ㄣ�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("浣跨敤璐熻矗浜�"))
+                    error += "娌℃湁鎵惧埌銆愪娇鐢ㄨ礋璐d汉銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("缁存姢璐熻矗浜�"))
+                    error += "娌℃湁鎵惧埌銆愮淮鎶よ礋璐d汉銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瀹夎鍦扮偣"))
+                    error += "娌℃湁鎵惧埌銆愬畨瑁呭湴鐐广�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("瀹夎鏃ユ湡"))
+                    error += "娌℃湁鎵惧埌銆愬畨瑁呮棩鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("杩愯寮�濮嬫棩鏈�"))
+                    error += "娌℃湁鎵惧埌銆愯繍琛屽紑濮嬫棩鏈熴�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("宸ョ▼缂栫爜"))
+                    error += "娌℃湁鎵惧埌銆愬伐绋嬬紪鐮併�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鏉″舰鐮�"))
+                    error += "娌℃湁鎵惧埌銆愭潯褰㈢爜銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("浜у湴"))
+                    error += "娌℃湁鎵惧埌銆愪骇鍦般�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍝佺墝"))
+                    error += "娌℃湁鎵惧埌銆愬搧鐗屻�戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("渚涘簲鍟�"))
+                    error += "娌℃湁鎵惧埌銆愪緵搴斿晢銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("鍒堕�犲晢"))
+                    error += "娌℃湁鎵惧埌銆愬埗閫犲晢銆戠殑鏍囬,";
+
+                if (!tb2.Columns.Contains("澶囨敞"))
+                    error += "娌℃湁鎵惧埌銆愬娉ㄣ�戠殑鏍囬,";
+
+
+                if (error.Length > 0)
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = $"Excel妯℃澘瀛樺湪閿欒,{error}\r\n";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                for (int i = 0; i <= tb2.Rows.Count - 1; i++)
+                {
+                    string HEquipName = "";
+                    string HEquipNo = "";
+                    string HORGNumber = "";
+                    string HORGName = "";
+                    string HMaterNumber = "";
+                    string HMaterName = "";
+                    string HUnitName = "";
+                    string HDeptName = "";
+                    string HUseEmpName = "";
+                    string HRepairEmpName = "";
+                    string HSupName = "";
+                    string HMadeSupName = "";
+                    string HEquipTypeName = "";
+
+                    HEquipName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璁惧鍚嶇О"].ToString());
+                    HEquipNo = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璁惧缂栧彿"].ToString());
+                    HORGNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐浠g爜"].ToString());
+                    HORGName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁勭粐鍚嶇О"].ToString());
+                    HMaterNumber = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瀵瑰簲ERP鐗╂枡浠g爜"].ToString());
+                    HMaterName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["瀵瑰簲ERP鐗╂枡"].ToString());
+                    HUnitName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璁¢噺鍗曚綅"].ToString());
+                    HDeptName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["浣跨敤閮ㄩ棬"].ToString());
+                    HUseEmpName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["浣跨敤璐熻矗浜�"].ToString());
+                    HRepairEmpName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["缁存姢璐熻矗浜�"].ToString());
+                    HSupName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["渚涘簲鍟�"].ToString());;
+                    HMadeSupName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["鍒堕�犲晢"].ToString());
+                    HEquipTypeName = DBUtility.ClsPub.isStrNull(tb2.Rows[i]["璁惧鍒嗙被"].ToString());
+                    //妫�鏌ョ墿鏂�
+                    int index = i + 1;
+
+                    if (HORGNumber != "")
+                    {
+
+                        //鏌ヨ缁勭粐
+                        ds = oCN.RunProcReturn("select * from Xt_ORGANIZATIONS where  HNumber='" + HORGNumber + "' and Hname='" + HORGName + "'", "Xt_ORGANIZATIONS");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,缁勭粐涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HOrgID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        string HORGid = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        //鏌ヨ鍒嗙被
+                        ds = oCN.RunProcReturn("select * from Gy_EquipFileType  where  HName='" + HEquipTypeName + "' ", "EquipFileType");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,鍒嗙被:" + HEquipTypeName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HEquipTypeID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ鐗╂枡
+                        ds = oCN.RunProcReturn("select * from Gy_Material where  HNumber='" + HMaterNumber + "'  and HUSEORGID=" + HORGid + "", "Gy_Department");
+
+                        if (ds.Tables[0].Rows.Count == 0 && HMaterNumber != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,鐗╂枡:" + HMaterName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else if (HMaterNumber == "")
+                        {
+                            tb2.Rows[i]["HMaterID"] = 0;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMaterID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ鍗曚綅
+                        ds = oCN.RunProcReturn("select * from Gy_Unit where  HName='" + HUnitName + "'  and HUSEORGID=" + HORGid + "", "Gy_Unit");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,鍗曚綅:" + HUnitName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HUnitID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ閮ㄩ棬
+                        ds = oCN.RunProcReturn("select * from Gy_Department where  HName='" + HDeptName + "'  and HUSEORGID=" + HORGid + "", "Gy_Department");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,閮ㄩ棬:" + HDeptName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HDeptID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ浣跨敤璐熻矗浜�
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HName='" + HUseEmpName + "'  and HUSEORGID=" + HORGid + "", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,浣跨敤璐熻矗浜�:" + HUseEmpName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HUseEmpID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ缁存姢璐熻矗浜�
+                        ds = oCN.RunProcReturn("select * from Gy_Employee where  HName='" + HRepairEmpName + "'  and HUSEORGID=" + HORGid + "", "Gy_Employee");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,缁存姢璐熻矗浜轰汉:" + HRepairEmpName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HRepairEmpID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ渚涘簲鍟�
+                        ds = oCN.RunProcReturn("select * from Gy_Supplier where  HName='" + HSupName + "'  and HUSEORGID=" + HORGid + "", "Gy_Supplier");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,渚涘簲鍟�:" + HSupName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HSupID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+                        //鏌ヨ鍒堕�犲晢
+                        ds = oCN.RunProcReturn("select * from Gy_Supplier where  HName='" + HMadeSupName + "'  and HUSEORGID=" + HORGid + "", "Gy_Supplier");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "绗�" + index + "琛�,璇�" + HORGName + "缁勭粐,鍒堕�犲晢:" + HMadeSupName + ",涓嶅瓨鍦紒";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                        else
+                        {
+                            tb2.Rows[i]["HMadeSupID"] = ds.Tables[0].Rows[0]["HItemID"].ToString();
+                        }
+
+                        //璁惧妗f鍚嶇О
+                        if (HEquipName == "")
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璁惧妗f鍚嶇О涓嶈兘涓虹┖锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        //璁惧妗f浠g爜
+                        if (HEquipNo == "")
+                        {
+                            objJsonResult.code = CodeConstant.FAIL;
+                            objJsonResult.count = CountConstant.FAIL;
+                            objJsonResult.Message = "绗�" + index + "琛�,璁惧妗f缂栧彿涓嶈兘涓虹┖锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    else
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "绗�" + index + "琛�,缁勭粐浠g爜涓虹┖";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = error;
+                objJsonResult.data = tb2;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 璁惧妗f椤圭洰 瀵煎叆(淇濆瓨)
+        [Route("Gy_EquipFileMain/Gy_EquipFileMain_btnSave")]
+        [HttpPost]
+        public object Gy_EquipFile_btnSave([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 user = sArray[1].ToString();
+            try
+            {
+                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Edit", 1, false, user))
+                {
+                    objJsonResult.code = CodeConstant.FAIL;
+                    objJsonResult.count = CountConstant.FAIL;
+                    objJsonResult.Message = "鏃犱繚瀛樻潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                List<object> Excel = Newtonsoft.Json.JsonConvert.DeserializeObject<List<object>>(msg2);
+                List<Dictionary<string, string>> list = new List<Dictionary<string, string>>();
+
+                foreach (JObject item in Excel)
+                {
+                    Dictionary<string, string> dic = new Dictionary<string, string>();
+                    foreach (var itm in item.Properties())
+                    {
+                        dic.Add(itm.Name, itm.Value.ToString());
+                    }
+                    list.Add(dic);
+                }
+
+                oCN.BeginTran();
+                int i = 1;
+                foreach (Dictionary<string, string> item in list)
+                {
+                    string HOrgID = item["HOrgID"].ToString();//缁勭粐ID
+                    string BillType = "3308";
+                    //寰楀埌mainid
+                    long HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
+                    string HBillNo = DBUtility.ClsPub.CreateBillCode(BillType, ref DBUtility.ClsPub.sExeReturnInfo, true); ;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                    DateTime HDate = DateTime.Now;//鏃ユ湡
+                    string HYear = DateTime.Now.Year.ToString();
+                    string HEquipFileNumber = "";
+                    string HEquipFileNo = item["璁惧缂栧彿"].ToString();         //	varchar(50)	//璁惧缂栫爜(鍞竴)
+                    string HName = item["璁惧鍚嶇О"].ToString();                //    鈭�	varchar(100)     	//璁惧鍚嶇О
+                    string HModel = item["璁惧瑙勬牸"].ToString();               //   鈭� 	varchar(100)     	//璁惧瑙勬牸
+                    string HModel2 = item["璁惧鍨嬪彿"].ToString();              //    鈭�	varchar(100)    	//璁惧鍨嬪彿 
+                    int HMaterID = int.Parse(item["HMaterID"].ToString());                //   鈭�	int    		//瀵瑰簲鐗╂枡 
+                    int HUnitID = int.Parse(item["HUnitID"].ToString());                 //    鈭�	int    		//鍗曚綅
+                    string HOutComDate = item["璁惧鍑哄巶鏃ユ湡"].ToString() == "" ? DateTime.Now.ToString() : item["璁惧鍑哄巶鏃ユ湡"].ToString();        // 鈭� 	datetime   	//璁惧鍑哄巶鏃ユ湡
+                    string HOutComNo = item["璁惧鍑哄巶缂栧彿"].ToString();            //  鈭� 	varchar(100)   	//璁惧鍑哄巶缂栧彿
+                    int HDeptID = int.Parse(item["HDeptID"].ToString());                 //    鈭�	int    		//浣跨敤閮ㄩ棬锛坓y_Department锛�
+                    int HUseEmpID = int.Parse(item["HUseEmpID"].ToString());               //鈭�	int		//浣跨敤璐熻矗浜猴紙gy_Employee锛�
+                    int HRepairEmpID = int.Parse(item["HRepairEmpID"].ToString());            //鈭�	int		//缁存姢璐熻矗浜猴紙gy_Employee锛�
+                    string HAddress = item["瀹夎鍦扮偣"].ToString();             // 鈭� 	varchar(500)      	//瀹夎鍦扮偣
+                    string HSetupDate = item["瀹夎鏃ユ湡"].ToString() == "" ? DateTime.Now.ToString() : item["瀹夎鏃ユ湡"].ToString();         //鈭�	datetime		//瀹夎鏃ユ湡
+                    string HStartupDate = item["杩愯寮�濮嬫棩鏈�"].ToString() == "" ? DateTime.Now.ToString() : item["杩愯寮�濮嬫棩鏈�"].ToString();         //鈭�	datetime		//杩愯寮�濮嬫棩鏈� 
+                    string HStatus = "绌洪棽";              //	鈭�	varchar(20)	//褰撳墠鐘舵�侊紙绌洪棽銆佸崰鐢ㄣ�佸姞宸ャ�佸叧鏈恒�佸紓甯稿仠鏈猴級
+                    int HEquipFileTypeID = int.Parse(item["HEquipTypeID"].ToString());        //鈭�	int		//璁惧绫诲埆锛圙y_EquipFileType)
+                    string HProNum = item["宸ョ▼缂栫爜"].ToString();              //	鈭�	varchar(100)	//宸ョ▼缂栫爜
+                    string HBarCode = item["鏉″舰鐮�"].ToString();             //鈭�	varchar(100)	//鏉″舰鐮�(鏆傛椂淇濆瓨姝ゅ瓧娈�)
+                    string HWorkArea = item["浜у湴"].ToString();            //鈭�	varchar(50)	//浜у湴
+                    string HLogo = item["鍝佺墝"].ToString();                //鈭�		varchar(50)	//鍝佺墝
+                    int HSellSupID = int.Parse(item["HSupID"].ToString());                // 鈭�	int		//渚涘簲鍟�(Gy_Supplier)
+                    int HMakeSupID = int.Parse(item["HMadeSupID"].ToString());             // int		//鍒堕�犲晢 (Gy_Supplier) 
+                    string HMainSourceFlag = "鍚�";             //varchar(10) //鏄惁涓荤敓浜ц澶�(鍚︼紝鏄�)
+                    string HMacAddress = "";   // varchar(50) //鏁伴噰鐗╃悊鍦板潃
+                    int HMainSourceID = 0;  //int //鎵�灞炰富鐢熶骇璁惧锛圙y_EquipFileBillMain锛�
+                    string HMaker = user;
+                    string HMakeDate = DateTime.Now.Date.ToString();
+                    int HEquipDotCheckRuleInterID = 0;
+                    int HEquipMaintainRuleInterID = 0;
+                    int HSourceID = 0;
+
+
+                    if (!DBUtility.ClsPub.AllowNumber(HEquipFileNo.Trim()))
+                    {
+                        objJsonResult.code = CodeConstant.FAIL;
+                        objJsonResult.count = CountConstant.FAIL;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷唬鐮佷腑涓嶈兘鍑虹幇杩炵画鈥�.鈥欏苟涓旈浣嶆湯浣嶄笉鑳戒负鈥�.鈥欙紒";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+
+                    ds = oCN.RunProcReturn("select * from Gy_EquipFileBillMain where HEquipFileNo='" + HEquipFileNo + "'", "Gy_EquipFileBillMain");
+
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+
+                        oCN.RunProc("Insert into Gy_EquipFileBillMain " +
+                   " (HInterID,hbillno,HEquipFileNumber,HEquipFileNo,HName,HModel,HModel2,HMaterID,HUnitID,HOutComDate" +
+                   ",HOutComNo,HDeptID,HUseEmpID,HRepairEmpID,HAddress,HSetupDate,HStartupDate,HStatus," +
+"HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID,HSourceID,HMainSourceFlag,HMacAddress,HMainSourceID) " +
+                   " Values(" + HInterID + ",'" + HBillNo + "','" + HEquipFileNumber + "','" + HEquipFileNo + "','" + HName + "','" + HModel + "','" + HModel2 + "'," + HMaterID + "," + HUnitID +
+                   ",'" + HOutComDate + "','" + HOutComNo + "'," + HDeptID + "," + HUseEmpID + "," + HRepairEmpID + ",'" + HAddress +
+                   "','" + HSetupDate + "','" + HStartupDate + "','" + HStatus + "'," + HEquipFileTypeID + ",'" + HProNum +
+                   "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID + ",'3308','" + HDate + "','" + HYear + "','" + HMaker + "','" + HMakeDate + "','" + HEquipMaintainRuleInterID + "','" + HEquipDotCheckRuleInterID + "'," + HSourceID + ",'" + HMainSourceFlag + "','" + HMacAddress + "','" + HMainSourceID + "')");
+                    }
+                    else
+                    {
+                        oCN.RunProc("Update Gy_EquipFileBillMain set " +
+                    " HEquipFileNumber='" + HEquipFileNumber + "'" +
+                    //",HEquipFileNo='" + HEquipFileNo + "'" +
+                    ",HName='" + HName + "'" +
+                    ",HModel='" + HModel + "'" +
+                    ",HModel2='" + HModel2 + "'" +
+                    ",HMaterID=" + HMaterID +
+                    ",HUnitID=" + HUnitID +
+                    ",HOutComDate='" + HOutComDate + "'" +
+                    ",HOutComNo='" + HOutComNo + "'" +
+                    ",HDeptID=" + HDeptID +
+                    ",HUseEmpID=" + HUseEmpID +
+                    ",HRepairEmpID=" + HRepairEmpID +
+                    ",HAddress='" + HAddress + "'" +
+                    ",HSetupDate='" + HSetupDate + "'" +
+                    ",HStartupDate='" + HStartupDate + "'" +
+                    ",HStatus='" + HStatus + "'" +
+                    ",HEquipFileTypeID=" + HEquipFileTypeID +
+                    ",HProNum='" + HProNum + "'" +
+                    ",HBarCode='" + HBarCode + "'" +
+                    ",HWorkArea='" + HWorkArea + "'" +
+                    ",HLogo='" + HLogo + "'" +
+                    ",HSellSupID=" + HSellSupID +
+                    ",HMakeSupID= " + HMakeSupID +
+                    ",HUpDater= '" + user + "'" +
+                    ",HUpDateDate= getdate()" + "" +
+                    ",HEquipDotCheckRuleInterID='" + HEquipDotCheckRuleInterID + "'" +
+                    ",HEquipMaintainRuleInterID='" + HEquipMaintainRuleInterID + "'" +
+                    ",HSourceID='" + HSourceID + "'" +
+                    ",HMainSourceFlag= '" + HMainSourceFlag + "'" +
+                    ",HMacAddress= '" + HMacAddress + "'" +
+                    ",HMainSourceID = '" + HMainSourceID + "'" +
+                    " Where HEquipFileNo='" + HEquipFileNo + "'");
+                    }
+
+                    i++;
+                }
+
+                oCN.Commit();
+
+                objJsonResult.code = CodeConstant.SUCCEED;
+                objJsonResult.count = CountConstant.SUCCEED;
+                objJsonResult.Message = "瀵煎叆鎴愬姛!";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                LogService.Write(e);
+                objJsonResult.code = CodeConstant.FAIL;
+                objJsonResult.count = CountConstant.FAIL;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #endregion
+
     }
 }

--
Gitblit v1.9.1