VueWebCoreApi/Tools/ImportExcelData.cs
@@ -626,7 +626,7 @@
                Message = "设备类型模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[1].Columns.Count != 6)
            else if (excelTable[1].Columns.Count != 5)
            {
                code = "301";
                Message = "设备清单模板不符合规范,请检查列名字段数";
@@ -662,7 +662,7 @@
                Message = "设备清单模板:表头信息不符合规范,第2列应为{*设备名称}";
                return Message;
            }
            else if (excelTable[1].Columns[2].ColumnName != "所属组织编码")
            else if (excelTable[1].Columns[2].ColumnName != "*所属组织编码")
            {
                code = "301";
                Message = "设备清单模板:表头信息不符合规范,第3列应为{*所属组织编码}";
@@ -674,16 +674,10 @@
                Message = "设备清单模板:表头信息不符合规范,第4列应为{*设备类型编码}";
                return Message;
            }
            else if (excelTable[1].Columns[4].ColumnName != "*启用日期")
            else if (excelTable[1].Columns[4].ColumnName != "*状态")
            {
                code = "301";
                Message = "设备清单模板:表头信息不符合规范,第5列应为{*启用日期}";
                return Message;
            }
            else if (excelTable[1].Columns[5].ColumnName != "*状态")
            {
                code = "301";
                Message = "设备清单模板:表头信息不符合规范,第6列应为{*状态}";
                Message = "设备清单模板:表头信息不符合规范,第5列应为{*状态}";
                return Message;
            }
            else
@@ -1039,52 +1033,83 @@
        }
        #endregion
        #region【Excel模板上传验证,工装清单模板】
        public static string Twelve(string FileCode, out string code)
        #region【Excel模板上传验证,模具清单模板】
        public static string Twelve(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            DataTable excelTable = new DataTable();
            excelTable = ImportExcel.ExcelToTable(FileCode);
            if (excelTable.Columns.Count != 7)
            if (excelTable.Count != 2)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable.Columns[0].ColumnName != "序号")
            else if (excelTable[0].Columns.Count != 7)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable.Columns[1].ColumnName != "工装编号(唯一)")
            else if (excelTable[1].Columns.Count != 2)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具关联产品模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable.Columns[2].ColumnName != "工装名称(唯一)")
            else if (excelTable[0].Columns[0].ColumnName != "*模具编号(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第1列应为{*模具编号(唯一)}";
                return Message;
            }
            else if (excelTable.Columns[3].ColumnName != "工装类型")
            else if (excelTable[0].Columns[1].ColumnName != "*模具名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第2列应为{*模具名称}";
                return Message;
            }
            else if (excelTable.Columns[4].ColumnName != "型腔数量")
            else if (excelTable[0].Columns[2].ColumnName != "规格型号")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第3列应为{规格型号}";
                return Message;
            }
            else if (excelTable.Columns[5].ColumnName != "理论寿命(次)")
            else if (excelTable[0].Columns[3].ColumnName != "*状态")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第4列应为{*状态}";
                return Message;
            }
            else if (excelTable.Columns[6].ColumnName != "使用状态")
            else if (excelTable[0].Columns[4].ColumnName != "*仓库编码")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第5列应为{*仓库编码}";
                return Message;
            }
            else if (excelTable[0].Columns[5].ColumnName != "预计寿命(次)")
            {
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第6列应为{预计寿命(次)}";
                return Message;
            }
            else if (excelTable[0].Columns[6].ColumnName != "剩余寿命(次)")
            {
                code = "301";
                Message = "模具清单模板:表头信息不符合规范,第7列应为{剩余寿命(次)}";
                return Message;
            }
            else if (excelTable[1].Columns[0].ColumnName != "模具编码")
            {
                code = "301";
                Message = "模具关联产品模板:表头信息不符合规范,第1列应为{模具编码}";
                return Message;
            }
            else if (excelTable[1].Columns[1].ColumnName != "产品编码")
            {
                code = "301";
                Message = "模具关联产品模板:表头信息不符合规范,第2列应为{产品编码}";
                return Message;
            }
            else
            {
@@ -1095,82 +1120,41 @@
        }
        #endregion
        #region【Excel模板上传验证,工装点检模板】
        public static string Thirteen(string FileCode, out string code)
        #region【Excel模板上传验证,模具点检项模板】
        public static string Thirteen(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            List<DataTable> excelTable = new List<DataTable>();
            excelTable = ImportExcel.ExcelToTableList(FileCode);
            if (excelTable.Count != 2)
            if (excelTable.Count != 1)
            {
                code = "300";
                Message = "模板不符合规范,缺失的Sheet";
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable[0].Columns.Count != 3)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名字段数";
                code = "301";
                Message = "模具点检项目模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[1].Columns.Count != 8)
            else if (excelTable[0].Columns[0].ColumnName != "*点检项目编号(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名字段数";
                code = "301";
                Message = "模具点检项目模板:表头信息不符合规范,第1列应为{*点检项目编号(唯一)}";
                return Message;
            }
            else if (excelTable[0].Columns[0].ColumnName != "序号")
            else if (excelTable[0].Columns[1].ColumnName != "*点检项目名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具点检项目模板:表头信息不符合规范,第2列应为{*点检项目名称}";
                return Message;
            }
            else if (excelTable[0].Columns[1].ColumnName != "点检标准(唯一)")
            else if (excelTable[0].Columns[2].ColumnName != "要求描述")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[0].Columns[2].ColumnName != "标准名称(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[0].ColumnName != "序号")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[1].ColumnName != "点检标准")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[2].ColumnName != "标准名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[3].ColumnName != "SEQ(部位顺序)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[4].ColumnName != "部位条码(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[5].ColumnName != "部位名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[6].ColumnName != "点检要求")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
            }
            else if (excelTable[1].Columns[7].ColumnName != "点检周期")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具点检项目模板:表头信息不符合规范,第3列应为{要求描述}";
                return Message;
            }
            else
            {
@@ -1181,82 +1165,203 @@
        }
        #endregion
        #region【Excel模板上传验证,工装保养模板】
        public static string Fourteen(string FileCode, out string code)
        #region【Excel模板上传验证,模具点检标准模板】
        public static string Thirteen_one(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            List<DataTable> excelTable = new List<DataTable>();
            excelTable = ImportExcel.ExcelToTableList(FileCode);
            if (excelTable.Count != 2)
            {
                code = "300";
                Message = "模板不符合规范,缺失的Sheet";
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable[0].Columns.Count != 3)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名字段数";
                code = "301";
                Message = "模具点检标准模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[1].Columns.Count != 8)
            else if (excelTable[1].Columns.Count != 5)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名字段数";
                code = "301";
                Message = "关联模具点检部位模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[0].Columns[0].ColumnName != "序号")
            else if (excelTable[0].Columns[0].ColumnName != "*模具点检标准编号(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具点检标准模板:表头信息不符合规范,第1列应为{*模具点检标准编号(唯一)}";
                return Message;
            }
            else if (excelTable[0].Columns[1].ColumnName != "保养标准(唯一)")
            else if (excelTable[0].Columns[1].ColumnName != "*模具点检标准名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具点检标准模板:表头信息不符合规范,第2列应为{*模具点检标准名称}";
                return Message;
            }
            else if (excelTable[0].Columns[2].ColumnName != "标准名称(唯一)")
            else if (excelTable[0].Columns[2].ColumnName != "标准描述")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具点检标准模板:表头信息不符合规范,第3列应为{标准描述}";
                return Message;
            }
            else if (excelTable[1].Columns[0].ColumnName != "序号")
            else if (excelTable[1].Columns[0].ColumnName != "*模具点检标准编号")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "关联模具点检部位模板:表头信息不符合规范,第1列应为{*模具点检标准编号}";
                return Message;
            }
            else if (excelTable[1].Columns[1].ColumnName != "保养标准")
            else if (excelTable[1].Columns[1].ColumnName != "*点检项序号")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "关联模具点检部位模板:表头信息不符合规范,第2列应为{*点检项序号}";
                return Message;
            }
            else if (excelTable[1].Columns[2].ColumnName != "标准名称")
            else if (excelTable[1].Columns[2].ColumnName != "*模具点检项编号(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "关联模具点检部位模板:表头信息不符合规范,第3列应为{*模具点检项编号(唯一)}";
                return Message;
            }
            else if (excelTable[1].Columns[3].ColumnName != "SEQ(部位顺序)")
            else if (excelTable[1].Columns[3].ColumnName != "*模具点检项名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "关联模具点检部位模板:表头信息不符合规范,第4列应为{*模具点检项名称}";
                return Message;
            }
            else if (excelTable[1].Columns[4].ColumnName != "部位条码(唯一)")
            else if (excelTable[1].Columns[4].ColumnName != "点检项要求")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "关联模具点检部位模板:表头信息不符合规范,第5列应为{点检项要求}";
                return Message;
            }
            else if (excelTable[1].Columns[5].ColumnName != "部位名称")
            else
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "200";
                Message = "模板检验通过";
            }
            else if (excelTable[1].Columns[6].ColumnName != "保养要求")
            return Message;
        }
        #endregion
        #region【Excel模板上传验证,模具保养项模板】
        public static string Fourteen(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            if (excelTable.Count != 1)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable[1].Columns[7].ColumnName != "保养等级")
            else if (excelTable[0].Columns.Count != 3)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "模具保养项目模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[0].Columns[0].ColumnName != "*保养项目编号(唯一)")
            {
                code = "301";
                Message = "模具保养项目模板:表头信息不符合规范,第1列应为{*保养项目编号(唯一)}";
                return Message;
            }
            else if (excelTable[0].Columns[1].ColumnName != "*保养项目名称")
            {
                code = "301";
                Message = "模具保养项目模板:表头信息不符合规范,第2列应为{*保养项目名称}";
                return Message;
            }
            else if (excelTable[0].Columns[2].ColumnName != "要求描述")
            {
                code = "301";
                Message = "模具保养项目模板:表头信息不符合规范,第3列应为{要求描述}";
                return Message;
            }
            else
            {
                code = "200";
                Message = "模板检验通过";
            }
            return Message;
        }
        #endregion
        #region【Excel模板上传验证,模具保养标准模板】
        public static string Fourteen_one(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            if (excelTable.Count != 2)
            {
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable[0].Columns.Count != 3)
            {
                code = "301";
                Message = "模具保养标准模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[1].Columns.Count != 5)
            {
                code = "301";
                Message = "关联模具保养部位模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable[0].Columns[0].ColumnName != "*模具保养标准编号(唯一)")
            {
                code = "301";
                Message = "模具保养标准模板:表头信息不符合规范,第1列应为{*模具保养标准编号(唯一)}";
                return Message;
            }
            else if (excelTable[0].Columns[1].ColumnName != "*模具保养标准名称")
            {
                code = "301";
                Message = "模具保养标准模板:表头信息不符合规范,第2列应为{*模具保养标准名称}";
                return Message;
            }
            else if (excelTable[0].Columns[2].ColumnName != "标准描述")
            {
                code = "301";
                Message = "模具保养标准模板:表头信息不符合规范,第3列应为{标准描述}";
                return Message;
            }
            else if (excelTable[1].Columns[0].ColumnName != "*模具保养标准编号")
            {
                code = "301";
                Message = "关联模具保养部位模板:表头信息不符合规范,第1列应为{*模具保养标准编号}";
                return Message;
            }
            else if (excelTable[1].Columns[1].ColumnName != "*保养项序号")
            {
                code = "301";
                Message = "关联模具保养部位模板:表头信息不符合规范,第2列应为{*保养项序号}";
                return Message;
            }
            else if (excelTable[1].Columns[2].ColumnName != "*模具保养项编号(唯一)")
            {
                code = "301";
                Message = "关联模具保养部位模板:表头信息不符合规范,第3列应为{*模具保养项编号(唯一)}";
                return Message;
            }
            else if (excelTable[1].Columns[3].ColumnName != "*模具保养项名称")
            {
                code = "301";
                Message = "关联模具保养部位模板:表头信息不符合规范,第4列应为{*模具保养项名称}";
                return Message;
            }
            else if (excelTable[1].Columns[4].ColumnName != "保养项要求")
            {
                code = "301";
                Message = "关联模具保养部位模板:表头信息不符合规范,第5列应为{保养项要求}";
                return Message;
            }
            else
            {
@@ -1268,36 +1373,52 @@
        #endregion
        #region【Excel模板上传验证,工序定义模板】
        public static string Fifteen(string FileCode, out string code)
        public static string Fifteen(List<DataTable> excelTable, out string code)
        {
            string Message = "";
            code = "";
            DataTable excelTable = new DataTable();
            excelTable = ImportExcel.ExcelToTable(FileCode);
            if (excelTable.Columns.Count != 4)
            if (excelTable.Count != 1)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "导入模板不符合规范,请检查sheet数";
                return Message;
            }
            else if (excelTable.Columns[0].ColumnName != "序号")
            else if (excelTable[0].Columns.Count != 5)
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "工序设置模板不符合规范,请检查列名字段数";
                return Message;
            }
            else if (excelTable.Columns[1].ColumnName != "工序编码(唯一)")
            else if (excelTable[0].Columns[0].ColumnName != "*工序编号(唯一)")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "工序设置模板:表头信息不符合规范,第1列应为{*工序编号(唯一)}";
                return Message;
            }
            else if (excelTable.Columns[2].ColumnName != "工序名称(唯一)")
            else if (excelTable[0].Columns[1].ColumnName != "*工序名称")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "工序设置模板:表头信息不符合规范,第2列应为{*工序名称}";
                return Message;
            }
            else if (excelTable.Columns[3].ColumnName != "启用状态")
            else if (excelTable[0].Columns[2].ColumnName != "*工序类型")
            {
                code = "300";
                Message = "模板不符合规范,请检查列名";
                code = "301";
                Message = "工序设置模板:表头信息不符合规范,第3列应为{*工序类型}";
                return Message;
            }
            else if (excelTable[0].Columns[3].ColumnName != "*状态")
            {
                code = "301";
                Message = "工序设置模板:表头信息不符合规范,第1列应为{*状态}";
                return Message;
            }
            else if (excelTable[0].Columns[4].ColumnName != "描述")
            {
                code = "301";
                Message = "工序设置模板:表头信息不符合规范,第2列应为{描述}";
                return Message;
            }
            else
            {
@@ -3289,58 +3410,513 @@
        }
        #endregion
        #region【Excel上传数据验证,工装清单】
        public static List<ExcelErro> TwelveData(string FileCode, out string StuCode, out string message, out int count)
        #region【Excel上传数据验证,模具清单】
        public static List<ExcelErro> TwelveData(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            DataTable dt;
            var dynamicParams = new DynamicParameters();
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //模具表
            for (int k = 0; k < excelTable[0].Rows.Count; k++)
            {
                if (excelTable[0].Rows[k][0].ToString().Trim() != null && excelTable[0].Rows[k][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldInfo where code=@code";
                    dynamicParams.Add("@code", excelTable[0].Rows[k][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具编号(唯一)}";
                        erro.ErrorCont = "模具表:{*模具编号(唯一)}字段" + excelTable[0].Rows[k][0].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
                if (excelTable[0].Rows[k][1].ToString().Trim() != null && excelTable[0].Rows[k][1].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldInfo where name=@name";
                    dynamicParams.Add("@name", excelTable[0].Rows[k][1].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具名称}";
                        erro.ErrorCont = "模具表:{*模具名称}字段" + excelTable[0].Rows[k][1].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
            }
            //模具关联产品表
            for (int j = 0; j < excelTable[1].Rows.Count; j++)
            {
                if (excelTable[1].Rows[j][1].ToString().Trim() != null && excelTable[1].Rows[j][1].ToString().Trim() != "")
                {
                    sql = @"select *  from TMateriel_Info where partcode=@partcode";
                    dynamicParams.Add("@partcode", excelTable[1].Rows[j][1].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count<= 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{产品编码}";
                        erro.ErrorCont = "模具关联产品表:{产品编码}字段" + excelTable[1].Rows[j][1].ToString().Trim() + "不存在";
                        list.Add(erro);
                    }
                }
            }
            //判断模具关联产品表是否有数据
            if (excelTable[1].Rows.Count > 0)
            {
                //判断子表外键不存在于主表主键中的数据
                var dt3 = from r in excelTable[1].AsEnumerable()
                          where !(
                              from rr in excelTable[0].AsEnumerable()
                              select rr.Field<string>("*模具编号(唯一)")
                          ).Contains(r.Field<string>("模具编码"))
                          select r;
                List<DataRow> listRow = dt3.ToList();
                if (listRow.Count > 0)
                {
                    ExcelErro erro = new ExcelErro();
                    erro.RoeNumber = "/";
                    erro.ErrorField = "{模具编码}";
                    erro.ErrorCont = "模具关联产品表:{模具编码}字段中有值在模具清单表:{*模具编号(唯一)}中不存在";
                    list.Add(erro);
                }
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count + excelTable[1].Rows.Count;
            }
            return list;
        }
        #endregion
        #region【Excel上传数据验证,工装点检】
        public static List<ExcelErro> ThirteenData(string FileCode, out string StuCode, out string message, out int count)
        #region【Excel上传数据验证,模具点检项目】
        public static List<ExcelErro> ThirteenData(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            var dynamicParams = new DynamicParameters();
            DataTable dt;
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //模具点检项目表
            for (int k = 0; k < excelTable[0].Rows.Count; k++)
            {
                if (excelTable[0].Rows[k][0].ToString().Trim() != null && excelTable[0].Rows[k][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldchk_Item where code=@code";
                    dynamicParams.Add("@code", excelTable[0].Rows[k][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*点检项目编号(唯一)}";
                        erro.ErrorCont = "模具点检项目:{*点检项目编号(唯一)}字段" + excelTable[0].Rows[k][0].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
                if (excelTable[0].Rows[k][1].ToString().Trim() != null && excelTable[0].Rows[k][1].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldchk_Item where name=@name";
                    dynamicParams.Add("@name", excelTable[0].Rows[k][1].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*点检项目名称}";
                        erro.ErrorCont = "模具点检项目表:{*点检项目名称}字段" + excelTable[0].Rows[k][1].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count;
            }
            return list;
        }
        #endregion
        #region【Excel上传数据验证,工装保养】
        public static List<ExcelErro> FourteenData(string FileCode, out string StuCode, out string message, out int count)
        #region【Excel上传数据验证,模具点检标准】
        public static List<ExcelErro> Thirteen_oneData(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            var dynamicParams = new DynamicParameters();
            DataTable dt;
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //模具点检标准表是否已存在点检标准
            for (int j = 0; j < excelTable[0].Rows.Count; j++)
            {
                if (excelTable[0].Rows[j][0].ToString().Trim() != null && excelTable[0].Rows[j][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldchk_Main where code=@code";
                    dynamicParams.Add("@code", excelTable[0].Rows[j][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具点检标准编号(唯一)}";
                        erro.ErrorCont = "模具点检标准表:{*模具点检标准编号(唯一)}字段" + excelTable[0].Rows[j][0].ToString().Trim() + "在数据表中已存在";
                        list.Add(erro);
                    }
                    //通过模具点检标准页签模板中的标准编码查询模具点检项页签模板中对应的数据信息
                    var var_dtTable = excelTable[1].AsEnumerable().Where<DataRow>(W => W["*模具点检标准编号"].ToString() == excelTable[0].Rows[j][0].ToString().Trim());
                    DataTable ds = var_dtTable.Any() ? var_dtTable.CopyToDataTable() : excelTable[1].Clone();
                    if (ds.Rows.Count > 0)
                    {
                        //判断点检标准查询点检项数据是否有重复
                        DataTable distinct1 = ds.DefaultView.ToTable(true, "*模具点检项编号(唯一)");
                        if (distinct1.Rows.Count != ds.Rows.Count)
                        {
                            ExcelErro erro = new ExcelErro();
                            erro.RoeNumber = "/";
                            erro.ErrorField = "{*模具点检项编号(唯一)}";
                            erro.ErrorCont = "模具点检项页签模板:{*模具点检标准编号}:" + excelTable[1].Rows[j][0].ToString().Trim() + " 对应{*模具点检项编号(唯一)}有重复";
                            list.Add(erro);
                        }
                    }
                    else
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具点检项编号(唯一)}";
                        erro.ErrorCont = "模具点检项页签模板:{*模具点检标准编号}:" + excelTable[1].Rows[j][0].ToString().Trim() + " 在模具点检标准页签模板中不存在";
                        list.Add(erro);
                    }
                }
            }
            //当前Excel数据中点检项页签中,模具点检项编号(唯一)在模具点检部位表中是否存在
            for (int k = 0; k < excelTable[1].Rows.Count; k++)
            {
                if (excelTable[1].Rows[k][2].ToString().Trim() != null && excelTable[1].Rows[k][2].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldchk_Item where code=@code";
                    dynamicParams.Add("@code", excelTable[1].Rows[k][2].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count < 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具点检项编号(唯一)}";
                        erro.ErrorCont = "模具点检部位表:{*模具点检项编号(唯一)}字段" + excelTable[1].Rows[k][2].ToString().Trim() + "在数据表中不存在";
                        list.Add(erro);
                    }
                }
            }
            //判断子表外键不存在于主表主键中的数据
            var dt3 = from r in excelTable[1].AsEnumerable()
                      where !(
                          from rr in excelTable[0].AsEnumerable()
                          select rr.Field<string>("*模具点检标准编号(唯一)")
                      ).Contains(r.Field<string>("*模具点检标准编号"))
                      select r;
            List<DataRow> listRow = dt3.ToList();
            if (listRow.Count > 0)
            {
                ExcelErro erro = new ExcelErro();
                erro.RoeNumber = "/";
                erro.ErrorField = "{*模具点检标准编号}";
                erro.ErrorCont = "模具点检项页签模板:{*模具点检标准编号}字段中有值在模具点检标准页签模板:{*模具点检标准编号(唯一)}中不存在";
                list.Add(erro);
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count + excelTable[1].Rows.Count;
            }
            return list;
        }
        #endregion
        #region【Excel上传数据验证,模具保养项目】
        public static List<ExcelErro> FourteenData(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            var dynamicParams = new DynamicParameters();
            DataTable dt;
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //模具保养项目表
            for (int k = 0; k < excelTable[0].Rows.Count; k++)
            {
                if (excelTable[0].Rows[k][0].ToString().Trim() != null && excelTable[0].Rows[k][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldmai_Item where code=@code";
                    dynamicParams.Add("@code", excelTable[0].Rows[k][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*保养项目编号(唯一)}";
                        erro.ErrorCont = "模具保养项目:{*保养项目编号(唯一)}字段" + excelTable[0].Rows[k][0].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
                if (excelTable[0].Rows[k][1].ToString().Trim() != null && excelTable[0].Rows[k][1].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldmai_Item where name=@name";
                    dynamicParams.Add("@name", excelTable[0].Rows[k][1].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*保养项目名称}";
                        erro.ErrorCont = "模具保养项目表:{*保养项目名称}字段" + excelTable[0].Rows[k][1].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count;
            }
            return list;
        }
        #endregion
        #region【Excel上传数据验证,模具保养标准】
        public static List<ExcelErro> FourteenData_one(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            var dynamicParams = new DynamicParameters();
            DataTable dt;
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //模具保养标准表是否已存在保养标准
            for (int j = 0; j < excelTable[0].Rows.Count; j++)
            {
                if (excelTable[0].Rows[j][0].ToString().Trim() != null && excelTable[0].Rows[j][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldmai_Main where code=@code";
                    dynamicParams.Add("@code", excelTable[0].Rows[j][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具保养标准编号(唯一)}";
                        erro.ErrorCont = "模具保养标准表:{*模具保养标准编号(唯一)}字段" + excelTable[0].Rows[j][0].ToString().Trim() + "在数据表中已存在";
                        list.Add(erro);
                    }
                    //通过模具保养标准页签模板中的标准编码查询模具保养项页签模板中对应的数据信息
                    var var_dtTable = excelTable[1].AsEnumerable().Where<DataRow>(W => W["*模具保养标准编号"].ToString() == excelTable[0].Rows[j][0].ToString().Trim());
                    DataTable ds = var_dtTable.Any() ? var_dtTable.CopyToDataTable() : excelTable[1].Clone();
                    if (ds.Rows.Count > 0)
                    {
                        //判断保养标准查询保养项数据是否有重复
                        DataTable distinct1 = ds.DefaultView.ToTable(true, "*模具保养项编号(唯一)");
                        if (distinct1.Rows.Count != ds.Rows.Count)
                        {
                            ExcelErro erro = new ExcelErro();
                            erro.RoeNumber = "/";
                            erro.ErrorField = "{*模具保养项编号(唯一)}";
                            erro.ErrorCont = "模具保养项页签模板:{*模具保养标准编号}:" + excelTable[1].Rows[j][0].ToString().Trim() + " 对应{*模具保养项编号(唯一)}有重复";
                            list.Add(erro);
                        }
                    }
                    else
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具保养项编号(唯一)}";
                        erro.ErrorCont = "模具保养项页签模板:{*模具保养标准编号}:" + excelTable[1].Rows[j][0].ToString().Trim() + " 在模具保养标准页签模板中不存在";
                        list.Add(erro);
                    }
                }
            }
            //当前Excel数据中保养项页签中,模具保养项编号(唯一)在模具保养部位表中是否存在
            for (int k = 0; k < excelTable[1].Rows.Count; k++)
            {
                if (excelTable[1].Rows[k][2].ToString().Trim() != null && excelTable[1].Rows[k][2].ToString().Trim() != "")
                {
                    sql = @"select *  from TMouldmai_Item where code=@code";
                    dynamicParams.Add("@code", excelTable[1].Rows[k][2].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count < 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*模具保养项编号(唯一)}";
                        erro.ErrorCont = "模具保养部位表:{*模具保养项编号(唯一)}字段" + excelTable[1].Rows[k][2].ToString().Trim() + "在数据表中不存在";
                        list.Add(erro);
                    }
                }
            }
            //判断子表外键不存在于主表主键中的数据
            var dt3 = from r in excelTable[1].AsEnumerable()
                      where !(
                          from rr in excelTable[0].AsEnumerable()
                          select rr.Field<string>("*模具保养标准编号(唯一)")
                      ).Contains(r.Field<string>("*模具保养标准编号"))
                      select r;
            List<DataRow> listRow = dt3.ToList();
            if (listRow.Count > 0)
            {
                ExcelErro erro = new ExcelErro();
                erro.RoeNumber = "/";
                erro.ErrorField = "{*模具保养标准编号}";
                erro.ErrorCont = "模具保养项页签模板:{*模具保养标准编号}字段中有值在模具保养标准页签模板:{*模具保养标准编号(唯一)}中不存在";
                list.Add(erro);
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count + excelTable[1].Rows.Count;
            }
            return list;
        }
        #endregion
        #region【Excel上传数据验证,工序定义】
        public static List<ExcelErro> FifteenData(string FileCode, out string StuCode, out string message, out int count)
        public static List<ExcelErro> FifteenData(List<DataTable> excelTable, out string StuCode, out string message, out int count)
        {
            message = "";
            StuCode = "";
            count = 0;
            string sql = "";
            var dynamicParams = new DynamicParameters();
            DataTable dt;
            List<ExcelErro> list = new List<ExcelErro>();
            list = ImportExcel.InportExcelToTableListErro(excelTable);    //验证Excel数据必填字段是否为空、唯一字段是否重复
            //工序表
            for (int k = 0; k < excelTable[0].Rows.Count; k++)
            {
                if (excelTable[0].Rows[k][0].ToString().Trim() != null && excelTable[0].Rows[k][0].ToString().Trim() != "")
                {
                    sql = @"select *  from TStep where stepcode=@stepcode";
                    dynamicParams.Add("@stepcode", excelTable[0].Rows[k][0].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*工序编号(唯一)}";
                        erro.ErrorCont = "工序表:{*工序编号(唯一)}字段" + excelTable[0].Rows[k][0].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
                if (excelTable[0].Rows[k][1].ToString().Trim() != null && excelTable[0].Rows[k][1].ToString().Trim() != "")
                {
                    sql = @"select *  from TStep where stepname=@stepname";
                    dynamicParams.Add("@stepname", excelTable[0].Rows[k][1].ToString().Trim());
                    dt = DapperHelper.selectdata(sql, dynamicParams);
                    if (dt.Rows.Count > 0)
                    {
                        ExcelErro erro = new ExcelErro();
                        erro.RoeNumber = "/";
                        erro.ErrorField = "{*工序名称}";
                        erro.ErrorCont = "工序表:{*工序名称}字段" + excelTable[0].Rows[k][1].ToString().Trim() + "已存在";
                        list.Add(erro);
                    }
                }
            }
            if (list.Count > 0)
            {
                int index = 0;
                foreach (ExcelErro item in list)
                {
                    index++;
                    item.Seq = index.ToString();
                }
                StuCode = "301";
                message = "数据验证失败";
            }
            else
            {
                StuCode = "200";
                message = "数据验证成功";
                count = excelTable[0].Rows.Count;
            }
            return list;
        }
        #endregion
@@ -4408,15 +4984,15 @@
                            name = excelTable[0].Rows[k][1].ToString().Trim(),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString(),
                            idparent = excelTable[0].Rows[k][2].ToString().Trim()
                            remark = excelTable[0].Rows[k][2].ToString().Trim()
                        }
                    });
                }
                //导入设备
                for (int i = 0; i < excelTable[1].Rows.Count; i++)
                {
                    sql = @"insert into TEqpInfo(code,name,torg_code,eqptype_code,input_date,operation_ration,enable,opc_uom,lm_user,lm_date)
                            values(@code,@name,@torg_code,@eqptype_code,@input_date,@operation_ration,@enable,@opc_uom,@lm_user,@lm_date)";
                    sql = @"insert into TEqpInfo(code,name,torg_code,eqptype_code,operation_ration,enable,opc_uom,lm_user,lm_date)
                            values(@code,@name,@torg_code,@eqptype_code,@operation_ration,@enable,@opc_uom,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
@@ -4426,9 +5002,8 @@
                            name = excelTable[1].Rows[i][1].ToString().Trim(),
                            torg_code = excelTable[1].Rows[i][2].ToString().Trim(),
                            eqptype_code = excelTable[1].Rows[i][3].ToString().Trim(),
                            input_date = excelTable[1].Rows[i][4].ToString().Trim(),
                            operation_ration = "100",
                            enable = excelTable[1].Rows[i][5].ToString().Trim(),
                            enable = excelTable[1].Rows[i][4].ToString().Trim(),
                            opc_uom = "台",
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
@@ -4804,14 +5379,68 @@
        }
        #endregion
        #region【Excel数据上传,工装清单】
        public static string TwelveSubmit(string FileCode, string User, out string StuCode)
        #region【Excel数据上传,模具清单】
        public static string TwelveSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入模具清单
                for (int k = 0; k < excelTable[0].Rows.Count; k++)
                {
                    sql = @"insert into TMouldInfo(code,name,spec,status,usestatus,warehousecode,surp_life,resi_life,lm_user,lm_date)
                               values(@code,@name,@spec,@status,@usestatus,@warehousecode,@surp_life,@resi_life,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            code = excelTable[0].Rows[k][0].ToString().Trim(),
                            name = excelTable[0].Rows[k][1].ToString().Trim(),
                            spec = excelTable[0].Rows[k][2].ToString().Trim(),
                            status = excelTable[0].Rows[k][3].ToString().Trim()=="正常"?"Y":"N",
                            usestatus = "0",//使用状态:在库/出库/上机/下机/维修/外借(0,1,2,3,4,5)
                            warehousecode = excelTable[0].Rows[k][4].ToString().Trim(),
                            surp_life =decimal.Parse(excelTable[0].Rows[k][5].ToString().Trim()),
                            resi_life = decimal.Parse(excelTable[0].Rows[k][6].ToString().Trim()),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                }
                //写入模具关联产品表
                for (int i = 0; i < excelTable[1].Rows.Count; i++)
                {
                    sql = @"insert into TMouldInfoPart(mouldcode,partcode,lm_user,lm_date)
                               values(@mouldcode,@partcode,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            mouldcode = excelTable[1].Rows[i][0].ToString().Trim(),
                            partcode = excelTable[1].Rows[i][1].ToString().Trim(),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {
@@ -4822,14 +5451,46 @@
        }
        #endregion
        #region【Excel数据上传,工装点检】
        public static string ThirteenSubmit(string FileCode, string User, out string StuCode)
        #region【Excel数据上传,模具点检项目】
        public static string ThirteenSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入模具点检项目表
                for (int i = 0; i < excelTable[0].Rows.Count; i++)
                {
                    sql = @"insert into TMouldchk_Item(code,name,description,lm_user,lm_date)
                            values(@code,@name,@description,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            code = excelTable[0].Rows[i][0].ToString().Trim(),
                            name = excelTable[0].Rows[i][1].ToString().Trim(),
                            description = excelTable[0].Rows[i][2].ToString().Trim(),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {
@@ -4840,14 +5501,186 @@
        }
        #endregion
        #region【Excel数据上传,工装保养】
        public static string FourteenSubmit(string FileCode, string User, out string StuCode)
        #region【Excel数据上传,模具点检标准】
        public static string Thirteen_oneSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入模具点检标准主表
                for (int k = 0; k < excelTable[0].Rows.Count; k++)
                {
                    sql = @"insert into TMouldchk_Main(code,name,description,lm_user,lm_date)
                            values(@code,@name,@description,@Operator,@CreateDate)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            code = excelTable[0].Rows[k][0].ToString().Trim(),
                            name = excelTable[0].Rows[k][1].ToString().Trim(),
                            description = excelTable[0].Rows[k][2].ToString().Trim(),
                            CreateDate = DateTime.Now.ToString(),
                            Operator = us.usercode
                        }
                    });
                }
                //导入模具点检标准关联点检项子表
                for (int i = 0; i < excelTable[1].Rows.Count; i++)
                {
                    sql = @"insert into TMouldchk_Deta(seq,code,name,mouldchk_main_code,chkdesc,lm_user,lm_date)
                            values(@seq,@code,@name,@mouldchk_main_code,@description,@Operator,@CreateDate)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            seq = excelTable[1].Rows[i][1].ToString().Trim(),
                            code = excelTable[1].Rows[i][2].ToString().Trim(),
                            name = excelTable[1].Rows[i][3].ToString().Trim(),
                            mouldchk_main_code = excelTable[1].Rows[i][0].ToString().Trim(),
                            description = excelTable[1].Rows[i][4].ToString().Trim(),
                            Operator = us.usercode,
                            CreateDate = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {
                StuCode = "300";
                message = e.Message;
            }
            return message;
        }
        #endregion
        #region【Excel数据上传,模具保养项目】
        public static string FourteenSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入模具保养项目表
                for (int i = 0; i < excelTable[0].Rows.Count; i++)
                {
                    sql = @"insert into TMouldmai_Item(code,name,description,lm_user,lm_date)
                            values(@code,@name,@description,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            code = excelTable[0].Rows[i][0].ToString().Trim(),
                            name = excelTable[0].Rows[i][1].ToString().Trim(),
                            description = excelTable[0].Rows[i][2].ToString().Trim(),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {
                StuCode = "300";
                message = e.Message;
            }
            return message;
        }
        #endregion
        #region【Excel数据上传,模具保养标准】
        public static string Fourteen_oneSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入模具保养标准主表
                for (int k = 0; k < excelTable[0].Rows.Count; k++)
                {
                    sql = @"insert into TMouldmai_Main(code,name,description,lm_user,lm_date)
                            values(@code,@name,@description,@Operator,@CreateDate)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            code = excelTable[0].Rows[k][0].ToString().Trim(),
                            name = excelTable[0].Rows[k][1].ToString().Trim(),
                            description = excelTable[0].Rows[k][2].ToString().Trim(),
                            CreateDate = DateTime.Now.ToString(),
                            Operator = us.usercode
                        }
                    });
                }
                //导入模具保养标准关联保养项子表
                for (int i = 0; i < excelTable[1].Rows.Count; i++)
                {
                    sql = @"insert into TMouldmai_Deta(seq,code,name,mouldmai_main_code,chkdesc,lm_user,lm_date)
                            values(@seq,@code,@name,@mouldmai_main_code,@description,@Operator,@CreateDate)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            seq = excelTable[1].Rows[i][1].ToString().Trim(),
                            code = excelTable[1].Rows[i][2].ToString().Trim(),
                            name = excelTable[1].Rows[i][3].ToString().Trim(),
                            mouldmai_main_code = excelTable[1].Rows[i][0].ToString().Trim(),
                            description = excelTable[1].Rows[i][4].ToString().Trim(),
                            Operator = us.usercode,
                            CreateDate = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {
@@ -4859,13 +5692,47 @@
        #endregion
        #region【Excel数据上传,工序定义】
        public static string FifteenSubmit(string FileCode, string User, out string StuCode)
        public static string FifteenSubmit(List<DataTable> excelTable, User us, out string StuCode)
        {
            string message = "";
            StuCode = "";
            string sql = "";
            List<object> list = new List<object>();
            var dynamicParams = new DynamicParameters();
            try
            {
                list.Clear();
                //导入工序
                for (int i = 0; i < excelTable[0].Rows.Count; i++)
                {
                    sql = @"insert into TStep(stepcode,stepname,enable,descr,flwtype,lm_user,lm_date)
                            values(@stepcode,@stepname,@enable,@descr,@flwtype,@lm_user,@lm_date)";
                    list.Add(new
                    {
                        str = sql,
                        parm = new
                        {
                            stepcode = excelTable[0].Rows[i][0].ToString().Trim(),
                            stepname = excelTable[0].Rows[i][1].ToString().Trim(),
                            enable = excelTable[0].Rows[i][3].ToString().Trim(),
                            descr = excelTable[0].Rows[i][4].ToString().Trim(),
                            flwtype = excelTable[0].Rows[i][2].ToString().Trim(),
                            lm_user = us.usercode,
                            lm_date = DateTime.Now.ToString()
                        }
                    });
                }
                bool aa = DapperHelper.DoTransaction(list);
                if (aa)
                {
                    StuCode = "200";
                    message = "导入成功!";
                }
                else
                {
                    StuCode = "300";
                    message = "导入失败!";
                }
            }
            catch (Exception e)
            {