zrg
2024-12-11 cf46a6e4beb7e83af331a28065c96077fa2f1e15
完善出厂检验单,人员履历查询增加一个物料参数
10个文件已修改
3个文件已添加
1139 ■■■■ 已修改文件
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs 193 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs 772 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/人事管理/人员履历/HR_PersonnelResumeController.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/QC_OutCompCheckBillMain.cs 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/QC_OutCompCheckBillSub.cs 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj.user 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
SyntacticSugar/obj/Debug/SyntacticSugar.csproj.AssemblyReference.cache
Binary files differ
WebAPI/Controllers/BaseSet/Gy_EmployeeController.cs
@@ -6,6 +6,8 @@
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Web;
using System.Web.Http;
using WebAPI.Models;
using WebAPI.Service;
@@ -21,7 +23,7 @@
        private json objJsonResult = new json();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
        /// <summary>
        /// è¿”回职员列表
@@ -265,6 +267,8 @@
        //        return objJsonResult;
        //    }
        //}
        /// <summary>
        /// ä¿å­˜æŒ‰é’®
        ///参数:string sql。
@@ -577,6 +581,8 @@
                return objJsonResult;
            }
        }
        ///// <summary>
        ///// ä¿å­˜èŒå‘˜
        ///// </summary>
@@ -1335,7 +1341,6 @@
        }
        #endregion
        #region æ ¹æ®ç­ç»„返回职员信息
        /// <summary>
        /// æ ¹æ®ç­ç»„返回职员信息
@@ -1387,5 +1392,189 @@
        }
        #endregion
        #region èŒå‘˜é™„件上传
        /// <summary>
        /// æ–‡ä»¶ä¸Šä¼ 
        /// </summary>
        /// <returns></returns>
        [Route("Gy_Employee_UploadFile")]
        [HttpPost]
        public object Gy_Employee_UploadFile()
        {
            string HBillNo = HttpContext.Current.Request.Params["HBillNo"];  //单据号
            string HRemark = HttpContext.Current.Request.Params["HRemark"];  //备注
            string HUserName = HttpContext.Current.Request.Params["HUserName"];  //创建人
            HttpPostedFile files = HttpContext.Current.Request.Files["file"];
            string path = HttpContext.Current.Server.MapPath("~/../Files/Gy_Employee/" + HBillNo);
            dynamic dyResult = UpLoadFile(files, path, HBillNo, HRemark, HUserName);
            if (dyResult != null && dyResult.result == 1)
            {
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "上传成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            else
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = dyResult.returnval;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        public dynamic UpLoadFile(HttpPostedFile files, string path, string HBillNo, string HRemark, string HUserName)
        {
            dynamic Result_Ob = new { result = 1, returnval = "上传成功!" };
            string filePath = Path.GetFullPath(files.FileName);//文件上传路径
            string fileExtension = Path.GetExtension(files.FileName);// æ–‡ä»¶æ‰©å±•名
            string filename = files.FileName;//文件名
            string fileSavePath = path;// ä¸Šä¼ ä¿å­˜è·¯å¾„
            int filesize = files.ContentLength;//获取上传文件的大小单位为字节byte
            int Maxsize = 40000 * 1024;//定义上传文件的最大空间大小为40M
            try
            {
                if (files == null || files.ContentLength <= 0)
                {
                    Result_Ob = new { result = 0, returnval = "文件不能为空!" };
                    return Result_Ob;
                }
                if (filesize >= Maxsize)
                {
                    Result_Ob = new { result = 0, returnval = "上传文件超过40M,不能上传!" };
                    return Result_Ob;
                }
                string fileurl = Path.Combine(fileSavePath, filename);
                if (Directory.Exists(fileurl) == true)  //如果存在重名文件就提示
                {
                    Result_Ob = new { result = 0, returnval = "存在同名文件!" };
                    return Result_Ob;
                }
                //删除数据表数据
                ds = oCN.RunProcReturn("delete from MES_AccessoriesList where HSourceBillNo ='" + HBillNo + "' and HFileName='" + filename + "'", "MES_AccessoriesList");
                if (Directory.Exists(path))
                {
                    File.Delete(fileurl);      //删除指定文件
                    files.SaveAs(fileurl);
                    string StrPath = "/files/Gy_Employee/" + HBillNo + "/" + filename;
                    if (File.Exists(fileurl))
                    {
                        //这里可以执行一些其它的操作,比如更新数据库
                        //写入数据表
                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
                                    ",HFileClsID,HSourceBillNo" +
                                   ") values('"
                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
                                    "','" + 0 + "','" + HBillNo +
                                   "') ");
                    }
                    else
                    {
                        Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" };
                    }
                }
                else
                {
                    Directory.CreateDirectory(fileSavePath); //添加文件夹
                    files.SaveAs(fileurl);
                    string StrPath = "/files/Gy_Employee/" + HBillNo + "/" + filename;
                    if (File.Exists(fileurl))
                    {
                        //这里可以执行一些其它的操作,比如更新数据库
                        //写入数据表
                        oCN.RunProc("Insert into MES_AccessoriesList (HFileName,HFilePath,HFilePath_Cus,HFileType" +
                                    ",HLoadMan,HLoadDate,HRemark,HVerNum,HFileSize" +
                                    ",HFileClsID,HSourceBillNo" +
                                   ") values('"
                                    + filename.ToString() + "','" + StrPath.ToString() + "','" + filePath.ToString() + "','" + fileExtension.ToString() + "'" +
                                    ",'" + HUserName + "',getdate(),'" + HRemark + "','V1','" + filesize +
                                    "','" + 0 + "','" + HBillNo +
                                   "') ");
                    }
                    else
                    {
                        Result_Ob = new { result = 0, returnval = "上传失败!此文件为恶意文件" };
                    }
                }
            }
            catch (Exception e)
            {
                Result_Ob = new { result = 0, returnval = e.Message };
            }
            return Result_Ob;
        }
        /// <summary>
        /// æ ¹æ®å•据号查找上传文件列表
        /// </summary>
        /// <param name="sWhere"></param>
        /// <returns></returns>
        [Route("Gy_Employee_Filelist")]
        [HttpGet]
        public object Gy_Employee_Filelist(string HBillNo)
        {
            var url = fileip + "/files/Gy_Employee/" + HBillNo + "/";
            //@"C:\\files\\"
            try
            {
                ds = oCN.RunProcReturn("select *,'" + url + "'+CAST(HFileName as varchar(200))as url  from MES_AccessoriesList where HSourceBillNo='" + HBillNo + "'", "MES_AccessoriesList");
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// æ ¹æ®ID,单据号,文件名 åˆ é™¤æ–‡ä»¶
        /// </summary>
        /// <param name="sWhere"></param>
        /// <returns></returns>
        [Route("Gy_Employee_DeleteFilelist")]
        [HttpGet]
        public object Gy_Employee_DeleteFilelist(string HItemID, string HSourceBillNo, string HFileName)
        {
            try
            {
                oCN.RunProc("delete from MES_AccessoriesList where HItemID =" + HItemID);
                string fileurl = Path.Combine(HttpContext.Current.Server.MapPath("~/../Files/EquipTechParamFolder/" + HSourceBillNo), HFileName);
                File.Delete(fileurl);      //删除指定文件
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                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
    }
}
WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs
@@ -773,7 +773,7 @@
                {
                    BillStatus = DBUtility.ClsPub.Enum_BillStatus.BillStatus_AddNew;
                    //判断新增权限
                    if (!DBUtility.ClsPub.Security_Log(ModRightName, 1, false, HMaker))
                    if (!DBUtility.ClsPub.Security_Log(ModRightNameEdit, 1, false, HMaker))
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
WebAPI/Controllers/SCGL/QC_OutCompCheckBillController.cs
@@ -1,6 +1,7 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Class;
using SyntacticSugar.constant;
using System;
using System.Collections;
using System.Collections.Generic;
@@ -20,17 +21,12 @@
        public DataSet ds = new DataSet();
        public WebServer webserver = new WebServer();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        public DAL.ClsQC_FirstPieceCheckBill BillOld = new DAL.ClsQC_FirstPieceCheckBill();
        /// <summary>
        /// è¿”回出厂检验单列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        #region å‡ºåŽ‚æ£€éªŒå•åˆ—è¡¨
        [Route("QC_OutCompCheckBill/GetOutCompCheckBillList")]
        [HttpGet]
        public object GetOutCompCheckBillList(string sWhere,string user)
        public object GetOutCompCheckBillList(string sWhere, string user)
        {
            try
            {
@@ -52,33 +48,23 @@
                else
                {
                    string sql1 = "select * from h_v_QC_OutCompCheckBillList where 1 = 1 ";
                    string sql = sql1 + sWhere+ " order by hmainid desc ";
                    string sql = sql1 + sWhere + " order by hmainid desc ";
                    ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList");
                }
              foreach (DataColumn col in ds.Tables[0].Columns)//遍历ds中第一个表(Tables[0])的所有列(Columns)每次循环中,col变量会持有当前列的引用
                    {
                        Type dataType = col.DataType; //获取当前数据类型传入 è‡ªå®šä¹‰å˜é‡datadataType
                        string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //字符串拼接         // å°†åˆ—名和数据类型信息拼接成一个JSON格式的字符串
                        a.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                    }
                foreach (DataColumn col in ds.Tables[0].Columns)//遍历ds中第一个表(Tables[0])的所有列(Columns)每次循环中,col变量会持有当前列的引用
                {
                    Type dataType = col.DataType; //获取当前数据类型传入 è‡ªå®šä¹‰å˜é‡datadataType
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //字符串拼接         // å°†åˆ—名和数据类型信息拼接成一个JSON格式的字符串
                    a.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = a;
                return objJsonResult;
                //}
                //else
                //{
                //objJsonResult.code = "0";
                //objJsonResult.count = 0;
                //objJsonResult.Message = "无数据";
                //objJsonResult.data = null;
                //return objJsonResult;
                //}
            }
            catch (Exception e)
            {
@@ -89,59 +75,116 @@
                return objJsonResult;
            }
        }
        #region[编辑时获取表头数据]
        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListCheckDetail")]
        #endregion
        #region å‡ºåŽ‚æ£€éªŒå•åˆ†é¡µåˆ—è¡¨
        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListPage")]
        [HttpGet]
        public ApiResult<DataSet> QC_OutCompCheckBillListCheckDetail(string HID)
        public json QC_OutCompCheckBillListPage(string sWhere, string user, int page, int size)
        {
            if (string.IsNullOrEmpty(HID))
                return new ApiResult<DataSet> { code = -1, msg = "ID不能为空" };
            SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
            DataSet ds;
            json res = new json();
            try
            {
                List<object> columnNameList = new List<object>();
                //判断权限
                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "您没有该模块权限,请与管理员联系!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                sWhere = sWhere.Replace("'", "''");
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("exec h_p_QC_OutCompCheckBillList " + page + "," + size + ",''", "h_p_QC_OutCompCheckBillList");
                }
                else
                {
                    ds = oCN.RunProcReturn("exec h_p_QC_OutCompCheckBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_QC_OutCompCheckBillList");
                }
            var dataSet = oCN.RunProcReturn("select top 1 * from h_v_QC_OutCompCheckBillList  where hmainid= " + HID + " ", "h_v_QC_OutCompCheckBillList");
            if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
                return new ApiResult<DataSet> { code = -1, msg = "不存在结算单号" };
                //添加列名
                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列对象的列名
                }
            return new ApiResult<DataSet> { code = 1, msg = "查询成功", data = dataSet };
                res.code = CodeConstant.SUCCEED;
                res.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
                res.Message = "Sucess!";
                res.list = columnNameList;
                res.data = ds.Tables[0];
                return res;
            }
            catch (Exception e)
            {
                res.code = CodeConstant.FAIL;
                res.count = CountConstant.FAIL;
                res.Message = "Exception!" + e.ToString();
                res.data = null;
                return res;
            }
        }
        #endregion
        #region[编辑时获取表体数据]
        [Route("QC_OutCompCheckBill/QC_OutCompCheckBillListProjectDetai")]
        #region[编辑时获取数据]
        [Route("QC_OutCompCheckBill/QC_OutCompCheckBill_Edit")]
        [HttpGet]
        public object QC_OutCompCheckBillListProjectDetai(string sqlWhere)
        public object QC_OutCompCheckBill_Edit(string sWhere, string user)
        {
            DataSet ds;
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql1 = "SELECT æ—¥æœŸ,单据号,表头备注,客户名称" +
                    ",客户代码,产品内码, äº§å“åç§°, äº§å“åž‹å·, æ£€éªŒå‘˜ä»£ç " +
                    ", æ£€éªŒå‘˜åç§°, åˆ¶å•人, åˆ¶å•日期, å®¡æ ¸äºº, å®¡æ ¸æ—¥æœŸ" +
                    ", ä¿®æ”¹äºº, ä¿®æ”¹æ—¥æœŸ, å…³é—­äºº, å…³é—­æ—¥æœŸ,单据类型 FROM h_v_QC_OutCompCheckBillList where 1 = 1 ";
                string sql = sql1 + sqlWhere;
                ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList");
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "获取信息成功!";
                objJsonResult.data = ds.Tables[0];
                List<object> columnNameList = new List<object>();
                string sql1 = "select * from h_v_QC_OutCompCheckBillList_Edit where 1 = 1  ";
                string sql = sql1 + sWhere + " order by hmainid desc";
                ds = oCN.RunProcReturn(sql, "h_v_QC_OutCompCheckBillList_Edit");
                //添加列名
                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列对象的列名
                }
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.list = columnNameList;
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有查询到数据";
                    objJsonResult.list = columnNameList;
                    objJsonResult.data = ds.Tables[0];
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + e.ToString();
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
            return objJsonResult;
        }
        #endregion
        /// <summary>
        /// æ–°å¢žå•据-保存按钮
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        #region å‡ºåŽ‚æ£€éªŒå• ä¸»å­è¡¨ä¿å­˜
        [Route("QC_OutCompCheckBill/AddBill")]
        [HttpPost]
        public object AddBill([FromBody] JObject sMainSub)
@@ -172,7 +215,8 @@
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string msg3 = sArray[1].ToString();
            string user = sArray[2].ToString();
            string OperationType = sArray[2].ToString();
            string user = sArray[3].ToString();
            try
            {
                //判断权限
@@ -187,47 +231,98 @@
                msg2 = "[" + msg2.ToString() + "]";
                List<QC_OutCompCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillMain>>(msg2);
                int HYear = 2021;
                double HPeriod = 1;
                int HYear = DateTime.Now.Year; ;
                double HPeriod = DateTime.Now.Month; ;
                string HBillType = "7504";
                string HBillSubType = "7504";
                long HInterID = mainList[0].HInterID;//递入type得到的单据ID
                DateTime HDate = mainList[0].HDate;//日期
                string HBillNo = mainList[0].HBillNo;//递入type得到的单据号
                long HBillStatus = mainList[0].HBillStatus;
                string HRemark = mainList[0].HRemark;//备注
                string HBacker = mainList[0].HBacker;
                DateTime HBackDate = mainList[0].HBackDate;
                string HBackRemark = mainList[0].HBackRemark;
                string HChecker = mainList[0].HChecker;
                DateTime HCheckDate = mainList[0].HCheckDate;
                string HMaker = mainList[0].HMaker;
                DateTime HMakeDate = mainList[0].HMakeDate;
                string HRemark = mainList[0].HRemark;//备注
                string HMaker = user;
                long HCusID = mainList[0].HCusID;
                long HMaterID = mainList[0].HMaterID;
                long HFirstCheckEmp = mainList[0].HFirstCheckEmp;
                string HCheckerResult = mainList[0].HCheckerResult;
                bool HCheckerResult = ClsPub.isBool(mainList[0].HCheckerResult);
                double HInStockQty = mainList[0].HInStockQty;
                double HCheckQty = mainList[0].HCheckQty;
                double HRightQty = mainList[0].HRightQTy;
                double HBadQty = mainList[0].HBadQty;
                long HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID);
                string  HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo);
                long HICMOEntryID = ClsPub.isLong(mainList[0].HICMOEntryID);
                long HICMOQty = ClsPub.isLong(mainList[0].HICMOQty);
                long HProcExchInterID = ClsPub.isLong(mainList[0].HProcExchInterID);
                long HProcExchEntryID = ClsPub.isLong(mainList[0].HProcExchEntryID);
                string  HProcExchBillNo = ClsPub.isStrNull(mainList[0].HProcExchBillNo);
                long HProcExchQty = ClsPub.isLong(mainList[0].HProcExchQty);
                long HSourceID = ClsPub.isLong(mainList[0].HSourceID);
                long HProcID = ClsPub.isLong(mainList[0].HProcID);
                long HMainSourceInterID = ClsPub.isLong(mainList[0].HMainSourceInterID);
                long HMainSourceEntryID = ClsPub.isLong(mainList[0].HMainSourceEntryID);
                string  HMainSourceBillNo = ClsPub.isStrNull(mainList[0].HMainSourceBillNo);
                string HMainSourceBillType = ClsPub.isStrNull(mainList[0].HMainSourceBillType);
                long HQCSchemeID = ClsPub.isLong(mainList[0].HQCSchemeID);
                long HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                string  HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                string  HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                long HSourceOrgID = ClsPub.isLong(mainList[0].HSourceOrgID);
                long HInspectOrgID = ClsPub.isLong(mainList[0].HInspectOrgID);
                //主表
                oCN.RunProc("Insert Into QC_OutCompCheckBillMain " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
                ",HYear,HPeriod,HRemark" +
                ",HCusID,HMaterID,HInStockQty,HCheckQty,HRightQty" +
                ",HBadQty,HFirstCheckEmp,HCheckerResult" +
                ") " +
                " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "'," + HBillStatus.ToString() + ",'" + HDate + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "'" +
                "," + HCusID.ToString() + "," + HMaterID.ToString() + "," + HInStockQty.ToString() + "," + HCheckQty.ToString() + "," + HRightQty.ToString() +
                "," + HBadQty.ToString() + "," + HFirstCheckEmp.ToString() + ",'" + HCheckerResult + "'" +
                ") ");
                if (OperationType=="1" || OperationType=="2")
                {
                    //主表
                    oCN.RunProc("Insert Into QC_OutCompCheckBillMain " +
                    "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
                    ",HYear,HPeriod,HRemark,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
                    ",HCusID,HMaterID,HInStockQty,HCheckQty,HRightQty,HBadQty,HFirstCheckEmp,HCheckerResult" +
                    ",HICMOInterID,HICMOEntryID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID,HProcExchBillNo,HProcExchQty" +
                     ",HSourceID,HProcID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo,HSourceOrgID,HInspectOrgID" +
                    ") " +
                    " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "'," + HBillStatus.ToString() + ",'" + HDate + "','" + user + "',getdate()" +
                    "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "','" + HMainSourceInterID + "','" + HMainSourceEntryID + "','" + HMainSourceBillNo + "','" + HMainSourceBillType + "'" +
                    ",'" + HCusID.ToString() + "','" + HMaterID.ToString() + "','" + HInStockQty.ToString() + "','" + HCheckQty.ToString() + "','" + HRightQty.ToString() + "','" + HBadQty.ToString() + "','" + HFirstCheckEmp.ToString() + "','" + DBUtility.ClsPub.BoolToString(HCheckerResult) + "'" +
                    ",'" + HICMOInterID.ToString() + "','" + HICMOEntryID.ToString() + "','" + HICMOBillNo.ToString() + "','" + HICMOQty.ToString() + "','" + HProcExchInterID.ToString() + "','" + HProcExchEntryID.ToString() + "','" + HProcExchBillNo.ToString() + "','" + HProcExchQty + "'" +
                    ",'" + HSourceID.ToString() + "','" + HProcID.ToString() + "','" + HQCSchemeID.ToString() + "','" + HShiftsID.ToString() + "','" + HErrTreatment.ToString() + "','" + HBatchNo.ToString() + "','" + HSourceOrgID.ToString() + "','" + HInspectOrgID.ToString() + "') ");
                }
                else if (OperationType == "3")
                {
                    oCN.RunProc("UpDate QC_OutCompCheckBillMain set " +
                        " HBillNo='" + HBillNo + "'" +
                         ",HDate='" + HDate + "'" +
                         ",HYear='" + HYear.ToString() + "'" +
                         ",HPeriod='" + HPeriod.ToString() + "'" +
                         ",HBillStatus='" + HBillStatus + "'" +
                         ",HRemark='" + HRemark + "'" +
                         ",HUpDater='" +user + "'" +
                         ",HUpDateDate=getdate()" +
                         //========================================
                         ",HSourceID=" + HSourceID.ToString() +
                         ",HQCSchemeID=" + HQCSchemeID.ToString() +
                         ",HICMOInterID=" + HICMOInterID.ToString() +
                         ",HICMOBillNo='" + HICMOBillNo + "'" +
                         ",HICMOQty=" + HICMOQty.ToString() +
                         ",HProcExchInterID=" + HProcExchInterID.ToString() +
                         ",HProcExchEntryID=" + HProcExchEntryID.ToString() +
                         ",HProcExchBillNo='" + HProcExchBillNo + "'" +
                         ",HProcExchQty=" + HProcExchQty.ToString() +
                         ",HProcID=" + HProcID.ToString() +
                         ",HMaterID=" + HMaterID.ToString() +
                         ",HFirstCheckEmp=" + HFirstCheckEmp.ToString() +
                         ",HCheckerResult=" + DBUtility.ClsPub.BoolToString(HCheckerResult) +
                         ",HShiftsID=" + HShiftsID.ToString() +
                         ",HErrTreatment='" + HErrTreatment + "'" +
                         ",HBatchNo='" + HBatchNo + "'" +
                         " where HInterID=" + HInterID.ToString());
                    oCN.RunProc("Delete From QC_OutCompCheckBillSub where HInterID = " + HInterID);
                }
                //保存子表
                objJsonResult = AddBillSub(msg3, HInterID);
                objJsonResult = AddBillSub(msg3, HInterID, HBillNo);
                if (objJsonResult.code == "0")
                {
                    objJsonResult.code = "0";
@@ -253,37 +348,66 @@
            }
        }
        public json AddBillSub(string msg3, long HInterID)
        public json AddBillSub(string msg3, long HInterID, string HBillNo)
        {
            List<QC_OutCompCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillSub>>(msg3);
            for (int i = 0; i < subList.ToArray().Length; i++)
            {
                string HBillNo_bak = subList[0].HBillNo_bak;
                long HEntryID = subList[0].HEntryID;//工段ID
                string HCloseMan = subList[0].HCloseMan;
                long HCloseType = subList[0].HCloseType;
                string HRemark = subList[0].HRemark;
                long HSourceInterID = subList[0].HSourceInterID;
                long HSourceEntryID = subList[0].HSourceEntryID;
                string HSourceBillNo = subList[0].HSourceBillNo;
                string HSourceBillType = subList[0].HSourceBillType;
                double HRelationQty = subList[0].HRelationQty;
                double HRelationMoney = subList[0].HRelationMoney;
            for (int i = 0; i < subList.Count; i++)
            {
                int HEntryID = i + 1;
                string HRemark = ClsPub.isStrNull(subList[i].HRemark);
                long HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID);
                long HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID);
                string HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType);
                string HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo);
                double HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty);
                double HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney);
                string HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan);
                DateTime HEntryCloseDate = DBUtility.ClsPub.isDate(subList[i].HEntryCloseDate);
                bool HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType);
                long HQCCheckClassID = subList[0].HQCCheckClassID;
                long HQCCheckItemID = subList[0].HQCCheckItemID;
                string HQCStd = subList[0].HQCStd;
                string HResult = subList[0].HResult;
                long HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID);
                string HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd);
                string HUnit = DBUtility.ClsPub.isStrNull(subList[i].HUnit);
                string HQCNote = DBUtility.ClsPub.isStrNull(subList[i].HQCNote);
                string HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
                string HMax = DBUtility.ClsPub.isStrNull(subList[i].HMax);
                string HMin = DBUtility.ClsPub.isStrNull(subList[i].HMin);
                string HAvg = DBUtility.ClsPub.isStrNull(subList[i].HAvg);
                long HSampleSchemeID = DBUtility.ClsPub.isLong(subList[i].HSampleSchemeID);
                long HSampleQty = DBUtility.ClsPub.isLong(subList[i].HSampleQty);
                double HSampleDamageQty = DBUtility.ClsPub.isDoule(subList[i].HSampleDamageQty);
                long HAcceptQty = DBUtility.ClsPub.isLong(subList[i].HAcceptQty);
                long HRejectQty = DBUtility.ClsPub.isLong(subList[i].HRejectQty);
                double  HSampleUnRightQty = DBUtility.ClsPub.isDoule(subList[i].HSampleUnRightQty);
                string HStatus = DBUtility.ClsPub.isStrNull(subList[i].HStatus);
                long HUnitID = DBUtility.ClsPub.isLong(subList[i].HUnitID);
                string HInspectVal = DBUtility.ClsPub.isStrNull(subList[i].HInspectVal);
                string HTargetVal = DBUtility.ClsPub.isStrNull(subList[i].HTargetVal);
                string HUpLimit = DBUtility.ClsPub.isStrNull(subList[i].HUpLimit);
                string HDownLimit = DBUtility.ClsPub.isStrNull(subList[i].HDownLimit);
                string HUpOffSet = DBUtility.ClsPub.isStrNull(subList[i].HUpOffSet);
                string HDownOffSet = DBUtility.ClsPub.isStrNull(subList[i].HDownOffSet);
                string HAnalysisMethod = DBUtility.ClsPub.isStrNull(subList[i].HAnalysisMethod);
                long HKeyInspect = DBUtility.ClsPub.isLong(subList[i].HKeyInspect);
                long HInspectInstruMentID = DBUtility.ClsPub.isLong(subList[i].HInspectInstruMentID);
                string HInspectResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
                oCN.RunProc("Insert into QC_OutCompCheckBillSub " +
                      " (HInterID,HBillNo_bak,HEntryID,HCloseMan" +
                      ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
                      " (HInterID,HBillNo_bak,HEntryID,HCloseMan,HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
                      ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                      ",HQCCheckClassID,HQCCheckItemID,HQCStd,HResult" +
                      ",HQCCheckClassID,HQCCheckItemID,HQCStd,HQCNote,HResult,HMax,HMin,HAvg,HSampleSchemeID,HSampleQty" +
                      ",HSampleDamageQty,HAcceptQty,HRejectQty,HSampleUnRightQty,HStatus,HUnitID,HInspectVal,HTargetVal,HUpLimit,HDownLimit" +
                      ",HUpOffSet,HDownOffSet,HAnalysisMethod,HKeyInspect,HInspectInstruMentID,HInspectResult" +
                      ") values("
                      + HInterID.ToString() + ",'" + HBillNo_bak + "'," + HEntryID.ToString() + ",'" + HCloseMan + "'" +
                      ",getdate()," + HCloseType + ",'" + HRemark + "'," + HSourceInterID.ToString() +
                      + HInterID.ToString() + ",'" + HBillNo + "'," + HEntryID.ToString() + ",'" + HCloseMan + "',getdate()," + DBUtility.ClsPub.BoolToString(HCloseType) + ",'" + HRemark + "'," + HSourceInterID.ToString() +
                      "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty.ToString() + "," + HRelationMoney.ToString() +
                      "," + HQCCheckClassID.ToString() + "," + HQCCheckItemID.ToString() + ",'" + HQCStd + "','" + HResult + "'" + ") ");
                      "," + HQCCheckClassID.ToString() + "," + HQCCheckItemID.ToString() + ",'" + HQCStd + "','" + HQCNote + "','" + HResult + "','" + HMax + "','" + HMin + "','" + HAvg + "','" + HSampleSchemeID + "','" + HSampleQty + "'" +
                      "," + HSampleDamageQty.ToString() + "," + HAcceptQty.ToString() + ",'" + HRejectQty + "','" + HSampleUnRightQty + "','" + HStatus + "','" + HUnitID + "','" + HInspectVal + "','" + HTargetVal + "','" + HUpLimit + "','" + HDownLimit + "'" +
                      ",'" + HUpOffSet.ToString() + "','" + HDownOffSet.ToString() + "','" + HAnalysisMethod + "','" + DBUtility.ClsPub.BoolToString(HKeyInspect) + "','" + HInspectInstruMentID + "','" + HInspectResult + "' ) ");
            }
            objJsonResult.code = "1";
@@ -292,13 +416,62 @@
            objJsonResult.data = null;
            return objJsonResult;
        }
        /// <summary>
        ///删除功能
        /// </summary>
        /// <returns></returns>
        #endregion
        #region æ£€éªŒå€¼ä¿å­˜
        [Route("QC_OutCompCheckBill/set_SaveValue")]
        [HttpPost]
        public object set_SaveValue([FromBody] JObject msg)
        {
            ListModels oListModels = new ListModels();
            try
            {
                var _value = msg["msg"].ToString();
                string msg1 = _value.ToString();
                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
                string Value = sArray[0].ToString(); //检验值表格
                Int64 HInterID = Convert.ToInt64(sArray[1]); //主ID
                Int64 HEntryID = Convert.ToInt64(sArray[2]); //子ID
                List<QC_OutCompCheckBillSub_ValueGrid> valueList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_OutCompCheckBillSub_ValueGrid>>(Value);
                for (int i = 0; i < valueList.ToArray().Length; i++)
                {
                    int HSEQ = i + 1;
                    string HInSpectResult = ClsPub.isStrNull(valueList[i].HInSpectResult);
                    double HInSpectValue = ClsPub.isDoule(valueList[i].HInSpectValue);
                    long HInSpectValueB = ClsPub.isLong(valueList[i].HInSpectValueB);
                    string HInSpectValueT = ClsPub.isStrNull(valueList[i].HInSpectValueT);
                    oCN.RunProc("Insert into QC_OutCompCheckBillSub_ValueGrid " +
                      " (HInterID,HEntryID,HSEQ,HInSpectResult,HInSpectValue,HInSpectValueB,HInSpectValueT) " +
                      "values("+ HInterID + "," + HEntryID + "," + HSEQ + ",'" + HInSpectResult + "'," +HInSpectValue + "," + HInSpectValueB + ",'" + HInSpectValueT + "'" +") ");
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = null;
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å‡ºåŽ‚æ£€éªŒå• åˆ é™¤
        [Route("QC_OutCompCheckBill/DeltetOutCompCheckBill")]
        [HttpGet]
        public object DeltetOutCompCheckBill(string HInterID,string user)
        public object DeltetOutCompCheckBill(string HInterID, string user)
        {
            try
            {
@@ -315,6 +488,7 @@
                oCN.BeginTran();
                oCN.RunProc("Delete From QC_OutCompCheckBillMain where HInterID = " + HInterID);
                oCN.RunProc("Delete From QC_OutCompCheckBillSub where HInterID = " + HInterID);
                oCN.RunProc("Delete From QC_OutCompCheckBillSub_ValueGrid where HInterID = " + HInterID);
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
@@ -332,6 +506,380 @@
                return objJsonResult;
            }
        }
        //
        #endregion
        #region å‡ºåŽ‚æ£€éªŒå•ç»´æŠ¤ å®¡æ ¸ åå®¡æ ¸ å…³é—­ åå…³é—­ ä½œåºŸ åä½œåºŸ
        /// <summary>
        /// å‡ºåŽ‚æ£€éªŒå•ç»´æŠ¤ å®¡æ ¸ã€åå®¡æ ¸
        /// </summary>
        /// <param name="HInterID">单据ID</param>
        /// <param name="IsAudit">审核(0),反审核(1)</param>
        /// <param name="CurUserName">审核人</param>
        /// <returns></returns>
        [Route("QC_OutCompCheckBill/CheckQC_OutCompCheckBill")]
        [HttpGet]
        public object CheckQC_OutCompCheckBill(int HInterID, int IsAudit, string CurUserName)
        {
            try
            {
                //审核权限
                if (!DBUtility.ClsPub.Security_Log_second("QC_OutCompCheckBill_Check", 1, false, CurUserName))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "审核失败!无权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                var ds = oCN.RunProcReturn("select * from QC_OutCompCheckBillMain where HInterID=" + HInterID, "QC_OutCompCheckBillMain");
                if (ds.Tables[0].Rows.Count > 0)
                {
                    if (IsAudit == 0)  //审核判断
                    {
                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已审核!不能再次审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                    if (IsAudit == 1) //反审核判断
                    {
                        if (ds.Tables[0].Rows[0]["HChecker"].ToString() == "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据未审核!不需要反审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据不存在!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();
                if (IsAudit == 0)  //审核判断
                {
                    oCN.RunProc("update QC_OutCompCheckBillMain set HChecker='" + CurUserName + "',HCheckDate=getdate() where HInterID=" + HInterID);
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "审核成功";
                    objJsonResult.data = null;
                }
                if (IsAudit == 1) //反审核判断
                {
                    oCN.RunProc("update QC_OutCompCheckBillMain set HChecker='',HCheckDate=null where HInterID=" + HInterID);
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "反审核成功";
                    objJsonResult.data = null;
                }
                oCN.Commit();
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// å‡ºåŽ‚æ£€éªŒå•ç»´æŠ¤ å…³é—­ åå…³é—­
        /// </summary>
        /// <param name="HInterID"></param>
        /// <param name="Type"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        [Route("QC_OutCompCheckBill/CloseQC_OutCompCheckBill")]
        [HttpGet]
        public object CloseQC_FirstPieceCheckBill(string HInterID, int Type, string user)
        {
            try
            {
                //判断是否有删除权限
                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Close", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限关闭!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (string.IsNullOrWhiteSpace(HInterID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ClsPub.CurUserName = user;
                BillOld.MvarItemKey = "QC_OutCompCheckBillMain";
                oCN.BeginTran();//开始事务
                //Type 1 å…³é—­  2  åå…³é—­
                if (Type == 1)
                {
                    //判断单据是否已经关闭
                    DataSet ds;
                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据不存在!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                    {
                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已作废!不能进行关闭!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        if (ds.Tables[0].Rows[0]["HCloseMan"] != null && ds.Tables[0].Rows[0]["HCloseMan"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已关闭!不能再次关闭!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //关闭单据
                        if (!BillOld.CloseBill(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "关闭失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    //判断单据是否已经反关闭
                    DataSet ds;
                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                    {
                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已作废!不能进行关闭!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        if (ds.Tables[0].Rows[0]["HCloseMan"] == null || ds.Tables[0].Rows[0]["HCloseMan"].ToString() == "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据未关闭!不需要再反关闭!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //反关闭单据
                        if (!BillOld.CancelClose(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "反关闭失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "执行成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "执行失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        /// <summary>
        /// å‡ºåŽ‚æ£€éªŒå•ç»´æŠ¤ ä½œåºŸ åä½œåºŸ
        /// </summary>
        /// <param name="HInterID"></param>
        /// <param name="Type"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        [Route("QC_OutCompCheckBill/DropQC_OutCompCheckBill")]
        [HttpGet]
        public object DropQC_FirstPieceCheckBills(string HInterID, int Type, string user)
        {
            try
            {
                //判断是否有作废权限
                if (!DBUtility.ClsPub.Security_Log("QC_OutCompCheckBill_Drop", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无权限作废!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (string.IsNullOrWhiteSpace(HInterID))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID为空!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ClsPub.CurUserName = user;
                BillOld.MvarItemKey = "QC_OutCompCheckBillMain";
                oCN.BeginTran();//开始事务
                //Type 1 ä½œåºŸ  2  åä½œåºŸ
                if (Type == 1)
                {
                    //判断单据是否已经作废
                    DataSet ds;
                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
                    if (ds == null || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据不存在!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                    {
                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已审核!不能进行作废!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        if (ds.Tables[0].Rows[0]["HDeleteMan"] != null && ds.Tables[0].Rows[0]["HDeleteMan"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已作废!不需要再作废!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //作废单据
                        if (!BillOld.Cancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "作废失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    //判断单据是否已经反作废
                    DataSet ds;
                    string sql = "select * from " + BillOld.MvarItemKey + " where HinterID = " + HInterID;
                    ds = oCN.RunProcReturn(sql, BillOld.MvarItemKey);
                    if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0)
                    {
                        if (ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据已审核!不能进行作废!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        if (ds.Tables[0].Rows[0]["HDeleteMan"] == null || ds.Tables[0].Rows[0]["HDeleteMan"].ToString() == "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "单据未作废!不需要再反作废!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //反作废单据
                        if (!BillOld.AbandonCancelltion(Int64.Parse(HInterID), ref ClsPub.sExeReturnInfo))
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "反作废失败!原因:" + ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                oCN.Commit();//提交事务
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "执行成功!";
                objJsonResult.data = null;
                return objJsonResult; ;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "执行失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}
WebAPI/Controllers/ÈËʹÜÀí/ÈËÔ±ÂÄÀú/HR_PersonnelResumeController.cs
@@ -41,7 +41,8 @@
                string HNumber = dic["HNumber"].ToString();//职员代码
                string HName = dic["HName"].ToString();//职员
                string HProcID = dic["HProcID"].ToString();//工序id
                ds = oCN.RunProcReturn("exec h_p_HR_PersonnelResumeReport '" + HNumber.ToString() + "','" + HName + "','" + HProcID + "'", "h_p_HR_PersonnelResumeReport");
                string HMaterID = dic["HMaterID"].ToString();//工序id
                ds = oCN.RunProcReturn("exec h_p_HR_PersonnelResumeReport '" + HNumber.ToString() + "','" + HName + "','" + HProcID + "','"+ HMaterID + "'", "h_p_HR_PersonnelResumeReport");
                List<object> columnNameList = new List<object>();
                // éåŽ†æ‰€æœ‰è¡¨
                foreach (DataTable table in ds.Tables)
WebAPI/Controllers/Æ·ÖʹÜÀí/Ê×¼þ¼ìÑéµ¥/QC_FirstPieceCheckBillController.cs
@@ -137,7 +137,7 @@
        }
        #endregion
        #region å·¥èµ„结算单(个人)分页列表
        #region é¦–件检验单分页列表
        [Route("QC_FirstPieceCheckBillMain/QC_FirstPieceCheckBillMainListPage")]
        [HttpGet]
        public json QC_FirstPieceCheckBillMainListPage(string sWhere, string user, int page, int size)
WebAPI/Models/QC_OutCompCheckBillMain.cs
@@ -5,34 +5,8 @@
namespace WebAPI.Models
{
    public class QC_OutCompCheckBillMain
    public class QC_OutCompCheckBillMain : DBUtility.ClsXt_BaseBillMain
    {
        public long HInterID { get; set; }
        public string HBillNo { get; set; }
        public DateTime HDate { get; set; }
        public long HBillStatus { get; set; }
        public long HCheckItemNowID { get; set; }
        public long HCheckItemNextID { get; set; }
        public long HCheckFlowID { get; set; }
        public string HRemark { get; set; }
        public string HBacker { get; set; }
        public DateTime HBackDate { get; set; }
        public string HBackRemark { get; set; }
        public string HChecker { get; set; }
        public DateTime HCheckDate { get; set; }
        public string HMaker { get; set; }
        public DateTime HMakeDate { get; set; }
        public string HUpDater { get; set; }
        public DateTime HUpDateDate { get; set; }
        public string HCloseMan { get; set; }
        public DateTime HCloseDate { get; set; }
        public string HCloseType { get; set; }
        public string HDeleteMan { get; set; }
        public DateTime HDeleteDate { get; set; }
        public string HMainSourceBillType { get; set; }
        public long HMainSourceInterID { get; set; }
        public long HMainSourceEntryID { get; set; }
        public string HMainSourceBillNo { get; set; }
        public long HPrintQty { get; set; }
        public long HCusID { get; set; }
        public long HMaterID { get; set; }
@@ -41,7 +15,27 @@
        public double HRightQTy { get; set; }
        public double HBadQty { get; set; }
        public long HFirstCheckEmp { get; set; }
        public string HCheckerResult { get; set; }
        public bool HCheckerResult { get; set; }
        //新增字段24/12/10
        public Int64 HSourceID { get; set; }
        public Int64 HICMOInterID { get; set; }
        public String HICMOBillNo { get; set; }
        public Int64 HICMOQty { get; set; }
        public Int64 HProcExchInterID { get; set; }
        public Int64 HProcExchEntryID { get; set; }
        public String HProcExchBillNo { get; set; }
        public Int64 HProcExchQty { get; set; }
        public Int64 HICMOEntryID { get; set; }
        public Int64 HQCSchemeID { get; set; }
        public Int64 HUnitID { get; set; }
        public Int64 HProcID { get; set; }
        public Int64 HDeptID { get; set; }
        public Int64 HShiftsID { get; set; }
        public string HErrTreatment { get; set; }
        public string HBatchNo { get; set; }
        public Int64 HSourceOrgID { get; set; }
        public Int64 HInspectOrgID { get; set; }
    }
}
WebAPI/Models/QC_OutCompCheckBillSub.cs
@@ -5,25 +5,38 @@
namespace WebAPI.Models
{
    public class QC_OutCompCheckBillSub
    {
        public long HInterID { get; set; }
        public string HBillNo_bak { get; set; }
        public long HEntryID { get; set; }
        public string HCloseMan { get; set; }
        public DateTime HEntryCloseDate { get; set; }
        public long HCloseType { get; set; }
        public string HRemark { get; set; }
        public long HSourceInterID { get; set; }
        public long HSourceEntryID { get; set; }
        public string HSourceBillNo { get; set; }
        public string HSourceBillType { get; set; }
        public double HRelationQty { get; set; }
        public double HRelationMoney { get; set; }
    public class QC_OutCompCheckBillSub : DBUtility.ClsXt_BaseBillSub
    {
        public long HQCCheckClassID { get; set; }
        public long HQCCheckItemID { get; set; }
        public string HQCStd { get; set; }
        public string HResult { get; set; }
        //新增字段24/12/10
        public String HUnit { get; set; }
        public String HQCNote { get; set; }
        public String HMax { get; set; }
        public String HMin { get; set; }
        public String HAvg { get; set; }
        public Int64 HSampleSchemeID { get; set; }
        public Int64 HSampleQty { get; set; }
        public double HSampleDamageQty { get; set; }
        public Int64 HAcceptQty { get; set; }
        public Int64 HRejectQty { get; set; }
        public double HSampleUnRightQty { get; set; }
        public String HStatus { get; set; }
        public Int64 HUnitID { get; set; }
        public String HInspectVal { get; set; }
        public String HTargetVal { get; set; }
        public String HUpLimit { get; set; }
        public String HDownLimit { get; set; }
        public String HUpOffSet { get; set; }
        public String HDownOffSet { get; set; }
        public String HAnalysisMethod { get; set; }
        public Int64 HKeyInspect { get; set; }
        public Int64 HInspectInstruMentID { get; set; }
        public String HInspectResult { get; set; }
    }
}
WebAPI/Models/QC_OutCompCheckBillSub_ValueGrid.cs
New file
@@ -0,0 +1,20 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace WebAPI.Models
{
    public class QC_OutCompCheckBillSub_ValueGrid
    {
        public long HInterID { get; set; }
        public long HEntryID { get; set; }
        public Int64 HItemID { get; set; }
        public Int64 HSEQ { get; set; }
        public String HInSpectResult { get; set; }
        public double HInSpectValue { get; set; }
        public Int64 HInSpectValueB { get; set; }
        public String HInSpectValueT { get; set; }
    }
}
WebAPI/Properties/PublishProfiles/JFAPI.pubxml.user
@@ -5,7 +5,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
    <History>True|2024-12-06T07:08:49.5834939Z;True|2024-12-06T14:31:56.0968616+08:00;False|2024-12-06T14:31:44.2264009+08:00;True|2024-12-06T13:59:52.8150929+08:00;False|2024-12-06T13:48:22.6073939+08:00;True|2024-12-05T17:33:27.9247467+08:00;True|2024-12-05T17:30:23.1740838+08:00;False|2024-12-05T17:30:03.9977311+08:00;True|2024-12-04T15:18:41.4963816+08:00;True|2024-12-04T15:16:45.1121101+08:00;True|2024-12-04T15:14:33.5954776+08:00;True|2024-12-04T15:12:27.2913137+08:00;True|2024-12-04T14:10:19.6190673+08:00;False|2024-12-04T14:10:02.0319713+08:00;True|2024-12-03T16:08:46.6721098+08:00;True|2024-12-03T15:16:04.1754554+08:00;True|2024-12-03T15:13:25.4927626+08:00;True|2024-12-03T14:55:09.4413291+08:00;True|2024-12-03T14:43:11.8243897+08:00;True|2024-12-03T14:29:16.1511932+08:00;True|2024-12-03T14:24:07.9561838+08:00;False|2024-12-03T14:23:55.1293602+08:00;True|2024-12-02T16:31:22.0404862+08:00;False|2024-12-02T16:28:53.1721961+08:00;True|2024-12-02T15:41:24.9462025+08:00;True|2024-12-02T14:12:12.9356193+08:00;False|2024-12-02T14:11:35.7159488+08:00;True|2024-12-02T10:59:31.5582757+08:00;True|2024-11-29T12:08:55.4868083+08:00;False|2024-11-29T12:08:37.0353185+08:00;True|2024-11-28T10:47:27.2071355+08:00;False|2024-11-28T10:47:13.6670955+08:00;True|2024-11-27T15:21:57.6747082+08:00;False|2024-11-27T15:20:07.2403056+08:00;True|2024-11-27T15:13:36.1461091+08:00;True|2024-11-27T14:34:35.5908753+08:00;False|2024-11-27T14:33:30.7118923+08:00;True|2024-11-26T15:16:44.1854927+08:00;True|2024-11-26T15:14:33.4021067+08:00;False|2024-11-26T15:14:07.9955135+08:00;True|2024-11-26T14:48:35.6408418+08:00;True|2024-11-26T14:45:00.7251556+08:00;True|2024-11-26T14:04:58.4232988+08:00;False|2024-11-26T14:04:28.1286675+08:00;True|2024-11-25T13:45:07.6935933+08:00;True|2024-11-25T13:43:59.0788650+08:00;False|2024-11-25T13:43:44.2225194+08:00;True|2024-11-25T08:54:05.5144014+08:00;False|2024-11-25T08:53:49.2284063+08:00;False|2024-11-22T09:53:13.7879664+08:00;True|2024-11-21T13:48:31.7056264+08:00;True|2024-11-21T13:46:55.0891551+08:00;True|2024-11-21T13:44:05.5221110+08:00;True|2024-11-21T13:43:39.1385899+08:00;False|2024-11-21T13:43:19.9351488+08:00;True|2024-11-20T11:33:52.0324053+08:00;True|2024-11-20T11:20:58.4917889+08:00;True|2024-11-20T11:03:46.9552623+08:00;True|2024-11-20T10:45:10.9517109+08:00;False|2024-11-20T10:44:58.3221116+08:00;False|2024-11-19T15:39:27.3889104+08:00;True|2024-11-19T14:42:32.0854561+08:00;True|2024-11-19T14:19:19.6198070+08:00;True|2024-11-19T14:13:08.2003750+08:00;False|2024-11-19T14:12:15.5442850+08:00;True|2024-11-18T13:05:41.0455534+08:00;True|2024-11-18T11:05:30.2819404+08:00;True|2024-11-18T10:51:07.1852818+08:00;False|2024-11-18T10:50:21.5098527+08:00;True|2024-11-18T10:15:38.5429366+08:00;True|2024-11-18T10:00:51.0847524+08:00;True|2024-11-18T09:34:52.1772715+08:00;True|2024-11-18T09:27:23.6013754+08:00;False|2024-11-18T09:26:00.9323551+08:00;True|2024-11-15T11:20:51.7576376+08:00;True|2024-11-15T11:11:17.5580168+08:00;True|2024-11-15T11:03:58.4142996+08:00;True|2024-11-15T10:44:50.5207827+08:00;True|2024-11-15T10:10:05.5550418+08:00;True|2024-11-15T09:49:30.6631382+08:00;False|2024-11-15T09:47:05.3973379+08:00;True|2024-11-14T18:31:54.8247681+08:00;True|2024-11-14T17:14:56.3660185+08:00;True|2024-11-14T16:49:44.7526912+08:00;True|2024-11-14T16:49:09.3427608+08:00;True|2024-11-14T15:59:00.2572264+08:00;True|2024-11-14T11:21:03.5110818+08:00;True|2024-11-14T10:51:10.7864658+08:00;False|2024-11-14T10:50:55.5384248+08:00;True|2024-11-14T10:29:13.6760158+08:00;False|2024-11-14T10:28:09.8622863+08:00;True|2024-11-13T17:48:46.4827219+08:00;True|2024-11-13T17:45:13.0659280+08:00;True|2024-11-13T16:01:55.2278671+08:00;False|2024-11-13T16:01:03.0040446+08:00;True|2024-11-12T17:24:06.3763535+08:00;True|2024-11-12T17:21:51.8459552+08:00;True|2024-11-12T17:11:57.9239909+08:00;True|2024-11-12T17:09:04.4322824+08:00;True|2024-11-12T17:07:12.1839548+08:00;True|2024-11-12T17:04:27.4579152+08:00;True|2024-11-12T17:03:59.6843282+08:00;True|2024-11-12T16:40:44.0714862+08:00;True|2024-11-12T16:36:27.7792764+08:00;True|2024-11-12T16:32:36.5262040+08:00;False|2024-11-12T16:32:23.9550194+08:00;True|2024-11-12T10:58:16.1987697+08:00;False|2024-11-12T10:58:04.8469631+08:00;True|2024-11-11T13:40:53.2582255+08:00;True|2024-11-11T13:37:45.0401833+08:00;True|2024-11-11T12:35:13.2429166+08:00;True|2024-11-11T11:27:29.0530688+08:00;False|2024-11-11T11:27:12.2765506+08:00;True|2024-11-08T15:52:17.1278870+08:00;False|2024-11-08T15:52:04.4379380+08:00;True|2024-11-07T18:27:41.8163960+08:00;False|2024-11-07T18:27:30.6037983+08:00;True|2024-11-06T15:55:27.6450488+08:00;True|2024-11-06T15:54:13.5957004+08:00;True|2024-11-06T15:25:33.3862531+08:00;True|2024-11-06T13:33:57.8502278+08:00;False|2024-11-06T13:33:39.2337086+08:00;True|2024-11-06T11:33:12.6755239+08:00;True|2024-11-05T18:34:17.7048247+08:00;True|2024-11-05T18:30:08.5724471+08:00;True|2024-11-05T18:24:35.5372980+08:00;True|2024-11-05T18:06:29.7644779+08:00;True|2024-11-05T17:53:50.9554703+08:00;True|2024-11-05T17:50:05.6376900+08:00;True|2024-11-05T11:13:46.2906508+08:00;True|2024-11-05T10:35:55.5423834+08:00;False|2024-11-05T10:35:20.4104039+08:00;True|2024-11-01T10:22:05.7636122+08:00;False|2024-11-01T10:21:33.2954398+08:00;True|2024-10-31T20:03:37.9075888+08:00;True|2024-10-31T18:35:31.6618415+08:00;True|2024-10-31T18:34:56.2479021+08:00;True|2024-10-31T09:43:29.0841188+08:00;False|2024-10-31T09:43:04.8780818+08:00;True|2024-10-30T18:42:11.0523067+08:00;True|2024-10-30T18:07:05.5603627+08:00;True|2024-10-30T18:03:15.3516621+08:00;True|2024-10-30T17:58:14.3276504+08:00;False|2024-10-30T17:57:44.5353118+08:00;True|2024-10-30T17:47:41.2889491+08:00;True|2024-10-30T17:19:36.6172721+08:00;True|2024-10-30T17:10:00.4399703+08:00;False|2024-10-30T17:08:57.6500450+08:00;True|2024-10-29T16:58:15.6006676+08:00;True|2024-10-29T16:51:56.8406649+08:00;True|2024-10-29T16:05:48.4297695+08:00;True|2024-10-29T15:12:15.1522377+08:00;True|2024-10-29T15:10:51.8431754+08:00;True|2024-10-29T11:21:01.5660940+08:00;False|2024-10-29T11:20:33.3958980+08:00;True|2024-10-28T17:51:26.7156861+08:00;False|2024-10-28T17:50:41.4388196+08:00;True|2024-10-28T13:34:14.8764262+08:00;True|2024-10-28T12:44:27.2083620+08:00;False|2024-10-28T12:43:57.5942717+08:00;True|2024-10-25T11:49:47.9817458+08:00;True|2024-10-25T11:49:34.4754546+08:00;True|2024-10-25T09:59:35.6471379+08:00;True|2024-10-25T09:47:46.8035540+08:00;True|2024-10-25T09:25:57.7872618+08:00;False|2024-10-25T09:25:30.0950732+08:00;True|2024-10-24T20:39:06.1992535+08:00;False|2024-10-24T20:38:33.1009731+08:00;True|2024-10-24T11:17:46.9974483+08:00;False|2024-10-24T11:17:17.0925356+08:00;True|2024-10-23T19:16:25.5189930+08:00;True|2024-10-23T17:10:44.4267777+08:00;False|2024-10-23T17:10:10.2947971+08:00;True|2024-10-23T14:13:22.6901287+08:00;False|2024-10-23T14:12:24.3997100+08:00;True|2024-10-22T16:25:12.9514711+08:00;False|2024-10-22T16:24:42.9025167+08:00;True|2024-10-22T10:22:33.9932601+08:00;False|2024-10-22T10:22:05.3030308+08:00;True|2024-10-21T17:53:29.9552741+08:00;True|2024-10-21T16:37:31.4159544+08:00;True|2024-10-21T16:35:43.6207036+08:00;True|2024-10-21T16:00:05.5040651+08:00;False|2024-10-21T15:59:35.9279259+08:00;True|2024-10-21T12:06:42.5768961+08:00;False|2024-10-21T12:06:16.6344662+08:00;True|2024-10-18T10:44:02.6495536+08:00;True|2024-10-18T09:55:47.9769914+08:00;True|2024-10-18T09:47:46.6365831+08:00;True|2024-10-18T09:46:40.4036657+08:00;True|2024-10-18T09:44:25.4598960+08:00;True|2024-10-18T09:30:07.6972377+08:00;False|2024-10-18T09:28:18.9251743+08:00;True|2024-10-17T12:13:34.8639685+08:00;True|2024-10-17T12:02:26.5251711+08:00;False|2024-10-17T12:01:31.3822430+08:00;True|2024-10-17T11:49:09.2395208+08:00;False|2024-10-17T11:48:38.0189241+08:00;True|2024-10-16T19:35:29.2047484+08:00;False|2024-10-16T19:32:43.0637947+08:00;True|2024-10-16T11:27:13.1263407+08:00;False|2024-10-16T11:25:49.8688677+08:00;True|2024-10-15T18:26:50.9948482+08:00;False|2024-10-15T18:26:23.6998750+08:00;True|2024-08-26T14:17:37.8502046+08:00;False|2024-08-26T14:16:09.8501361+08:00;True|2024-08-22T11:12:48.4249984+08:00;</History>
    <History>True|2024-12-11T00:58:41.4567855Z;False|2024-12-11T08:58:09.2160433+08:00;True|2024-12-10T17:25:49.3068154+08:00;True|2024-12-10T17:21:30.0155027+08:00;True|2024-12-10T17:16:56.7587487+08:00;False|2024-12-10T17:16:34.7816611+08:00;True|2024-12-10T16:55:40.3777585+08:00;False|2024-12-10T16:55:13.2621448+08:00;False|2024-12-09T13:59:27.6362265+08:00;True|2024-12-06T16:55:30.6422980+08:00;True|2024-12-06T15:08:49.5834939+08:00;True|2024-12-06T14:31:56.0968616+08:00;False|2024-12-06T14:31:44.2264009+08:00;True|2024-12-06T13:59:52.8150929+08:00;False|2024-12-06T13:48:22.6073939+08:00;True|2024-12-05T17:33:27.9247467+08:00;True|2024-12-05T17:30:23.1740838+08:00;False|2024-12-05T17:30:03.9977311+08:00;True|2024-12-04T15:18:41.4963816+08:00;True|2024-12-04T15:16:45.1121101+08:00;True|2024-12-04T15:14:33.5954776+08:00;True|2024-12-04T15:12:27.2913137+08:00;True|2024-12-04T14:10:19.6190673+08:00;False|2024-12-04T14:10:02.0319713+08:00;True|2024-12-03T16:08:46.6721098+08:00;True|2024-12-03T15:16:04.1754554+08:00;True|2024-12-03T15:13:25.4927626+08:00;True|2024-12-03T14:55:09.4413291+08:00;True|2024-12-03T14:43:11.8243897+08:00;True|2024-12-03T14:29:16.1511932+08:00;True|2024-12-03T14:24:07.9561838+08:00;False|2024-12-03T14:23:55.1293602+08:00;True|2024-12-02T16:31:22.0404862+08:00;False|2024-12-02T16:28:53.1721961+08:00;True|2024-12-02T15:41:24.9462025+08:00;True|2024-12-02T14:12:12.9356193+08:00;False|2024-12-02T14:11:35.7159488+08:00;True|2024-12-02T10:59:31.5582757+08:00;True|2024-11-29T12:08:55.4868083+08:00;False|2024-11-29T12:08:37.0353185+08:00;True|2024-11-28T10:47:27.2071355+08:00;False|2024-11-28T10:47:13.6670955+08:00;True|2024-11-27T15:21:57.6747082+08:00;False|2024-11-27T15:20:07.2403056+08:00;True|2024-11-27T15:13:36.1461091+08:00;True|2024-11-27T14:34:35.5908753+08:00;False|2024-11-27T14:33:30.7118923+08:00;True|2024-11-26T15:16:44.1854927+08:00;True|2024-11-26T15:14:33.4021067+08:00;False|2024-11-26T15:14:07.9955135+08:00;True|2024-11-26T14:48:35.6408418+08:00;True|2024-11-26T14:45:00.7251556+08:00;True|2024-11-26T14:04:58.4232988+08:00;False|2024-11-26T14:04:28.1286675+08:00;True|2024-11-25T13:45:07.6935933+08:00;True|2024-11-25T13:43:59.0788650+08:00;False|2024-11-25T13:43:44.2225194+08:00;True|2024-11-25T08:54:05.5144014+08:00;False|2024-11-25T08:53:49.2284063+08:00;False|2024-11-22T09:53:13.7879664+08:00;True|2024-11-21T13:48:31.7056264+08:00;True|2024-11-21T13:46:55.0891551+08:00;True|2024-11-21T13:44:05.5221110+08:00;True|2024-11-21T13:43:39.1385899+08:00;False|2024-11-21T13:43:19.9351488+08:00;True|2024-11-20T11:33:52.0324053+08:00;True|2024-11-20T11:20:58.4917889+08:00;True|2024-11-20T11:03:46.9552623+08:00;True|2024-11-20T10:45:10.9517109+08:00;False|2024-11-20T10:44:58.3221116+08:00;False|2024-11-19T15:39:27.3889104+08:00;True|2024-11-19T14:42:32.0854561+08:00;True|2024-11-19T14:19:19.6198070+08:00;True|2024-11-19T14:13:08.2003750+08:00;False|2024-11-19T14:12:15.5442850+08:00;True|2024-11-18T13:05:41.0455534+08:00;True|2024-11-18T11:05:30.2819404+08:00;True|2024-11-18T10:51:07.1852818+08:00;False|2024-11-18T10:50:21.5098527+08:00;True|2024-11-18T10:15:38.5429366+08:00;True|2024-11-18T10:00:51.0847524+08:00;True|2024-11-18T09:34:52.1772715+08:00;True|2024-11-18T09:27:23.6013754+08:00;False|2024-11-18T09:26:00.9323551+08:00;True|2024-11-15T11:20:51.7576376+08:00;True|2024-11-15T11:11:17.5580168+08:00;True|2024-11-15T11:03:58.4142996+08:00;True|2024-11-15T10:44:50.5207827+08:00;True|2024-11-15T10:10:05.5550418+08:00;True|2024-11-15T09:49:30.6631382+08:00;False|2024-11-15T09:47:05.3973379+08:00;True|2024-11-14T18:31:54.8247681+08:00;True|2024-11-14T17:14:56.3660185+08:00;True|2024-11-14T16:49:44.7526912+08:00;True|2024-11-14T16:49:09.3427608+08:00;True|2024-11-14T15:59:00.2572264+08:00;True|2024-11-14T11:21:03.5110818+08:00;True|2024-11-14T10:51:10.7864658+08:00;False|2024-11-14T10:50:55.5384248+08:00;True|2024-11-14T10:29:13.6760158+08:00;False|2024-11-14T10:28:09.8622863+08:00;True|2024-11-13T17:48:46.4827219+08:00;True|2024-11-13T17:45:13.0659280+08:00;True|2024-11-13T16:01:55.2278671+08:00;False|2024-11-13T16:01:03.0040446+08:00;True|2024-11-12T17:24:06.3763535+08:00;True|2024-11-12T17:21:51.8459552+08:00;True|2024-11-12T17:11:57.9239909+08:00;True|2024-11-12T17:09:04.4322824+08:00;True|2024-11-12T17:07:12.1839548+08:00;True|2024-11-12T17:04:27.4579152+08:00;True|2024-11-12T17:03:59.6843282+08:00;True|2024-11-12T16:40:44.0714862+08:00;True|2024-11-12T16:36:27.7792764+08:00;True|2024-11-12T16:32:36.5262040+08:00;False|2024-11-12T16:32:23.9550194+08:00;True|2024-11-12T10:58:16.1987697+08:00;False|2024-11-12T10:58:04.8469631+08:00;True|2024-11-11T13:40:53.2582255+08:00;True|2024-11-11T13:37:45.0401833+08:00;True|2024-11-11T12:35:13.2429166+08:00;True|2024-11-11T11:27:29.0530688+08:00;False|2024-11-11T11:27:12.2765506+08:00;True|2024-11-08T15:52:17.1278870+08:00;False|2024-11-08T15:52:04.4379380+08:00;True|2024-11-07T18:27:41.8163960+08:00;False|2024-11-07T18:27:30.6037983+08:00;True|2024-11-06T15:55:27.6450488+08:00;True|2024-11-06T15:54:13.5957004+08:00;True|2024-11-06T15:25:33.3862531+08:00;True|2024-11-06T13:33:57.8502278+08:00;False|2024-11-06T13:33:39.2337086+08:00;True|2024-11-06T11:33:12.6755239+08:00;True|2024-11-05T18:34:17.7048247+08:00;True|2024-11-05T18:30:08.5724471+08:00;True|2024-11-05T18:24:35.5372980+08:00;True|2024-11-05T18:06:29.7644779+08:00;True|2024-11-05T17:53:50.9554703+08:00;True|2024-11-05T17:50:05.6376900+08:00;True|2024-11-05T11:13:46.2906508+08:00;True|2024-11-05T10:35:55.5423834+08:00;False|2024-11-05T10:35:20.4104039+08:00;True|2024-11-01T10:22:05.7636122+08:00;False|2024-11-01T10:21:33.2954398+08:00;True|2024-10-31T20:03:37.9075888+08:00;True|2024-10-31T18:35:31.6618415+08:00;True|2024-10-31T18:34:56.2479021+08:00;True|2024-10-31T09:43:29.0841188+08:00;False|2024-10-31T09:43:04.8780818+08:00;True|2024-10-30T18:42:11.0523067+08:00;True|2024-10-30T18:07:05.5603627+08:00;True|2024-10-30T18:03:15.3516621+08:00;True|2024-10-30T17:58:14.3276504+08:00;False|2024-10-30T17:57:44.5353118+08:00;True|2024-10-30T17:47:41.2889491+08:00;True|2024-10-30T17:19:36.6172721+08:00;True|2024-10-30T17:10:00.4399703+08:00;False|2024-10-30T17:08:57.6500450+08:00;True|2024-10-29T16:58:15.6006676+08:00;True|2024-10-29T16:51:56.8406649+08:00;True|2024-10-29T16:05:48.4297695+08:00;True|2024-10-29T15:12:15.1522377+08:00;True|2024-10-29T15:10:51.8431754+08:00;True|2024-10-29T11:21:01.5660940+08:00;False|2024-10-29T11:20:33.3958980+08:00;True|2024-10-28T17:51:26.7156861+08:00;False|2024-10-28T17:50:41.4388196+08:00;True|2024-10-28T13:34:14.8764262+08:00;True|2024-10-28T12:44:27.2083620+08:00;False|2024-10-28T12:43:57.5942717+08:00;True|2024-10-25T11:49:47.9817458+08:00;True|2024-10-25T11:49:34.4754546+08:00;True|2024-10-25T09:59:35.6471379+08:00;True|2024-10-25T09:47:46.8035540+08:00;True|2024-10-25T09:25:57.7872618+08:00;False|2024-10-25T09:25:30.0950732+08:00;True|2024-10-24T20:39:06.1992535+08:00;False|2024-10-24T20:38:33.1009731+08:00;True|2024-10-24T11:17:46.9974483+08:00;False|2024-10-24T11:17:17.0925356+08:00;True|2024-10-23T19:16:25.5189930+08:00;True|2024-10-23T17:10:44.4267777+08:00;False|2024-10-23T17:10:10.2947971+08:00;True|2024-10-23T14:13:22.6901287+08:00;False|2024-10-23T14:12:24.3997100+08:00;True|2024-10-22T16:25:12.9514711+08:00;False|2024-10-22T16:24:42.9025167+08:00;True|2024-10-22T10:22:33.9932601+08:00;False|2024-10-22T10:22:05.3030308+08:00;True|2024-10-21T17:53:29.9552741+08:00;True|2024-10-21T16:37:31.4159544+08:00;True|2024-10-21T16:35:43.6207036+08:00;True|2024-10-21T16:00:05.5040651+08:00;False|2024-10-21T15:59:35.9279259+08:00;True|2024-10-21T12:06:42.5768961+08:00;False|2024-10-21T12:06:16.6344662+08:00;True|2024-10-18T10:44:02.6495536+08:00;True|2024-10-18T09:55:47.9769914+08:00;True|2024-10-18T09:47:46.6365831+08:00;True|2024-10-18T09:46:40.4036657+08:00;True|2024-10-18T09:44:25.4598960+08:00;True|2024-10-18T09:30:07.6972377+08:00;False|2024-10-18T09:28:18.9251743+08:00;True|2024-10-17T12:13:34.8639685+08:00;True|2024-10-17T12:02:26.5251711+08:00;False|2024-10-17T12:01:31.3822430+08:00;True|2024-10-17T11:49:09.2395208+08:00;False|2024-10-17T11:48:38.0189241+08:00;True|2024-10-16T19:35:29.2047484+08:00;False|2024-10-16T19:32:43.0637947+08:00;True|2024-10-16T11:27:13.1263407+08:00;False|2024-10-16T11:25:49.8688677+08:00;True|2024-10-15T18:26:50.9948482+08:00;False|2024-10-15T18:26:23.6998750+08:00;True|2024-08-26T14:17:37.8502046+08:00;False|2024-08-26T14:16:09.8501361+08:00;True|2024-08-22T11:12:48.4249984+08:00;</History>
  </PropertyGroup>
  <ItemGroup>
    <File Include="apiapp.json">
@@ -45,28 +45,28 @@
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>12/02/2024 16:31:07</publishTime>
      <publishTime>12/11/2024 08:58:23</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>12/02/2024 16:31:07</publishTime>
      <publishTime>12/11/2024 08:58:23</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>12/02/2024 16:31:05</publishTime>
      <publishTime>12/11/2024 08:58:21</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>12/02/2024 16:31:05</publishTime>
      <publishTime>12/11/2024 08:58:21</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
    </File>
    <File Include="bin/DBUtility.dll">
      <publishTime>12/02/2024 16:31:03</publishTime>
      <publishTime>12/11/2024 08:58:18</publishTime>
    </File>
    <File Include="bin/DBUtility.pdb">
      <publishTime>12/02/2024 16:31:03</publishTime>
      <publishTime>12/11/2024 08:58:18</publishTime>
    </File>
    <File Include="bin/Grpc.Core.Api.dll">
      <publishTime>03/22/2022 13:17:26</publishTime>
@@ -111,10 +111,10 @@
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>12/02/2024 16:31:03</publishTime>
      <publishTime>12/11/2024 08:58:18</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>12/02/2024 16:31:03</publishTime>
      <publishTime>12/11/2024 08:58:18</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>05/25/2024 09:46:41</publishTime>
@@ -147,34 +147,34 @@
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/Pub_Class.dll">
      <publishTime>12/02/2024 16:31:01</publishTime>
      <publishTime>12/11/2024 08:58:16</publishTime>
    </File>
    <File Include="bin/Pub_Class.pdb">
      <publishTime>12/02/2024 16:31:01</publishTime>
      <publishTime>12/11/2024 08:58:16</publishTime>
    </File>
    <File Include="bin/Pub_Control.dll">
      <publishTime>12/02/2024 16:31:02</publishTime>
      <publishTime>12/11/2024 08:58:17</publishTime>
    </File>
    <File Include="bin/Pub_Control.pdb">
      <publishTime>12/02/2024 16:31:02</publishTime>
      <publishTime>12/11/2024 08:58:17</publishTime>
    </File>
    <File Include="bin/RestSharp.dll">
      <publishTime>08/31/2012 06:22:50</publishTime>
    </File>
    <File Include="bin/SQLHelper.dll">
      <publishTime>12/02/2024 16:31:02</publishTime>
      <publishTime>12/11/2024 08:58:17</publishTime>
    </File>
    <File Include="bin/SQLHelper.pdb">
      <publishTime>12/02/2024 16:31:02</publishTime>
      <publishTime>12/11/2024 08:58:17</publishTime>
    </File>
    <File Include="bin/Swashbuckle.Core.dll">
      <publishTime>02/16/2015 01:57:08</publishTime>
    </File>
    <File Include="bin/SyntacticSugar.dll">
      <publishTime>12/02/2024 16:27:25</publishTime>
      <publishTime>12/11/2024 08:57:34</publishTime>
    </File>
    <File Include="bin/SyntacticSugar.pdb">
      <publishTime>12/02/2024 16:27:32</publishTime>
      <publishTime>12/11/2024 08:57:34</publishTime>
    </File>
    <File Include="bin/System.Buffers.dll">
      <publishTime>07/19/2017 18:01:28</publishTime>
@@ -285,19 +285,19 @@
      <publishTime>05/09/2023 10:43:40</publishTime>
    </File>
    <File Include="bin/TopSdk.dll">
      <publishTime>12/02/2024 16:27:07</publishTime>
      <publishTime>12/11/2024 08:57:37</publishTime>
    </File>
    <File Include="bin/TopSdk.pdb">
      <publishTime>12/02/2024 16:27:07</publishTime>
      <publishTime>12/11/2024 08:57:37</publishTime>
    </File>
    <File Include="bin/WebActivatorEx.dll">
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>12/06/2024 15:08:09</publishTime>
      <publishTime>12/11/2024 08:57:58</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>12/06/2024 15:08:09</publishTime>
      <publishTime>12/11/2024 08:57:58</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
@@ -492,7 +492,7 @@
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web.config">
      <publishTime>12/02/2024 16:31:20</publishTime>
      <publishTime>12/06/2024 16:55:28</publishTime>
    </File>
  </ItemGroup>
</Project>
WebAPI/WebAPI.csproj
@@ -827,6 +827,7 @@
    <Compile Include="Models\ClsSc_AssemblyBillSub.cs" />
    <Compile Include="Models\ClsSc_MESBeginWorkBillSub_RelationBill.cs" />
    <Compile Include="Models\Gy_MouldFileSub_SubMater.cs" />
    <Compile Include="Models\QC_OutCompCheckBillSub_ValueGrid.cs" />
    <Compile Include="Models\SBGL\SBBB\Sb_EquipMentCollectionTechParam_Temp.cs" />
    <Compile Include="Models\SBGL\SBBB\Sb_EquipMentCollectionTechParam.cs" />
    <Compile Include="Models\基础资料\Gy_ColorClass.cs" />
WebAPI/WebAPI.csproj.user
@@ -2,7 +2,14 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <NameOfLastUsedPublishProfile>C:\Users\86130\Desktop\智云迈思\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfilewtt.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\智云迈思\MES\MES-WEB-API\WebAPI\Properties\PublishProfiles\JFAPI.pubxml</NameOfLastUsedPublishProfile>
    <UseIISExpress>true</UseIISExpress>
    <Use64BitIISExpress />
    <IISExpressSSLPort />
    <IISExpressAnonymousAuthentication>enabled</IISExpressAnonymousAuthentication>
    <IISExpressWindowsAuthentication>disabled</IISExpressWindowsAuthentication>
    <IISExpressUseClassicPipelineMode>false</IISExpressUseClassicPipelineMode>
    <UseGlobalApplicationHostFile />
  </PropertyGroup>
  <ProjectExtensions>
    <VisualStudio>
sdk_dingding/TopSdk/obj/Debug/TopSdk.csproj.AssemblyReference.cache
Binary files differ