zrg
2025-04-08 d54613ce0b6960dafcbd28454172f21a2d0bb6d1
WebAPI/Controllers/SBGL/Gy_EquipFileMainController.cs
@@ -33,7 +33,9 @@
        {
            try
            {
                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileList", 1, false, user))
                List<object> columnNameList = new List<object>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -51,12 +53,19 @@
                    string sql = sql1 + sWhere + " order by hmainid desc";
                    ds = oCN.RunProcReturn(sql, "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));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
@@ -71,12 +80,59 @@
        #endregion
        #region 下推根据设备id查询回显
        [Route("Gy_EquipFileMain/getSb_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));//获取到DataColumn列对象的列名
                }
                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_EquipFileMain/Delete_EquipFile")]
        [HttpGet]
        public object Delete_EquipFile(string HItemID, string user)
        {
            if (!DBUtility.ClsPub.Security_Log("Gy_EquipFile_Delete", 1, false, user))
            if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_Delete", 1, false, user))
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
@@ -110,9 +166,57 @@
                    return objJsonResult;
                }
                //删除前控制=========================================
                ds = oCN.RunProcReturn("Exec h_p_Gy_Maintain_BeforeDelCtrl " + HItemID + ",'" + User + "'", "h_p_Gy_Maintain_BeforeDelCtrl");
                if (ds == null)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除前判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    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);
                //删除后控制=========================================
                DataSet ds2 = oCN.RunProcReturn("Exec h_p_Gy_Maintain_AfterDelCtrl " + HItemID + ",'" + User + "'", "h_p_Gy_Maintain_AfterDelCtrl");
                if (ds2 == null)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除后判断失败!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "删除失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
@@ -140,7 +244,7 @@
        {
            try
            {
                ds = oCN.RunProcReturn("select * from h_v_Gy_EquipFileMainList where hmainid=" + HInterID, "h_v_Gy_EquipFileMainList");
                ds = oCN.RunProcReturn("select * from h_v_Gy_EquipFileMain_Edit where hmainid=" + HInterID, "h_v_Gy_EquipFileMain_Edit");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
@@ -294,14 +398,21 @@
                string HLogo = list[0].HLogo;                //√      varchar(50)   //品牌
                int HSellSupID = list[0].HSellSupID;              // √   int      //供应商(Gy_Supplier)
                int HMakeSupID = list[0].HMakeSupID;              // int      //制造商 (Gy_Supplier) 
                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) //采集类型
                string HMainSourceFlag = list[0].HMainSourceFlag;             //varchar(10) //是否主生产设备(否,是)
                int HMainSourceID = list[0].HMainSourceID;  //int //所属主生产设备(Gy_EquipFileBillMain)
                string HMaker = msg5;
                string HMakeDate = DateTime.Now.Date.ToString();
                //string HMakeDate = DateTime.Now.Date.ToString();
                int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID;
                int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID;
                int HSourceID = list[0].HSourceID;
                int HCREATEORGID = list[0].HCREATEORGID;
                int HUSEORGID = list[0].HUSEORGID;
                if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber))
                {
@@ -325,9 +436,10 @@
                oCN.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBillMain_BeforeSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBillMain_BeforeSaveCtrl");
                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_BeforeSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBill_BeforeSaveCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
@@ -337,6 +449,7 @@
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:" + ds.Tables[0].Rows[0]["HBackRemark"].ToString(); ;
@@ -348,18 +461,21 @@
                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) " +
                    "HEquipFileTypeID,HProNum,HBarCode,HWorkArea,HLogo,HSellSupID,HMakeSupID,hbilltype,HDate,HYear,HMaker,HMakeDate,HEquipMaintainRuleInterID,HEquipDotCheckRuleInterID," +
                    "HSourceID,HMainSourceFlag,HMacAddress,HMainSourceID,HIPAddress,HLinkNETMode,HCollectMode,HCollectClass,HCREATEORGID,HUSEORGID) " +
                   " 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 + "')", ref DBUtility.ClsPub.sExeReturnInfo);
                   "','" + HBarCode + "','" + HWorkArea + "','" + HLogo + "'," + HSellSupID + "," + HMakeSupID + ",'3308','" + HDate + "','" + HYear + "','" + HMaker + "',GETDATE(),'" + HEquipMaintainRuleInterID + "','" + HEquipDotCheckRuleInterID +"'" +
                   "," + HSourceID + ",'" + HMainSourceFlag + "','" + HMacAddress + "','" + HMainSourceID + "','" + HIPAddress + "','" + HLinkNETMode + "','" + HCollectMode + "','" + HCollectClass + "',"+ HCREATEORGID + ","+ HUSEORGID + ")", ref DBUtility.ClsPub.sExeReturnInfo);
                //修改上级为非末级代码
                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");
                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBill_AfterSaveCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
@@ -368,7 +484,8 @@
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:" + ds.Tables[0].Rows[0]["HBackRemark"].ToString(); ;
@@ -426,6 +543,7 @@
                long HInterID = list[0].HInterID;
                string HEquipFileNumber = list[0].HEquipFileNumber;
                string hbillno = list[0].HBillNo;
                string HEquipFileNo = list[0].HEquipFileNo;         //   varchar(50)   //设备编码(唯一)
                string HName = list[0].HName;                //    √   varchar(100)        //设备名称
                string HModel = list[0].HModel;               //   √    varchar(100)        //设备规格
@@ -450,12 +568,17 @@
                int HMakeSupID = list[0].HMakeSupID;              // int      //制造商 (Gy_Supplier)
                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 //所属主生产设备(Gy_EquipFileBillMain)
                string HUpDater = msg5;
                string HUpDateDate = DateTime.Now.Date.ToString();
                //string HUpDateDate = DateTime.Now.Date.ToString();
                int HEquipDotCheckRuleInterID = list[0].HEquipDotCheckRuleInterID;
                int HEquipMaintainRuleInterID = list[0].HEquipMaintainRuleInterID;
                int HSourceID = list[0].HSourceID;
                int HUSEORGID = list[0].HUSEORGID;
                if (!DBUtility.ClsPub.AllowNumber(HEquipFileNumber))
@@ -481,6 +604,31 @@
                //若MAINDI重复则重新获取
                oCN.BeginTran();
                //保存前控制=========================================
                string HBillNote = "";
                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_BeforeSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBill_BeforeSaveCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:" + ds.Tables[0].Rows[0]["HBackRemark"].ToString(); ;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //=========================================================
                //主表
                oCN.RunProc("Update Gy_EquipFileBillMain set " +
                    " HEquipFileNumber='" + HEquipFileNumber + "'" +
@@ -506,19 +654,50 @@
                    ",HLogo='" + HLogo + "'" +
                    ",HSellSupID=" + HSellSupID +
                    ",HMakeSupID= " + HMakeSupID +
                    ",HUpDater= '" + HUpDater + "'" +
                    ",HUpDateDate= '" + HUpDateDate + "'" +
                    ",HUSEORGID= " + HUSEORGID +
                    ",HUpDater= '" + HUpDater + "'" +
                    ",HUpDateDate= GETDATE()" +
                    ",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);
                //保存后控制=========================================
                ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_AfterSaveCtrl " + HInterID.ToString() + ", '" + hbillno + "','" + HBillNote + "',1 ", "h_p_Gy_EquipFileBill_AfterSaveCtrl");
                if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                {
                    oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存失败!原因:保存前判断失败,请与网络管理人员联系";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                {
                    oCN.RollBack();
                    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.data = null;
                return objJsonResult;
@@ -781,6 +960,28 @@
                //Type 1 审核  2  反审核
                if (Type == 1)
                {
                    //审核前控制=========================================
                    ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_BeforeDelCtrl " + HInterID + ",'" + user + "'", "h_p_Gy_EquipFileBill_BeforeDelCtrl");
                    if (ds == null)
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核前判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                    if (!BillOld.CheckBill(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                    {
                        objJsonResult.code = "0";
@@ -789,9 +990,53 @@
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //审核后控制=========================================
                    DataSet ds2 = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_AfterDelCtrl " + HInterID + ",'" + user + "'", "h_p_Gy_EquipFileBill_AfterDelCtrl");
                    if (ds2 == null)
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核后判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                }
                else
                {
                    //反审核前控制=========================================
                    ds = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_BeforeUnCheckCtrl " + HInterID + ",'" + user + "'", "h_p_Gy_EquipFileBill_BeforeUnCheckCtrl");
                    if (ds == null)
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核前判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                    if (BillOld.AbandonCheck(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                    {
                        SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
@@ -804,6 +1049,29 @@
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //反审核后控制=========================================
                    DataSet ds2 = oCN.RunProcReturn("Exec h_p_Gy_EquipFileBill_AfterUnCheckCtrl " + HInterID + ",'" + user + "'", "h_p_Gy_EquipFileBill_AfterUnCheckCtrl");
                    if (ds2 == null)
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核后判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                }
                oCN.Commit();//提交事务
@@ -871,6 +1139,80 @@
                else
                {
                    if (!BillOld.CancelClose(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "反关闭失败!原因:" + ClsPub.sExeReturnInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "执行成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "执行失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region 设备档案作废/反作废功能
        [Route("Gy_EquipFileBill/DeleteGy_EquipFileBill")]
        [HttpGet]
        public object DeleteGy_EquipFileBill(string HInterID, int Type, string user)
        {
            try
            {
                //判断是否有删除权限
                if (!DBUtility.ClsPub.Security_Log("Gy_EquipFileBill_Close", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限关闭!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (string.IsNullOrWhiteSpace(HInterID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ClsPub.CurUserName = user;
                oCN.BeginTran();//开始事务
                //Type 1 作废  2  反作废
                if (Type == 1)
                {
                    if (!BillOld.Cancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "关闭失败!原因:" + ClsPub.sExeReturnInfo;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                else
                {
                    if (!BillOld.AbandonCancelltion(int.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
@@ -1253,23 +1595,25 @@
                    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($@"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)
@@ -1315,25 +1659,27 @@
                    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($@"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)