using Dapper; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Web; using VueWebApi.Models; namespace VueWebApi.Tools { public class ImportExcelData { public static ToMessage mes = new ToMessage(); //定义全局返回信息对象 #region【Excel模板上传验证】 #region【Excel模板上传验证,用户清单模板】 public static string Two(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 4) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 4) { code = "300"; Message = "用户班组模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[1].Columns.Count != 10) { code = "300"; Message = "用户清单模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "用户班组模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "班组编号(唯一)") { code = "300"; Message = "用户班组模板:表头信息不符合规范,第2列应为{班组编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "班组名称") { code = "300"; Message = "用户班组模板:表头信息不符合规范,第3列应为{班组名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "班组描述") { code = "300"; Message = "用户班组模板:表头信息不符合规范,第4列应为{班组描述}"; return Message; } else if (excelTable[1].Columns[0].ColumnName != "序号") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[1].Columns[1].ColumnName != "用户编号(唯一)") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第2列应为{用户编号(唯一)}"; return Message; } else if (excelTable[1].Columns[2].ColumnName != "用户姓名") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第3列应为{用户姓名}"; return Message; } else if (excelTable[1].Columns[3].ColumnName != "在职状态") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第4列应为{在职状态}"; return Message; } else if (excelTable[1].Columns[4].ColumnName != "密码") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第5列应为{密码}"; return Message; } else if (excelTable[1].Columns[5].ColumnName != "手机号") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第6列应为{手机号}"; return Message; } else if (excelTable[1].Columns[6].ColumnName != "邮箱") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第7列应为{邮箱}"; return Message; } else if (excelTable[1].Columns[7].ColumnName != "组织编码") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第8列应为{组织编码}"; return Message; } else if (excelTable[1].Columns[8].ColumnName != "工资类型") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第9列应为{工资类型}"; return Message; } else if (excelTable[1].Columns[9].ColumnName != "用户组编码") { code = "300"; Message = "用户清单模板:表头信息不符合规范,第10列应为{用户组编码}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,角色权限模板】 public static string One(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 4) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 3) { code = "300"; Message = "角色类型模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[1].Columns.Count != 5) { code = "300"; Message = "模板角色清单不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "角色类型模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "角色类型编号(唯一)") { code = "300"; Message = "角色类型模板:表头信息不符合规范,第2列应为{角色类型编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "角色类型名称") { code = "300"; Message = "角色类型模板:表头信息不符合规范,第3列应为{角色类型名称}"; return Message; } else if (excelTable[1].Columns[0].ColumnName != "序号") { code = "300"; Message = "角色清单模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[1].Columns[1].ColumnName != "角色编号(唯一)") { code = "300"; Message = "角色清单模板:表头信息不符合规范,第2列应为{角色编号(唯一)}"; return Message; } else if (excelTable[1].Columns[2].ColumnName != "角色姓名") { code = "300"; Message = "角色清单模板:表头信息不符合规范,第3列应为{角色姓名}"; return Message; } else if (excelTable[1].Columns[3].ColumnName != "角色类型编码") { code = "300"; Message = "角色清单模板:表头信息不符合规范,第4列应为{角色类型编码}"; return Message; } else if (excelTable[1].Columns[4].ColumnName != "角色描述") { code = "300"; Message = "角色清单模板:表头信息不符合规范,第5列应为{角色描述}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工位清单模板】 public static string Three(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 9) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "工位编号(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "工位名称(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "工位类型") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "所属车间") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "所属产线") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "使用状态") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[7].ColumnName != "数采标识1") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[8].ColumnName != "数采标识2") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,往来单位清单模板】 public static string Four(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 7) { code = "300"; Message = "往来单位模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "往来单位编号(唯一)") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第2列应为{往来单位编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "往来单位名称") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第3列应为{往来单位名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "往来单位属性") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第4列应为{往来单位属性}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "联系人") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第5列应为{联系人}"; return Message; } else if (excelTable[0].Columns[5].ColumnName != "联系方式") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第6列应为{联系方式}"; return Message; } else if (excelTable[0].Columns[6].ColumnName != "地址") { code = "300"; Message = "往来单位模板不符合规范:表头信息不符合规范,第7列应为{地址}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,仓库、库位定义模板】 public static string SixOne(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 4) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 4) { code = "300"; Message = "仓库清单模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[1].Columns.Count != 5) { code = "300"; Message = "库位清单模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "仓库清单模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "仓库编号(唯一)") { code = "300"; Message = "仓库清单模板:表头信息不符合规范,第2列应为{仓库编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "仓库名称") { code = "300"; Message = "仓库清单模板:表头信息不符合规范,第3列应为{仓库名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "仓库描述") { code = "300"; Message = "仓库清单模板:表头信息不符合规范,第4列应为{仓库描述}"; return Message; } else if (excelTable[1].Columns[0].ColumnName != "序号") { code = "300"; Message = "库位清单模板:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[1].Columns[1].ColumnName != "库位编号(唯一)") { code = "300"; Message = "库位清单模板:表头信息不符合规范,第2列应为{库位编号(唯一)}"; return Message; } else if (excelTable[1].Columns[2].ColumnName != "库位姓名") { code = "300"; Message = "库位清单模板:表头信息不符合规范,第3列应为{库位姓名}"; return Message; } else if (excelTable[1].Columns[3].ColumnName != "所属仓库编码") { code = "300"; Message = "库位清单模板:表头信息不符合规范,第4列应为{所属仓库编码}"; return Message; } else if (excelTable[1].Columns[4].ColumnName != "库位描述") { code = "300"; Message = "库位清单模板:表头信息不符合规范,第5列应为{库位描述}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,容器定义模板】 public static string Seven(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 5) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "容器编码(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "容器名称(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "容器自重(KG)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "容器类型") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,存货档案模板】 public static string Eight(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 11) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "物料编码(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "物料名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "物料规格") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "主单位") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "辅单位") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "辅/主") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[7].ColumnName != "物料类别") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[8].ColumnName != "仓库名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[9].ColumnName != "库存下限") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[10].ColumnName != "库存上限") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,设备清单模板】 public static string Nine(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 10) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "设备编号(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "设备名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "设备类型") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "生产车间") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "所属产线") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "投入日期") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[7].ColumnName != "稼动率(%)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[8].ColumnName != "使用状态") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[9].ColumnName != "数采标识1") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,设备点检项目模板】 public static string Ten(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "设备点检项目模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "点检项目编号(唯一)") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第2列应为{点检项目编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "点检项目名称") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第3列应为{点检项目名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "点检周期") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检周期}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "是否扫码") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; return Message; } else if (excelTable[0].Columns[5].ColumnName != "点检项目要求") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检项目要求}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,设备点检标准模板】 public static string TwentyTwo(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "设备点检项目模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "点检项目编号(唯一)") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第2列应为{点检项目编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "点检项目名称") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第3列应为{点检项目名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "点检周期") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检周期}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "是否扫码") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; return Message; } else if (excelTable[0].Columns[5].ColumnName != "点检项目要求") { code = "300"; Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检项目要求}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,设备保养项目模板】 public static string Eleven(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "设备保养项目模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "保养项目编号(唯一)") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第2列应为{保养项目编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "保养项目名称") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第3列应为{保养项目名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "是否扫码") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "保养项目要求") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{保养项目要求}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,设备保养标准模板】 public static string TwentyThree(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "设备保养项目模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "保养项目编号(唯一)") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第2列应为{保养项目编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "保养项目名称") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第3列应为{保养项目名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "是否扫码") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "保养项目要求") { code = "300"; Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{保养项目要求}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工装清单模板】 public static string Twelve(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 7) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "工装编号(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "工装名称(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "工装类型") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "型腔数量") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "理论寿命(次)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "使用状态") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工装点检模板】 public static string Thirteen(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "模板不符合规范,缺失的Sheet"; } else if (excelTable[0].Columns.Count != 3) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[1].Columns.Count != 8) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[1].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 = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工装保养模板】 public static string Fourteen(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "模板不符合规范,缺失的Sheet"; } else if (excelTable[0].Columns.Count != 3) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[1].Columns.Count != 8) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[1].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 = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工序定义模板】 public static string Fifteen(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 4) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "工序编码(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "工序名称(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "启用状态") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,工艺路线模板】 public static string Sixteen(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "模板不符合规范,缺失的Sheet"; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[1].Columns.Count != 9) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[1].ColumnName != "工艺路线(唯一)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[2].ColumnName != "物料编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[3].ColumnName != "物料名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[4].ColumnName != "生产周期(天)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[5].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 != "SEQ(排列顺序)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[1].Columns[3].ColumnName != "工序编码") { 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 = "模板不符合规范,请检查列名"; } else if (excelTable[1].Columns[8].ColumnName != "初始工价(元)") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,节拍工价模板】 public static string TwentyFour(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 9) { code = "300"; Message = "节拍工价模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "产品名称") { code = "300"; Message = "产品名称模板不符合规范:表头信息不符合规范,第2列应为{产品名称}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "工艺路线名称") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第3列应为{工艺路线名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "工序名称") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{工序名称}"; return Message; } else if (excelTable[0].Columns[4].ColumnName != "设备名称") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{设备名称}"; return Message; } else if (excelTable[0].Columns[5].ColumnName != "计件单价") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{计件单价}"; return Message; } else if (excelTable[0].Columns[6].ColumnName != "设备节拍") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{设备节拍}"; return Message; } else if (excelTable[0].Columns[7].ColumnName != "生产节拍") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{生产节拍}"; return Message; } else if (excelTable[0].Columns[8].ColumnName != "型腔数") { code = "300"; Message = "节拍工价模板不符合规范:表头信息不符合规范,第4列应为{型腔数}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,质检标准模板】 public static string Seventeen(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "模板不符合规范,缺失的Sheet"; } else if (excelTable[0].Columns.Count != 8) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[1].Columns.Count != 9) { code = "300"; Message = "模板不符合规范,请检查列名字段数"; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[1].ColumnName != "物料编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[2].ColumnName != "物料名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[3].ColumnName != "检验类型") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[4].ColumnName != "工艺路线") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[5].ColumnName != "工序编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[6].ColumnName != "工序名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable[0].Columns[7].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 != "检验项目") { 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 = "模板不符合规范,请检查列名"; } else if (excelTable[1].Columns[8].ColumnName != "上限值") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,缺陷定义模板】 public static string Eighteen(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查sheet数"; return Message; } else if (excelTable[0].Columns.Count != 4) { code = "300"; Message = "缺陷定义模板不符合规范,请检查列名字段数"; return Message; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "缺陷定义模板不符合规范:表头信息不符合规范,第1列应为{序号}"; return Message; } else if (excelTable[0].Columns[1].ColumnName != "缺陷编号(唯一)") { code = "300"; Message = "缺陷定义模板不符合规范:表头信息不符合规范,第2列应为{缺陷编号(唯一)}"; return Message; } else if (excelTable[0].Columns[2].ColumnName != "缺陷名称") { code = "300"; Message = "缺陷定义模板不符合规范:表头信息不符合规范,第3列应为{缺陷名称}"; return Message; } else if (excelTable[0].Columns[3].ColumnName != "缺陷描述") { code = "300"; Message = "缺陷描述模板不符合规范:表头信息不符合规范,第4列应为{缺陷描述}"; return Message; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,生产订单模板】 public static string Nineteen(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 7) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "产品编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "产品名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "产品规格") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "订单数量") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "要求交付时间") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "ERP订单号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,生产订单模板】 public static string Twenty(string FileCode, out string code) { string Message = ""; code = ""; DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); if (excelTable.Columns.Count != 10) { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[0].ColumnName != "序号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[1].ColumnName != "库位编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[2].ColumnName != "物料编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[3].ColumnName != "物料名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[4].ColumnName != "流程卡号") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[5].ColumnName != "容器编码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[6].ColumnName != "入厂条码") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[7].ColumnName != "炉号批次") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[8].ColumnName != "供方名称") { code = "300"; Message = "模板不符合规范,请检查列名"; } else if (excelTable.Columns[9].ColumnName != "当前库存") { code = "300"; Message = "模板不符合规范,请检查列名"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #region【Excel模板上传验证,物料清单模板】 public static string TwentyOne(string FileCode, out string code) { string Message = ""; code = ""; List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); if (excelTable.Count != 2) { code = "300"; Message = "导入模板不符合规范,请检查Sheet数"; } else if (excelTable[0].Columns.Count != 6) { code = "300"; Message = "物料清单模板(母件信息)不符合规范,请检查列名字段数"; } else if (excelTable[1].Columns.Count != 9) { code = "300"; Message = "物料清单模板(子件信息)不符合规范,请检查列名字段数"; } else if (excelTable[0].Columns[0].ColumnName != "序号") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第1列应为{序号}"; } else if (excelTable[0].Columns[1].ColumnName != "母件编码") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第2列应为{母件编码}"; } else if (excelTable[0].Columns[2].ColumnName != "母件名称") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第3列应为{母件名称}"; } else if (excelTable[0].Columns[3].ColumnName != "基础数量") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第4列应为{基础数量}"; } else if (excelTable[0].Columns[4].ColumnName != "启用状态") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第5列应为{启用状态}"; } else if (excelTable[0].Columns[5].ColumnName != "版本号") { code = "300"; Message = "物料清单模板(母件):表头信息不符合规范,第6列应为{版本号}"; } else if (excelTable[1].Columns[0].ColumnName != "序号") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第1列应为{序号}"; } else if (excelTable[1].Columns[1].ColumnName != "主表序列号") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第2列应为{主表序列号}"; } else if (excelTable[1].Columns[2].ColumnName != "子件顺序号") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第3列应为{子件顺序号}"; } else if (excelTable[1].Columns[3].ColumnName != "子件编码") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第4列应为{子件编码}"; } else if (excelTable[1].Columns[4].ColumnName != "子件名称") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第5列应为{子件名称}"; } else if (excelTable[1].Columns[5].ColumnName != "发料仓库") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第6列应为{发料仓库}"; } else if (excelTable[1].Columns[6].ColumnName != "基本用量") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第7列应为{基本用量}"; } else if (excelTable[1].Columns[7].ColumnName != "损耗率(%)") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第8列应为{损耗率(%)}"; } else if (excelTable[1].Columns[8].ColumnName != "实际用量") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第9列应为{实际用量}"; } else if (excelTable[1].Columns[9].ColumnName != "属性") { code = "300"; Message = "物料清单模板(子件):表头信息不符合规范,第10列应为{属性}"; } else { code = "200"; Message = "模板检验通过"; } return Message; } #endregion #endregion #region【Excel上传数据验证】 #region【Excel上传数据验证,用户角色】 public static List TwoData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; var dynamicParams = new DynamicParameters(); DataTable dt; List list = new List(); List excelTable = new List(); list = ImportExcel.ExcelToTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTableList(FileCode); //获取Excel数据 //主表 for (int j = 0; j < excelTable[0].Rows.Count; j++) { if (excelTable[0].Rows[j][1].ToString().Trim() != null && excelTable[0].Rows[j][1].ToString().Trim() != "") { sql = @"select * from TGroup where group_code=@group_code"; dynamicParams.Add("@group_code", excelTable[0].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[0].Rows[j][1].ToString().Trim() + "已存在"; list.Add(erro); } } } //子表 for (int k = 0; k < excelTable[1].Rows.Count; k++) { if (excelTable[1].Rows[k][1].ToString().Trim() != null && excelTable[1].Rows[k][1].ToString().Trim() != "") { sql = @"select * from TUser where usercode=@usercode"; dynamicParams.Add("@usercode", excelTable[1].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[1].Rows[k][2].ToString().Trim() + "已存在"; list.Add(erro); } } if (excelTable[1].Rows[k][7].ToString().Trim() != null && excelTable[1].Rows[k][7].ToString().Trim() != "") { sql = @"select * from TOrganization where org_code=@org_code"; dynamicParams.Add("@org_code", excelTable[1].Rows[k][7].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt == null || 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("班组编号(唯一)") ).Contains(r.Field("用户组编码")) select r; List 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 OneData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; var dynamicParams = new DynamicParameters(); DataTable dt; List list = new List(); List excelTable = new List(); list = ImportExcel.ExcelToTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTableList(FileCode); //获取Excel数据 //主表 for (int j = 0; j < excelTable[0].Rows.Count; j++) { if (excelTable[0].Rows[j][1].ToString().Trim() != null && excelTable[0].Rows[j][1].ToString().Trim() != "") { sql = @"select * from TRoleType where roletype_code=@roletype_code"; dynamicParams.Add("@roletype_code", excelTable[0].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[0].Rows[j][1].ToString().Trim() + "已存在"; list.Add(erro); } } } //子表 for (int k = 0; k < excelTable[1].Rows.Count; k++) { if (excelTable[1].Rows[k][1].ToString().Trim() != null && excelTable[1].Rows[k][1].ToString().Trim() != "") { sql = @"select * from TRole where role_code=@role_code"; dynamicParams.Add("@role_code", excelTable[1].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[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("角色类型编号(唯一)") ).Contains(r.Field("角色类型编码")) select r; List 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 ThreeData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,往来单位清单】 public static List FourData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; var dynamicParams = new DynamicParameters(); List list = new List(); DataTable excelTable = new DataTable(); list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 for (int i = 0; i < excelTable.Rows.Count; i++) { if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") { sql = @"select code from TCustomer where code=@code"; dynamicParams.Add("@code", excelTable.Rows[i][1].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt.Rows.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{往来单位编码(唯一)}"; erro.ErrorCont = "往来单位表:{往来单位编码(唯一)}字段" + excelTable.Rows[i][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.Rows.Count; } return list; } #endregion #region【Excel上传数据验证,仓库、库位定义】 public static List SixOneData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; var dynamicParams = new DynamicParameters(); DataTable dt; List list = new List(); List excelTable = new List(); list = ImportExcel.ExcelToTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTableList(FileCode); //获取Excel数据 //仓库表 for (int j = 0; j < excelTable[0].Rows.Count; j++) { if (excelTable[0].Rows[j][1].ToString().Trim() != null && excelTable[0].Rows[j][1].ToString().Trim() != "") { sql = @"select * from T_Sec_Stck where code=@code"; dynamicParams.Add("@code", excelTable[0].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[0].Rows[j][1].ToString().Trim() + "已存在"; list.Add(erro); } } } //库位表 for (int k = 0; k < excelTable[1].Rows.Count; k++) { if (excelTable[1].Rows[k][1].ToString().Trim() != null && excelTable[1].Rows[k][1].ToString().Trim() != "") { sql = @"select * from T_Sec_Loca where code=@code"; dynamicParams.Add("@code", excelTable[1].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[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("仓库编号(唯一)") ).Contains(r.Field("所属仓库编码")) select r; List 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 SevenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,存货档案】 public static List EightData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,设备清单】 public static List NineData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,设备点检项目】 public static List TenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; var dynamicParams = new DynamicParameters(); List list = new List(); DataTable excelTable = new DataTable(); list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 for (int i = 0; i < excelTable.Rows.Count; i++) { if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") { sql = @"select code from TEqpchk_Item where code=@code"; dynamicParams.Add("@code", excelTable.Rows[i][1].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt.Rows.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{点检项目编号(唯一)}"; erro.ErrorCont = "设备点检项目表:{点检项目编号(唯一)}字段" + excelTable.Rows[i][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.Rows.Count; } return list; } #endregion #region【Excel上传数据验证,设备点检标准】 public static List TwentyTwoData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,设备保养项目】 public static List ElevenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; var dynamicParams = new DynamicParameters(); List list = new List(); DataTable excelTable = new DataTable(); list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 for (int i = 0; i < excelTable.Rows.Count; i++) { if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") { sql = @"select code from TEqpmai_Item where code=@code"; dynamicParams.Add("@code", excelTable.Rows[i][1].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt.Rows.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{保养项目编号(唯一)}"; erro.ErrorCont = "设备保养项目表:{点检保养编号(唯一)}字段" + excelTable.Rows[i][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.Rows.Count; } return list; } #endregion #region【Excel上传数据验证,设备保养标准】 public static List TwentyThreeData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,工装清单】 public static List TwelveData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,工装点检】 public static List ThirteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,工装保养】 public static List FourteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,工序定义】 public static List FifteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,工艺路线】 public static List SixteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,节拍工价】 public static List TwentyFourData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; var dynamicParams = new DynamicParameters(); List list = new List(); DataTable excelTable = new DataTable(); list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 for (int i = 0; i < excelTable.Rows.Count; i++) { //产品是否存在 sql = @"select partname from TMateriel_Info where partname=@partname"; dynamicParams.Add("@partname", excelTable.Rows[i][1].ToString().Trim()); var data = DapperHelper.selectdata(sql, dynamicParams); if (data.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{产品名称}"; erro.ErrorCont = "存货档案:{产品名称}字段" + excelTable.Rows[i][1].ToString().Trim() + "不存在"; list.Add(erro); } //工艺路线是否存在 sql = @"select name from TFlw_Rout where name=@routename"; dynamicParams.Add("@routename", excelTable.Rows[i][2].ToString().Trim()); var data0 = DapperHelper.selectdata(sql, dynamicParams); if (data0.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{工艺路线名称}"; erro.ErrorCont = "工艺路线:{工艺路线名称}字段" + excelTable.Rows[i][2].ToString().Trim() + "不存在"; list.Add(erro); } //工序是否存在 sql = @"select stepname from TStep where stepname=@stepname"; dynamicParams.Add("@stepname", excelTable.Rows[i][3].ToString().Trim()); var data1 = DapperHelper.selectdata(sql, dynamicParams); if (data1.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{工序名称}"; erro.ErrorCont = "工序定义:{工序名称}字段" + excelTable.Rows[i][3].ToString().Trim() + "不存在"; list.Add(erro); } //设备是否存在 sql = @"select name from TEqpInfo where name=@eqpname"; dynamicParams.Add("@eqpname", excelTable.Rows[i][4].ToString().Trim()); var data2 = DapperHelper.selectdata(sql, dynamicParams); if (data2.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{设备名称}"; erro.ErrorCont = "设备清单:{设备名称}字段" + excelTable.Rows[i][4].ToString().Trim() + "不存在"; list.Add(erro); } //判断产品是否关联工艺路线 sql = @"select M.partname,R.name from TMateriel_Route A inner join TMateriel_Info M on A.materiel_code=M.partcode inner join TFlw_Rout R on A.route_code=R.code where M.partname=@partname and R.name=@routename"; dynamicParams.Add("@partname", excelTable.Rows[i][1].ToString().Trim()); dynamicParams.Add("@routename", excelTable.Rows[i][2].ToString().Trim()); var data3 = DapperHelper.selectdata(sql, dynamicParams); if (data3.Rows.Count<=0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{产品名称/工艺路线名称}"; erro.ErrorCont = "产品关联工艺路线:{产品名称}字段:【" + excelTable.Rows[i][1].ToString().Trim() + "】对应工艺路线名称:【"+ excelTable.Rows[i][2].ToString().Trim() + "】未关联"; list.Add(erro); } //判断工艺路线是否关联工序 sql = @"select R.name,S.stepname from TFlw_Rtdt A inner join TFlw_Rout R on A.rout_code=R.code inner join TStep S on A.step_code=S.stepcode where R.name=@routename and S.stepname=@stepname"; dynamicParams.Add("@routename", excelTable.Rows[i][2].ToString().Trim()); dynamicParams.Add("@stepname", excelTable.Rows[i][3].ToString().Trim()); var data4 = DapperHelper.selectdata(sql, dynamicParams); if (data4.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{工艺路线名称/工序名称}"; erro.ErrorCont = "工艺路线关联工序:{工艺路线名称}字段:【" + excelTable.Rows[i][2].ToString().Trim() + "】对应工序名称:【" + excelTable.Rows[i][3].ToString().Trim() + "】未关联"; list.Add(erro); } //判断工序是否关联设备 sql = @"select E.name,S.stepname from TFlw_Rteqp A inner join TStep S on A.step_code=S.stepcode inner join TEqpInfo E on A.eqp_code=E.code where S.stepname=@stepname and E.name=@eqpname"; dynamicParams.Add("@stepname", excelTable.Rows[i][3].ToString().Trim()); dynamicParams.Add("@eqpname", excelTable.Rows[i][4].ToString().Trim()); var data5 = DapperHelper.selectdata(sql, dynamicParams); if (data5.Rows.Count <= 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{工序名称/设备名称}"; erro.ErrorCont = "工序关联设备:{工序名称}字段:【" + excelTable.Rows[i][3].ToString().Trim() + "】对应设备名称:【" + excelTable.Rows[i][4].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.Rows.Count; } return list; } #endregion #region【Excel上传数据验证,质检标准】 public static List SeventeenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,缺陷定义】 public static List EighteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; var dynamicParams = new DynamicParameters(); List list = new List(); DataTable excelTable = new DataTable(); list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 for (int i = 0; i < excelTable.Rows.Count; i++) { if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") { sql = @"select code from TDefect where code=@code"; dynamicParams.Add("@code", excelTable.Rows[i][1].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt.Rows.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{缺陷定义编号(唯一)}"; erro.ErrorCont = "缺陷定义表:{缺陷定义编号(唯一)}字段" + excelTable.Rows[i][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.Rows.Count; } return list; } #endregion #region【Excel上传数据验证,生产订单】 public static List NineteenData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #endregion #region【Excel上传数据验证,库存查询】 public static List TwentyData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; DataTable dt; List list = new List(); return list; } #region【获取库存的容器中是否同一个产品】 public static Boolean getSamePNofTote(String PN, String Tote_ID) { Boolean bRes = false; String sql = ""; String stockPN = ""; DataTable dt = null; if (String.IsNullOrEmpty(PN)) { bRes = true; } else { sql = @"select part_number from mes_tk_wms_stock where tote_id='" + Tote_ID + "' and qty>0 "; dt = DBHelper.GetTable(sql); if (dt.Rows.Count > 0) { stockPN = dt.Rows[0]["part_number"].ToString(); if (PN == stockPN) { bRes = true; } } else { //仓库中不存在此容器 bRes = true; } } return bRes; } #endregion #endregion #region【Excel上传数据验证,物料清单】 public static List TwentyOneData(string FileCode, out string StuCode, out string message, out int count) { message = ""; StuCode = ""; count = 0; string sql = ""; var dynamicParams = new DynamicParameters(); DataTable dt; List list = new List(); List excelTable = new List(); list = ImportExcel.ExcelToTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 excelTable = ImportExcel.ExcelToTableList(FileCode); //获取Excel数据 //Excel查询母件+版本号是否重复 DataTable distinct = excelTable[0].DefaultView.ToTable(true, "母件编码, 版本号"); if (distinct.Rows.Count != excelTable[0].Rows.Count) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{版本号}"; erro.ErrorCont = "Bom母件表:{母件编码}对应的{版本号}有重复"; list.Add(erro); } //判断子表外键不存在于主表主键中的数据 var dt3 = from r in excelTable[1].AsEnumerable() where !( from rr in excelTable[0].AsEnumerable() select rr.Field("序号") ).Contains(r.Field("主表序列号")) select r; List listRow = dt3.ToList(); if (listRow.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{主表序列号}"; erro.ErrorCont = "子件信息:{主表序列号}字段中有值在母件信息:{序号}中不存在"; list.Add(erro); } //数据库查询母件+版本号是否存在 for (int j = 0; j < excelTable[0].Rows.Count; j++) { if (excelTable[0].Rows[j][1].ToString().Trim() != null && excelTable[0].Rows[j][1].ToString().Trim() != "") { sql = @"select * from TBom_Main where materiel_code=@code and version=@version"; dynamicParams.Add("@code", excelTable[0].Rows[j][1].ToString().Trim()); dynamicParams.Add("@version", excelTable[0].Rows[j][5].ToString().Trim()); dt = DapperHelper.selectdata(sql, dynamicParams); if (dt.Rows.Count > 0) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{母件编码}"; erro.ErrorCont = "Bom母件表:{母件编码}字段" + excelTable[0].Rows[j][1].ToString().Trim() + "对应的版本号:"+ excelTable[0].Rows[j][5].ToString() + "已存在"; list.Add(erro); } //查询母件信息对应的子件信息 DataTable ds = excelTable[1].AsEnumerable().Where(C => C["主表序列号"].ToString() == excelTable[0].Rows[j][0].ToString().Trim()).CopyToDataTable(); for (int i = 0; i < ds.Rows.Count; i++) { if (excelTable[0].Rows[j][1].ToString().Trim() == ds.Rows[i]["子件编码"].ToString().Trim()) { ExcelErro erro = new ExcelErro(); erro.RoeNumber = "/"; erro.ErrorField = "{子件编码}"; erro.ErrorCont = "子件信息:{子件编码}字段" + ds.Rows[i]["子件编码"].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 + excelTable[1].Rows.Count; } return list; } #endregion #endregion #region[Excel上传数据提交] #region【Excel数据上传,用户角色】 public static string TwoSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; string ZZName = "", Enable = "", WageType = ""; DataTable dt; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); //导入班组 for (int k = 0; k < excelTable[0].Rows.Count; k++) { sql = @"insert into TGroup(group_code,group_name,description,lm_user,lm_date) values(@group_code,@group_name,@description,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { group_code = excelTable[0].Rows[k][1].ToString().Trim(), group_name = excelTable[0].Rows[k][2].ToString().Trim(), description = excelTable[0].Rows[k][3].ToString().Trim(), CreateDate = DateTime.Now.ToString(), Operator = User } }); } //导入用户 for (int i = 0; i < excelTable[1].Rows.Count; i++) { if (excelTable[1].Rows[i][3].ToString().Trim() == "在职") { Enable = "Y"; } else { Enable = "N"; } //工资类型 switch (excelTable[1].Rows[i][8].ToString().Trim()) { case "计件制": WageType = "2"; break; case "计时制": WageType = "1"; break; default: break; } sql = @"insert into TUser(usercode,username,password,enable,mobile,lm_date,email,lm_user,stu_torgcode,wagetype) values(@UserCode,@UserName,@password,@Enable,@Mobile,@CreateDate,@Email,@Operator,@StuOrg,@wagetype)"; list.Add(new { str = sql, parm = new { UserCode = excelTable[1].Rows[i][1].ToString().Trim(), UserName = excelTable[1].Rows[i][2].ToString().Trim(), password = excelTable[1].Rows[i][4].ToString().Trim(), Enable = Enable, Mobile = excelTable[1].Rows[i][5].ToString().Trim(), CreateDate = DateTime.Now.ToString(), Email = excelTable[1].Rows[i][6].ToString().Trim(), Operator = User, StuOrg = excelTable[1].Rows[i][7].ToString().Trim(), wagetype = WageType } }); } 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 OneSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; string ZZName = "", Enable = "", WageType = ""; DataTable dt; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); //导入角色类型 for (int k = 0; k < excelTable[0].Rows.Count; k++) { sql = @"insert into TRoleType(roletype_code,roletype_name) values(@roletype_code,@roletype_name)"; list.Add(new { str = sql, parm = new { roletype_code = excelTable[0].Rows[k][1].ToString().Trim(), roletype_name = excelTable[0].Rows[k][2].ToString().Trim() } }); } //导入角色 for (int i = 0; i < excelTable[1].Rows.Count; i++) { sql = @"insert into TRole(role_code,role_name,roletype_code,description,lm_user,lm_date) values(@role_code,@role_name,@roletype_code,@description,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { role_code = excelTable[1].Rows[i][1].ToString().Trim(), role_name = excelTable[1].Rows[i][2].ToString().Trim(), roletype_code = excelTable[1].Rows[i][3].ToString().Trim(), description = excelTable[1].Rows[i][4].ToString().Trim(), Operator = User, 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 ThreeSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,往来单位清单】 public static string FourSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; DataTable dt; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); //导入往来单位表 for (int i = 0; i < excelTable.Rows.Count; i++) { string WGType = "", WXType = "", KHType = ""; switch (excelTable.Rows[i][3].ToString().Trim()) { case "外购供方": WGType = "WG"; break; case "外协供方": WXType = "WX"; break; case "客户": KHType = "KH"; break; default: break; } sql = @"insert into TCustomer(code,name,mtype,conttacts,conttphone,addr,lm_user,lm_date,btype,htype) values(@code,@name,@mtype,@conttacts,@conttphone,@addr,@Operator,@CreateDate,@btype,@htype)"; list.Add(new { str = sql, parm = new { code = excelTable.Rows[i][1].ToString().Trim(), name = excelTable.Rows[i][2].ToString().Trim(), mtype = WGType, conttacts = excelTable.Rows[i][4].ToString().Trim(), conttphone = excelTable.Rows[i][5].ToString().Trim(), addr = excelTable.Rows[i][6].ToString().Trim(), Operator = User, CreateDate = DateTime.Now.ToString(), btype = WXType, htype = KHType } }); } 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 SixOneSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); //导入仓库 for (int k = 0; k < excelTable[0].Rows.Count; k++) { sql = @"insert into T_Sec_Stck(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][1].ToString().Trim(), name = excelTable[0].Rows[k][2].ToString().Trim(), description = excelTable[0].Rows[k][3].ToString().Trim(), CreateDate = DateTime.Now.ToString(), Operator = User } }); } //导入库位 for (int i = 0; i < excelTable[1].Rows.Count; i++) { sql = @"insert into T_Sec_Loca(code,name,description,stock_code,lm_user,lm_date) values(@code,@name,@description,@stock_code,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { code = excelTable[1].Rows[i][1].ToString().Trim(), name = excelTable[1].Rows[i][2].ToString().Trim(), stock_code = excelTable[1].Rows[i][3].ToString().Trim(), description = excelTable[1].Rows[i][4].ToString().Trim(), Operator = User, 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 SevenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,存货档案】 public static string EightSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,设备清单】 public static string NineSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,设备点检项目】 public static string TenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); //导入设备点检项目表 for (int i = 0; i < excelTable.Rows.Count; i++) { string Type = "",IsScan=""; switch (excelTable.Rows[i][3].ToString().Trim()) { case "年": Type = "Y"; break; case "季": Type = "S"; break; case "月": Type = "M"; break; case "周": Type = "W"; break; case "日": Type = "D"; break; default: break; } switch (excelTable.Rows[i][4].ToString().Trim()) { case "是": IsScan = "Y"; break; case "否": IsScan = "N"; break; default: break; } sql = @"insert into TEqpchk_Item(code,name,description,isscan,cycle,lm_user,lm_date) values(@code,@name,@descr,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { code = excelTable.Rows[i][1].ToString().Trim(), name = excelTable.Rows[i][2].ToString().Trim(), descr = excelTable.Rows[i][5].ToString().Trim(), isscan = IsScan, cycle = Type, Operator = User, 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 TwentyTwoSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,设备保养项目】 public static string ElevenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); //导入设备点检项目表 for (int i = 0; i < excelTable.Rows.Count; i++) { string Type = "", IsScan = ""; //switch (excelTable.Rows[i][3].ToString().Trim()) //{ // case "年": // Type = "Y"; // break; // case "季": // Type = "S"; // break; // case "月": // Type = "M"; // break; // case "周": // Type = "W"; // break; // case "日": // Type = "D"; // break; // default: // break; //} switch (excelTable.Rows[i][4].ToString().Trim()) { case "是": IsScan = "Y"; break; case "否": IsScan = "N"; break; default: break; } sql = @"insert into TEqpmai_Item(code,name,description,isscan,cycle,lm_user,lm_date) values(@code,@name,@descr,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { code = excelTable.Rows[i][1].ToString().Trim(), name = excelTable.Rows[i][2].ToString().Trim(), descr = excelTable.Rows[i][5].ToString().Trim(), isscan = IsScan, cycle = "", Operator = User, 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 TwentyThreeSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,工装清单】 public static string TwelveSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,工装点检】 public static string ThirteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,工装保养】 public static string FourteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,工序定义】 public static string FifteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,工艺路线】 public static string SixteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,节拍工价】 public static string TwentyFourSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); //导入设备点检项目表 for (int i = 0; i < excelTable.Rows.Count; i++) { string partcode = "", routecode = "",stepcode="",eqpcode="",wkspcode=""; //查询产品编码 sql = @"select partcode from TMateriel_Info where partname=@partname"; dynamicParams.Add("@partname", excelTable.Rows[i][1].ToString().Trim()); var data = DapperHelper.selectdata(sql, dynamicParams); if (data.Rows.Count > 0) { partcode = data.Rows[0]["partcode"].ToString(); } else { StuCode = "产品名称:【"+ excelTable.Rows[i][1].ToString().Trim() + "】对应编码不存在!"; message = "导入失败!"; } //查询工艺路线编码 sql = @"select code from TFlw_Rout where name=@routename"; dynamicParams.Add("@routename", excelTable.Rows[i][2].ToString().Trim()); var data0 = DapperHelper.selectdata(sql, dynamicParams); if (data0.Rows.Count > 0) { routecode = data0.Rows[0]["code"].ToString(); } else { StuCode = "工艺路线名称:【" + excelTable.Rows[i][2].ToString().Trim() + "】对应编码不存在!"; message = "导入失败!"; } //查询工序编码 sql = @"select stepcode from TStep where stepname=@stepname"; dynamicParams.Add("@stepname", excelTable.Rows[i][3].ToString().Trim()); var data1 = DapperHelper.selectdata(sql, dynamicParams); if (data1.Rows.Count > 0) { stepcode = data1.Rows[0]["stepcode"].ToString(); } else { StuCode = "工序名称:【" + excelTable.Rows[i][3].ToString().Trim() + "】对应编码不存在!"; message = "导入失败!"; } //查询设备编码 sql = @"select code from TEqpInfo where name=@eqpname"; dynamicParams.Add("@eqpname", excelTable.Rows[i][4].ToString().Trim()); var data4 = DapperHelper.selectdata(sql, dynamicParams); if (data4.Rows.Count > 0) { eqpcode = data4.Rows[0]["code"].ToString(); } else { StuCode = "设备名称:【" + excelTable.Rows[i][4].ToString().Trim() + "】对应编码不存在!"; message = "导入失败!"; } //查询车间编码 sql = @"select wksp_code from TEqpInfo where name=@eqpname"; dynamicParams.Add("@eqpname", excelTable.Rows[i][4].ToString().Trim()); var data5 = DapperHelper.selectdata(sql, dynamicParams); if (data5.Rows.Count > 0) { wkspcode = data5.Rows[0]["wksp_code"].ToString(); } else { StuCode = "设备名称:【" + excelTable.Rows[i][4].ToString().Trim() + "】对应车间编码不存在!"; message = "导入失败!"; } //查询工序节拍表中:产品+工艺路线+工序+设备是否存在 sql = @"select * from TPrteEqp_Stad where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode and eqp_code=@eqpcode"; dynamicParams.Add("@partcode", partcode); dynamicParams.Add("@routecode", routecode); dynamicParams.Add("@stepcode", stepcode); dynamicParams.Add("@eqpcode", eqpcode); var data6 = DapperHelper.selectdata(sql, dynamicParams); if (data6.Rows.Count > 0) { sql = @"update TPrteEqp_Stad set stand_value=@stand_value,eqp_value=@eqp_value,cavity_qty=@cavity_qty,unprice=@unprice,lm_user=@username,lm_date=@userdate where materiel_code=@partcode and route_code=@routecode and step_code=@stepcode and eqp_code=@eqpcode "; list.Add(new { str = sql, parm = new { partcode = partcode, routecode = routecode, stepcode = stepcode, eqpcode = eqpcode, stand_value = excelTable.Rows[i][7].ToString().Trim(), eqp_value = excelTable.Rows[i][6].ToString().Trim(), cavity_qty = excelTable.Rows[i][8].ToString().Trim(), unprice = excelTable.Rows[i][5].ToString().Trim(), username = User, userdate = DateTime.Now.ToString() } }); } else { sql = @"insert into TPrteEqp_Stad(materiel_code,eqp_code,stand_value,route_code,unprice,eqp_value,cavity_qty,wkspcode,lm_user,lm_date,step_code) values(@partcode,@eqpcode,@stand_value,@routecode,@unprice,@eqp_value,@cavity_qty,@wkspcode,@username,@userdate,@stepcode)"; list.Add(new { str = sql, parm = new { partcode = partcode, eqpcode = eqpcode, stand_value = excelTable.Rows[i][7].ToString().Trim(), routecode = routecode, unprice = excelTable.Rows[i][5].ToString().Trim(), eqp_value = excelTable.Rows[i][6].ToString().Trim(), cavity_qty = excelTable.Rows[i][8].ToString().Trim(), wkspcode = wkspcode, username = User, userdate = DateTime.Now.ToString(), stepcode = stepcode } }); } } 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 SeventeenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,缺陷定义】 public static string EighteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; DataTable dt; List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); DataTable excelTable = new DataTable(); excelTable = ImportExcel.ExcelToTable(FileCode); //导入往来单位表 for (int i = 0; i < excelTable.Rows.Count; i++) { sql = @"insert into TDefect(code,name,descr,lm_user,lm_date) values(@code,@name,@descr,@Operator,@CreateDate)"; list.Add(new { str = sql, parm = new { code = excelTable.Rows[i][1].ToString().Trim(), name = excelTable.Rows[i][2].ToString().Trim(), descr = excelTable.Rows[i][3].ToString().Trim(), Operator = User, 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 NineteenSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,库存查询】 public static string TwentySubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; try { } catch (Exception e) { StuCode = "300"; message = e.Message; } return message; } #endregion #region【Excel数据上传,物料清单】 public static string TwentyOneSubmit(string FileCode, string User, out string StuCode) { string message = ""; StuCode = ""; string sql = ""; int BomID = 0; //最大id List list = new List(); var dynamicParams = new DynamicParameters(); try { list.Clear(); List excelTable = new List(); excelTable = ImportExcel.ExcelToTableList(FileCode); //获取主表当前最大ID BomID = DapperHelper.insertReturnId("TBom_Main"); //导入Bom主表 for (int k = 0; k < excelTable[0].Rows.Count; k++) { BomID = BomID + 1; sql = @"insert into TBom_Main(materiel_code,quantity,status,version,lm_user,lm_date) values(@materiel_code,@quantity,@status,@version,@lm_user,@lm_date)"; list.Add(new { str = sql, parm = new { materiel_code = excelTable[0].Rows[k][1].ToString().Trim(), quantity = excelTable[0].Rows[k][3].ToString().Trim(), status = excelTable[0].Rows[k][4].ToString().Trim(), version = excelTable[0].Rows[k][5].ToString().Trim(), CreateDate = DateTime.Now.ToString(), Operator = User } }); //查询母件信息对应的子件信息 DataTable ds = excelTable[1].AsEnumerable().Where(item => item["主表序列号"].ToString().Equals(excelTable[0].Rows[k][0].ToString())).CopyToDataTable(); //导入Bom子表 for (int i = 0; i < ds.Rows.Count; i++) { sql = @"insert into TBom_Deta(m_id,seq,smateriel_code,base_quantity,loss_quantity,total_quantity,pn_type) values(@m_id,@seq,@smateriel_code,@base_quantity,@loss_quantity,@total_quantity,@pn_type)"; list.Add(new { str = sql, parm = new { m_id = BomID, seq = ds.Rows[i][2].ToString().Trim(), smateriel_code = ds.Rows[i][3].ToString().Trim(), base_quantity = ds.Rows[i][6].ToString().Trim(), loss_quantity = ds.Rows[i][7].ToString().Trim(), total_quantity = ds.Rows[i][8].ToString().Trim(), pn_type = ds.Rows[i][9].ToString().Trim() } }); } } 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 #endregion } }