| | |
| | | else if (excelTable[0].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "用户班组模板:表头信息不符合规范,第1列应为{序号}"; |
| | | Message = "仓库清单模板:表头信息不符合规范,第1列应为{序号}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[1].ColumnName != "仓库编号(唯一)") |
| | |
| | | { |
| | | string Message = ""; |
| | | code = ""; |
| | | DataTable excelTable = new DataTable(); |
| | | excelTable = ImportExcel.ExcelToTable(FileCode); |
| | | if (excelTable.Columns.Count != 10) |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToThreeTableList(FileCode); |
| | | if (excelTable.Count != 6) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "导入模板不符合规范,请检查Sheet数"; |
| | | } |
| | | else if (excelTable.Columns[0].ColumnName != "序号") |
| | | else if (excelTable[0].Columns.Count != 4) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备类型)不符合规范,请检查列名字段数"; |
| | | } |
| | | else if (excelTable.Columns[1].ColumnName != "设备编号(唯一)") |
| | | else if (excelTable[1].Columns.Count != 5) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备组)不符合规范,请检查列名字段数"; |
| | | } |
| | | else if (excelTable.Columns[2].ColumnName != "设备名称") |
| | | else if (excelTable[2].Columns.Count != 9) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备清单)不符合规范,请检查列名字段数"; |
| | | } |
| | | else if (excelTable.Columns[3].ColumnName != "设备类型") |
| | | else if (excelTable[0].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备类型):表头信息不符合规范,第1列应为{序号}"; |
| | | } |
| | | else if (excelTable.Columns[4].ColumnName != "生产车间") |
| | | else if (excelTable[0].Columns[1].ColumnName != "设备类型编号(唯一)") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备类型):表头信息不符合规范,第2列应为{设备类型编号(唯一)}"; |
| | | } |
| | | else if (excelTable.Columns[5].ColumnName != "所属产线") |
| | | else if (excelTable[0].Columns[2].ColumnName != "设备类型名称") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备类型):表头信息不符合规范,第3列应为{设备类型名称}"; |
| | | } |
| | | else if (excelTable.Columns[6].ColumnName != "投入日期") |
| | | else if (excelTable[0].Columns[3].ColumnName != "设备类型描述") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备类型):表头信息不符合规范,第4列应为{设备类型描述}"; |
| | | } |
| | | else if (excelTable.Columns[7].ColumnName != "稼动率(%)") |
| | | else if (excelTable[1].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备组):表头信息不符合规范,第1列应为{序号}"; |
| | | } |
| | | else if (excelTable.Columns[8].ColumnName != "使用状态") |
| | | else if (excelTable[1].Columns[1].ColumnName != "设备组编号(唯一)") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "设备清单模板(设备组):表头信息不符合规范,第2列应为{设备组编号(唯一)}"; |
| | | } |
| | | else if (excelTable.Columns[9].ColumnName != "数采标识1") |
| | | else if (excelTable[1].Columns[2].ColumnName != "设备组名称") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | 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[2].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{序号}"; |
| | | } |
| | | else if (excelTable[2].Columns[1].ColumnName != "设备编号(唯一)") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{设备编号(唯一)}"; |
| | | } |
| | | else if (excelTable[2].Columns[2].ColumnName != "设备名称") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{设备名称}"; |
| | | } |
| | | else if (excelTable[2].Columns[3].ColumnName != "设备类型编号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{设备类型编号}"; |
| | | } |
| | | else if (excelTable[2].Columns[4].ColumnName != "设备组编号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{设备组编号}"; |
| | | } |
| | | else if (excelTable[2].Columns[5].ColumnName != "投入日期") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{投入日期}"; |
| | | } |
| | | else if (excelTable[2].Columns[6].ColumnName != "生产车间") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{生产车间}"; |
| | | } |
| | | else if (excelTable[2].Columns[7].ColumnName != "使用状态") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{使用状态}"; |
| | | } |
| | | else if (excelTable[2].Columns[8].ColumnName != "稼动率(%)") |
| | | { |
| | | code = "300"; |
| | | Message = "设备清单模板(设备清单):表头信息不符合规范,第1列应为{稼动率(%)}"; |
| | | } |
| | | else |
| | | { |
| | |
| | | code = ""; |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); |
| | | if (excelTable.Count != 2) |
| | | if (excelTable.Count != 4) |
| | | { |
| | | code = "300"; |
| | | Message = "导入模板不符合规范,请检查sheet数"; |
| | | return Message; |
| | | |
| | | } |
| | | else if (excelTable[0].Columns.Count != 6) |
| | | else if (excelTable[0].Columns.Count != 5) |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范,请检查列名字段数"; |
| | | Message = "设备点检标准页签模板不符合规范,请检查列名字段数"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[1].Columns.Count != 8) |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检部位页签模板不符合规范,请检查列名字段数"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第1列应为{序号}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[1].ColumnName != "点检项目编号(唯一)") |
| | | else if (excelTable[0].Columns[1].ColumnName != "设备点检标准编号(唯一)") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第2列应为{点检项目编号(唯一)}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第2列应为{设备点检标准编号(唯一)}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[2].ColumnName != "点检项目名称") |
| | | else if (excelTable[0].Columns[2].ColumnName != "设备点检标准名称") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第3列应为{点检项目名称}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第3列应为{设备点检标准名称}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[3].ColumnName != "点检周期") |
| | | else if (excelTable[0].Columns[3].ColumnName != "点检管控") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检周期}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第4列应为{点检管控}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[4].ColumnName != "是否扫码") |
| | | else if (excelTable[0].Columns[4].ColumnName != "标准描述") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第5列应为{标准描述}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[5].ColumnName != "点检项目要求") |
| | | else if (excelTable[1].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备点检项目模板不符合规范:表头信息不符合规范,第4列应为{点检项目要求}"; |
| | | 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 |
| | |
| | | return Message; |
| | | |
| | | } |
| | | else if (excelTable[0].Columns.Count != 6) |
| | | else if (excelTable[0].Columns.Count != 5) |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范,请检查列名字段数"; |
| | |
| | | code = ""; |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); |
| | | if (excelTable.Count != 2) |
| | | if (excelTable.Count != 4) |
| | | { |
| | | code = "300"; |
| | | Message = "导入模板不符合规范,请检查sheet数"; |
| | | return Message; |
| | | |
| | | } |
| | | else if (excelTable[0].Columns.Count != 6) |
| | | else if (excelTable[0].Columns.Count != 5) |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范,请检查列名字段数"; |
| | | Message = "设备保养标准页签模板不符合规范,请检查列名字段数"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[1].Columns.Count != 7) |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养部位页签模板不符合规范,请检查列名字段数"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范:表头信息不符合规范,第1列应为{序号}"; |
| | | Message = "设备点检标准页签模板:表头信息不符合规范,第1列应为{序号}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[1].ColumnName != "保养项目编号(唯一)") |
| | | else if (excelTable[0].Columns[1].ColumnName != "设备保养标准编号(唯一)") |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范:表头信息不符合规范,第2列应为{保养项目编号(唯一)}"; |
| | | Message = "设备保养标准页签模板:表头信息不符合规范,第2列应为{设备保养标准编号(唯一)}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[2].ColumnName != "保养项目名称") |
| | | else if (excelTable[0].Columns[2].ColumnName != "设备保养标准名称") |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范:表头信息不符合规范,第3列应为{保养项目名称}"; |
| | | Message = "设备保养标准页签模板:表头信息不符合规范,第3列应为{设备保养标准名称}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[3].ColumnName != "是否扫码") |
| | | else if (excelTable[0].Columns[3].ColumnName != "保养周期") |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{是否扫码}"; |
| | | Message = "设备保养标准页签模板:表头信息不符合规范,第4列应为{保养周期}"; |
| | | return Message; |
| | | } |
| | | else if (excelTable[0].Columns[4].ColumnName != "保养项目要求") |
| | | else if (excelTable[0].Columns[4].ColumnName != "标准描述") |
| | | { |
| | | code = "300"; |
| | | Message = "设备保养项目模板不符合规范:表头信息不符合规范,第4列应为{保养项目要求}"; |
| | | Message = "设备保养标准页签模板:表头信息不符合规范,第5列应为{标准描述}"; |
| | | 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 |
| | |
| | | return Message; |
| | | |
| | | } |
| | | else if (excelTable[0].Columns.Count != 10) |
| | | else if (excelTable[0].Columns.Count != 9) |
| | | { |
| | | code = "300"; |
| | | Message = "节拍工价模板不符合规范,请检查列名字段数"; |
| | |
| | | code = ""; |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); |
| | | if (excelTable.Count != 2) |
| | | if (excelTable.Count != 4) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,缺失的Sheet"; |
| | | Message = "导入模板不符合规范,请检查Sheet数"; |
| | | } |
| | | else if (excelTable[0].Columns.Count != 6) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名字段数"; |
| | | Message = "物料清单模板(母件信息)不符合规范,请检查列名字段数"; |
| | | } |
| | | else if (excelTable[1].Columns.Count != 8) |
| | | else if (excelTable[1].Columns.Count != 10) |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名字段数"; |
| | | Message = "物料清单模板(子件信息)不符合规范,请检查列名字段数"; |
| | | } |
| | | else if (excelTable[0].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第1列应为{序号}"; |
| | | } |
| | | else if (excelTable[0].Columns[1].ColumnName != "母件编码") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第2列应为{母件编码}"; |
| | | } |
| | | else if (excelTable[0].Columns[2].ColumnName != "母件名称") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第3列应为{母件名称}"; |
| | | } |
| | | else if (excelTable[0].Columns[3].ColumnName != "基础数量") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第4列应为{基础数量}"; |
| | | } |
| | | else if (excelTable[0].Columns[4].ColumnName != "启用状态") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第5列应为{启用状态}"; |
| | | } |
| | | else if (excelTable[0].Columns[5].ColumnName != "版本号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(母件):表头信息不符合规范,第6列应为{版本号}"; |
| | | } |
| | | else if (excelTable[1].Columns[0].ColumnName != "序号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第1列应为{序号}"; |
| | | } |
| | | else if (excelTable[1].Columns[1].ColumnName != "主表序列号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第2列应为{主表序列号}"; |
| | | } |
| | | else if (excelTable[1].Columns[2].ColumnName != "子件编码") |
| | | else if (excelTable[1].Columns[2].ColumnName != "子件顺序号") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第3列应为{子件顺序号}"; |
| | | } |
| | | else if (excelTable[1].Columns[3].ColumnName != "子件名称") |
| | | else if (excelTable[1].Columns[3].ColumnName != "子件编码") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第4列应为{子件编码}"; |
| | | } |
| | | else if (excelTable[1].Columns[4].ColumnName != "发料仓库") |
| | | else if (excelTable[1].Columns[4].ColumnName != "子件名称") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第5列应为{子件名称}"; |
| | | } |
| | | else if (excelTable[1].Columns[5].ColumnName != "基本用量") |
| | | else if (excelTable[1].Columns[5].ColumnName != "发料仓库") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第6列应为{发料仓库}"; |
| | | } |
| | | else if (excelTable[1].Columns[6].ColumnName != "损耗率(%)") |
| | | else if (excelTable[1].Columns[6].ColumnName != "基本用量") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | Message = "物料清单模板(子件):表头信息不符合规范,第7列应为{基本用量}"; |
| | | } |
| | | else if (excelTable[1].Columns[7].ColumnName != "属性") |
| | | else if (excelTable[1].Columns[7].ColumnName != "损耗率(%)") |
| | | { |
| | | code = "300"; |
| | | Message = "模板不符合规范,请检查列名"; |
| | | 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 |
| | | { |
| | |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{用户编码(唯一)}"; |
| | | erro.ErrorCont = "用户表:{用户编码(唯一)}字段" + excelTable[1].Rows[k][2].ToString().Trim() + "已存在"; |
| | | erro.ErrorCont = "用户表:{用户编码(唯一)}字段" + excelTable[1].Rows[k][1].ToString().Trim() + "已存在"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{组织编码}"; |
| | | erro.ErrorCont = "用户表:{组织编码}字段" + excelTable[1].Rows[k][2].ToString().Trim() + "不存在"; |
| | | erro.ErrorCont = "用户表:{组织编码}字段" + excelTable[1].Rows[k][7].ToString().Trim() + "不存在"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | |
| | | StuCode = ""; |
| | | count = 0; |
| | | string sql = ""; |
| | | var dynamicParams = new DynamicParameters(); |
| | | DataTable dt; |
| | | List<ExcelErro> list = new List<ExcelErro>(); |
| | | |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | list = ImportExcel.ExcelToThreeTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 |
| | | excelTable = ImportExcel.ExcelToThreeTableList(FileCode); //获取Excel数据 |
| | | //设备类型表,判断设备类型是否存在 |
| | | for (int i = 0; i < excelTable[0].Rows.Count; i++) |
| | | { |
| | | if (excelTable[0].Rows[i][1].ToString().Trim() != null && excelTable[0].Rows[i][1].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TEqpType where code=@code"; |
| | | dynamicParams.Add("@code", excelTable[0].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[0].Rows[i][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 TEqpGroup where code=@code"; |
| | | dynamicParams.Add("@code", 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); |
| | | } |
| | | } |
| | | } |
| | | //判断子表外键不存在于主表主键中的数据 |
| | | 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); |
| | | } |
| | | //设备清单表 |
| | | for (int k = 0; k < excelTable[2].Rows.Count; k++) |
| | | { |
| | | if (excelTable[2].Rows[k][1].ToString().Trim() != null && excelTable[2].Rows[k][1].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TEqpInfo where code=@code"; |
| | | dynamicParams.Add("@code", excelTable[2].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[2].Rows[k][1].ToString().Trim() + "已存在"; |
| | | list.Add(erro); |
| | | } |
| | | //判断设备组是否对应正确的设备类型 |
| | | var yourGetData = excelTable[1].AsEnumerable().Where<DataRow>(a => a["设备类型编号"].ToString() == excelTable[2].Rows[k][3].ToString().Trim()&& a["设备组编号(唯一)"].ToString() == excelTable[2].Rows[k][4].ToString().Trim()); |
| | | if (yourGetData.Count() <= 0) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{设备类型编号}/{设备组编号}"; |
| | | erro.ErrorCont = "设备表:{设备编号(唯一)}字段" + excelTable[2].Rows[k][1].ToString().Trim() + "对应{设备类型编号}:"+ excelTable[2].Rows[k][4].ToString().Trim() + "/{设备组编号}:"+ excelTable[2].Rows[k][4].ToString().Trim() + "与设备组清单中设置对不上"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | } |
| | | //车间判断 |
| | | for (int m = 0; m < excelTable[2].Rows.Count; m++) |
| | | { |
| | | if (excelTable[2].Rows[m][6].ToString().Trim() != null && excelTable[2].Rows[m][6].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TOrganization where org_name=@code and description='W'"; |
| | | dynamicParams.Add("@code", excelTable[2].Rows[m][6].ToString().Trim()); |
| | | dt = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (dt.Rows.Count<=0) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{生产车间}"; |
| | | erro.ErrorCont = "设备表:{生产车间}字段" + excelTable[2].Rows[m][6].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+excelTable[2].Rows.Count; |
| | | } |
| | | return list; |
| | | } |
| | | #endregion |
| | |
| | | DataTable excelTable = new DataTable(); |
| | | list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 |
| | | excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 |
| | | //当前Excel数据中点检标准页签中,设备点检标准编号(唯一是否有重复) |
| | | DataTable distinct = excelTable.DefaultView.ToTable(true, "点检项目编号(唯一)"); |
| | | if (distinct.Rows.Count != excelTable.Rows.Count) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{点检项目编号(唯一)}"; |
| | | erro.ErrorCont = "设备点检项目页签模板:{点检项目编号(唯一)}有重复"; |
| | | list.Add(erro); |
| | | } |
| | | for (int i = 0; i < excelTable.Rows.Count; i++) |
| | | { |
| | | if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") |
| | |
| | | StuCode = ""; |
| | | count = 0; |
| | | string sql = ""; |
| | | var dynamicParams = new DynamicParameters(); |
| | | DataTable dt; |
| | | List<ExcelErro> list = new List<ExcelErro>(); |
| | | |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | 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 = "设备点检标准页签模板:{设备点检标准编号(唯一)}有重复"; |
| | | 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 TEqpchk_Main 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); |
| | | } |
| | | //通过设备点检标准页签模板中的标准编码查询设备点检部位页签模板中对应的数据信息 |
| | | var var_dtTable = excelTable[1].AsEnumerable().Where<DataRow>(W => W["设备点检标准编号"].ToString() == excelTable[0].Rows[j][1].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][2].ToString().Trim() + " 对应{设备点检部位编号(唯一)}有重复"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{设备点检部位编号(唯一)}"; |
| | | erro.ErrorCont = "设备点检部位页签模板:{设备点检标准编号}:" + excelTable[1].Rows[j][2].ToString().Trim() + " 在设备点检标准页签模板中不存在"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | } |
| | | //当前Excel数据中点检部位页签中,设备点检部位编号(唯一)在设备点检部位表中是否存在 |
| | | for (int k = 0; k < excelTable[1].Rows.Count; k++) |
| | | { |
| | | if (excelTable[1].Rows[k][3].ToString().Trim() != null && excelTable[1].Rows[k][3].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TEqpchk_Item where code=@code"; |
| | | dynamicParams.Add("@code", excelTable[1].Rows[k][3].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 |
| | |
| | | DataTable excelTable = new DataTable(); |
| | | list = ImportExcel.ExcelToTableErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 |
| | | excelTable = ImportExcel.ExcelToTable(FileCode); //获取Excel数据 |
| | | //当前Excel数据中点检标准页签中,设备点检标准编号(唯一是否有重复) |
| | | DataTable distinct = excelTable.DefaultView.ToTable(true, "保养项目编号(唯一)"); |
| | | if (distinct.Rows.Count != excelTable.Rows.Count) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{保养项目编号(唯一)}"; |
| | | erro.ErrorCont = "设备保养项目页签模板:{保养项目编号(唯一)}有重复"; |
| | | list.Add(erro); |
| | | } |
| | | for (int i = 0; i < excelTable.Rows.Count; i++) |
| | | { |
| | | if (excelTable.Rows[i][1].ToString().Trim() != null && excelTable.Rows[i][1].ToString().Trim() != "") |
| | |
| | | StuCode = ""; |
| | | count = 0; |
| | | string sql = ""; |
| | | var dynamicParams = new DynamicParameters(); |
| | | DataTable dt; |
| | | List<ExcelErro> list = new List<ExcelErro>(); |
| | | |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | 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 = "设备保养标准页签模板:{设备保养标准编号(唯一)}有重复"; |
| | | 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 TEqpmai_Main 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); |
| | | } |
| | | //通过设备保养标准页签模板中的标准编码查询设备保养部位页签模板中对应的数据信息 |
| | | var var_dtTable = excelTable[1].AsEnumerable().Where<DataRow>(W => W["设备保养标准编号"].ToString() == excelTable[0].Rows[j][1].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][2].ToString().Trim() + " 对应{设备保养部位编号(唯一)}有重复"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{设备保养部位编号(唯一)}"; |
| | | erro.ErrorCont = "设备保养部位页签模板:{设备保养标准编号}:" + excelTable[1].Rows[j][2].ToString().Trim() + " 在设备保养标准页签模板中不存在"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | } |
| | | //当前Excel数据中点检部位页签中,设备保养部位编号(唯一)在设备保养部位表中是否存在 |
| | | for (int k = 0; k < excelTable[1].Rows.Count; k++) |
| | | { |
| | | if (excelTable[1].Rows[k][3].ToString().Trim() != null && excelTable[1].Rows[k][3].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TEqpmai_Item where code=@code"; |
| | | dynamicParams.Add("@code", excelTable[1].Rows[k][3].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 |
| | |
| | | where partname=@partname"; |
| | | dynamicParams.Add("@partname", excelTable.Rows[i][1].ToString().Trim()); |
| | | var data = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data.Rows.Count <= 0) |
| | | if (data.Rows.Count <= 0) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | |
| | | 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) |
| | | 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() + "】未关联"; |
| | | 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.route_code=M.code |
| | | inner join TStep S on R.step_code=S.stepcode |
| | | 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()); |
| | |
| | | list.Add(erro); |
| | | } |
| | | //判断工序是否关联设备 |
| | | sql = @"select R.name,S.stepname from TFlw_Rteqp A |
| | | 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"; |
| | |
| | | StuCode = ""; |
| | | count = 0; |
| | | string sql = ""; |
| | | DataTable dt; |
| | | var dynamicParams = new DynamicParameters(); |
| | | DataTable dt0,dt; |
| | | List<ExcelErro> list = new List<ExcelErro>(); |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | list = ImportExcel.ExcelToTableListErro(FileCode); //验证Excel数据必填字段是否为空、唯一字段是否重复 |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); //获取Excel数据 |
| | | //Excel查询母件+版本号是否重复 |
| | | DataTable distinct = excelTable[0].DefaultView.ToTable(true, new string[] {"母件编码", "版本号" }); |
| | | 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<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); |
| | | } |
| | | //数据库查询母件+版本号是否存在 |
| | | 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 TMateriel_Info where partcode=@partcode"; |
| | | dynamicParams.Add("@partcode", excelTable[0].Rows[j][1].ToString().Trim()); |
| | | dt0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (dt0.Rows.Count<=0) |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{母件编码}"; |
| | | erro.ErrorCont = "Bom母件表:{母件编码}字段" + excelTable[0].Rows[j][1].ToString().Trim() + "在存货档案中不存在"; |
| | | list.Add(erro); |
| | | } |
| | | |
| | | 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); |
| | | } |
| | | //查询母件信息对应的子件信息 |
| | | 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]["主表序列号"].ToString() + "】对应{子件编码}有重复"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | ExcelErro erro = new ExcelErro(); |
| | | erro.RoeNumber = "/"; |
| | | erro.ErrorField = "{主表序列号}"; |
| | | erro.ErrorCont = "物料清单对应子件信息页签模板:{主表序列号}:" + excelTable[1].Rows[j][1].ToString().Trim() + " 在母件信息页签模板中不存在"; |
| | | list.Add(erro); |
| | | } |
| | | } |
| | | } |
| | | //子件判断 |
| | | for (int k = 0; k < excelTable[1].Rows.Count; k++) |
| | | { |
| | | if (excelTable[1].Rows[k][3].ToString().Trim() != null && excelTable[1].Rows[k][3].ToString().Trim() != "") |
| | | { |
| | | sql = @"select * from TMateriel_Info where partcode=@partcode"; |
| | | dynamicParams.Add("@partcode", excelTable[1].Rows[k][3].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][3].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 OneSubmit(string FileCode, string User, out string StuCode) |
| | | { |
| | | string message = ""; |
| | |
| | | //导入往来单位表 |
| | | for (int i = 0; i < excelTable.Rows.Count; i++) |
| | | { |
| | | string WGType = "", WXType = "", KHType = ""; |
| | | string Type = ""; |
| | | switch (excelTable.Rows[i][3].ToString().Trim()) |
| | | { |
| | | case "外购供方": |
| | | WGType = "WG"; |
| | | break; |
| | | case "外协供方": |
| | | WXType = "WX"; |
| | | case "供应商": |
| | | Type = "226"; |
| | | break; |
| | | case "客户": |
| | | KHType = "KH"; |
| | | Type = "211"; |
| | | break; |
| | | case "客户/供应商": |
| | | Type = "228"; |
| | | 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)"; |
| | | sql = @"insert into TCustomer(code,name,type,conttacts,conttphone,addr,lm_user,lm_date) |
| | | values(@code,@name,@type,@conttacts,@conttphone,@addr,@Operator,@CreateDate)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | |
| | | { |
| | | code = excelTable.Rows[i][1].ToString().Trim(), |
| | | name = excelTable.Rows[i][2].ToString().Trim(), |
| | | mtype = WGType, |
| | | type = Type, |
| | | 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 |
| | | CreateDate = DateTime.Now.ToString() |
| | | } |
| | | }); |
| | | } |
| | |
| | | #region【Excel数据上传,设备清单】 |
| | | public static string NineSubmit(string FileCode, string User, out string StuCode) |
| | | { |
| | | string message = ""; |
| | | StuCode = ""; |
| | | string message = ""; StuCode = ""; |
| | | string sql = ""; |
| | | List<object> list = new List<object>(); |
| | | var dynamicParams = new DynamicParameters(); |
| | | try |
| | | { |
| | | list.Clear(); |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToThreeTableList(FileCode); |
| | | //写入设备类型 |
| | | for (int i = 0; i < excelTable[0].Rows.Count; i++) |
| | | { |
| | | sql = @"insert into TEqpType(code,name,lm_user,lm_date,remark) |
| | | values(@code,@name,@lm_user,@lm_date,@remark)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | | parm = new |
| | | { |
| | | code = excelTable[0].Rows[i][1].ToString().Trim(), |
| | | name = excelTable[0].Rows[i][2].ToString().Trim(), |
| | | lm_user = User, |
| | | lm_date = DateTime.Now.ToString(), |
| | | remark= excelTable[0].Rows[i][3].ToString().Trim() |
| | | |
| | | } |
| | | }); |
| | | } |
| | | //写入设备组 |
| | | for (int j = 0; j < excelTable[1].Rows.Count; j++) |
| | | { |
| | | sql = @"insert into TEqpGroup(code,name,lm_user,lm_date,remark,eqptype_code) |
| | | values(@code,@name,@lm_user,@lm_date,@remark,@eqptype_code)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | | parm = new |
| | | { |
| | | code = excelTable[1].Rows[j][1].ToString().Trim(), |
| | | name = excelTable[1].Rows[j][2].ToString().Trim(), |
| | | lm_user = User, |
| | | lm_date = DateTime.Now.ToString(), |
| | | remark = excelTable[1].Rows[j][4].ToString().Trim(), |
| | | eqptype_code= excelTable[1].Rows[j][3].ToString().Trim() |
| | | |
| | | } |
| | | }); |
| | | } |
| | | //导入设备清单 |
| | | for (int k = 0; k < excelTable[2].Rows.Count; k++) |
| | | { |
| | | //获取车间编码 |
| | | string sql0 = @"select org_code,org_name from TOrganization where org_name=@wkshp and description='W' and is_delete<>'1'"; |
| | | dynamicParams.Add("@wkshp", excelTable[2].Rows[k][6].ToString()); |
| | | var data = DapperHelper.selectdata(sql0, dynamicParams); |
| | | |
| | | sql = @"insert into TEqpInfo(code,name,eqptype_code,eqpgroup_code,wksp_code,input_date,operation_ration,enable,opc_uom,lm_user,lm_date) |
| | | values(@devicecode,@devicename,@devicetype,@devicegroup,@workshop,@importdate,@ratio,@status,@uom,@lm_user,@lm_date)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | | parm = new |
| | | { |
| | | devicecode = excelTable[2].Rows[k][1].ToString().Trim(), |
| | | devicename = excelTable[2].Rows[k][2].ToString().Trim(), |
| | | devicetype = excelTable[2].Rows[k][3].ToString().Trim(), |
| | | devicegroup = excelTable[2].Rows[k][4].ToString().Trim(), |
| | | workshop = data.Rows[0]["org_code"].ToString().Trim(), |
| | | importdate = excelTable[2].Rows[k][5].ToString().Trim(), |
| | | ratio = excelTable[2].Rows[k][8].ToString().Trim(), |
| | | status = excelTable[2].Rows[k][7].ToString().Trim(), |
| | | uom = "台", |
| | | lm_user = User, |
| | | lm_date = DateTime.Now.ToString() |
| | | } |
| | | }); |
| | | } |
| | | |
| | | bool aa = DapperHelper.DoTransaction(list); |
| | | if (aa) |
| | | { |
| | | StuCode = "200"; |
| | | message = "导入成功!"; |
| | | } |
| | | else |
| | | { |
| | | StuCode = "300"; |
| | | message = "导入失败!"; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | |
| | | //导入设备点检项目表 |
| | | for (int i = 0; i < excelTable.Rows.Count; i++) |
| | | { |
| | | string Type = "",IsScan=""; |
| | | string Type = "", IsScan = ""; |
| | | switch (excelTable.Rows[i][3].ToString().Trim()) |
| | | { |
| | | case "年": |
| | |
| | | break; |
| | | } |
| | | sql = @"insert into TEqpchk_Item(code,name,description,isscan,cycle,lm_user,lm_date) |
| | | values(@code,@name,@descr,@Operator,@CreateDate)"; |
| | | values(@code,@name,@descr,@isscan,@cycle,@Operator,@CreateDate)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | |
| | | { |
| | | string message = ""; |
| | | StuCode = ""; |
| | | string sql = ""; |
| | | List<object> list = new List<object>(); |
| | | var dynamicParams = new DynamicParameters(); |
| | | try |
| | | { |
| | | |
| | | list.Clear(); |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); |
| | | //导入设备点检标准主表 |
| | | for (int k = 0; k < excelTable[0].Rows.Count; k++) |
| | | { |
| | | sql = @"insert into TEqpchk_Main(code,name,description,iscontr,lm_user,lm_date) |
| | | values(@code,@name,@description,@iscontr,@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(), |
| | | iscontr = excelTable[0].Rows[k][3].ToString().Trim(), |
| | | description = excelTable[0].Rows[k][4].ToString().Trim(), |
| | | CreateDate = DateTime.Now.ToString(), |
| | | Operator = User |
| | | } |
| | | }); |
| | | } |
| | | //导入设备点检标准部位子表 |
| | | for (int i = 0; i < excelTable[1].Rows.Count; i++) |
| | | { |
| | | string Type = ""; |
| | | switch (excelTable[1].Rows[i][7].ToString().Trim()) |
| | | { |
| | | case "日": |
| | | Type = "D"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | sql = @"insert into TEqpchk_Deta(seq,code,name,eqpchk_main_code,chkdesc,isscan,cycle,lm_user,lm_date) |
| | | values(@seq,@code,@name,@eqpchk_main_code,@description,@isscan,@cycle,@Operator,@CreateDate)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | | parm = new |
| | | { |
| | | seq = excelTable[1].Rows[i][1].ToString().Trim(), |
| | | code = excelTable[1].Rows[i][3].ToString().Trim(), |
| | | name = excelTable[1].Rows[i][4].ToString().Trim(), |
| | | eqpchk_main_code = excelTable[1].Rows[i][2].ToString().Trim(), |
| | | description = excelTable[1].Rows[i][5].ToString().Trim(), |
| | | isscan = excelTable[1].Rows[i][6].ToString().Trim(), |
| | | 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) |
| | | { |
| | |
| | | // default: |
| | | // break; |
| | | //} |
| | | switch (excelTable.Rows[i][4].ToString().Trim()) |
| | | switch (excelTable.Rows[i][3].ToString().Trim()) |
| | | { |
| | | case "是": |
| | | IsScan = "Y"; |
| | |
| | | break; |
| | | } |
| | | sql = @"insert into TEqpmai_Item(code,name,description,isscan,cycle,lm_user,lm_date) |
| | | values(@code,@name,@descr,@Operator,@CreateDate)"; |
| | | values(@code,@name,@descr,@isscan,@cycle,@Operator,@CreateDate)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | |
| | | { |
| | | code = excelTable.Rows[i][1].ToString().Trim(), |
| | | name = excelTable.Rows[i][2].ToString().Trim(), |
| | | descr = excelTable.Rows[i][5].ToString().Trim(), |
| | | descr = excelTable.Rows[i][4].ToString().Trim(), |
| | | isscan = IsScan, |
| | | cycle = "", |
| | | Operator = User, |
| | |
| | | { |
| | | string message = ""; |
| | | StuCode = ""; |
| | | string sql = ""; |
| | | List<object> list = new List<object>(); |
| | | var dynamicParams = new DynamicParameters(); |
| | | try |
| | | { |
| | | |
| | | list.Clear(); |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | excelTable = ImportExcel.ExcelToTableList(FileCode); |
| | | //导入设备保养标准主表 |
| | | for (int k = 0; k < excelTable[0].Rows.Count; k++) |
| | | { |
| | | string Type = ""; |
| | | switch (excelTable[0].Rows[k][3].ToString().Trim()) |
| | | { |
| | | case "年": |
| | | Type = "Y"; |
| | | break; |
| | | case "季": |
| | | Type = "S"; |
| | | break; |
| | | case "月": |
| | | Type = "M"; |
| | | break; |
| | | case "周": |
| | | Type = "W"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | sql = @"insert into TEqpmai_Main(code,name,description,main_cycle,lm_user,lm_date) |
| | | values(@code,@name,@description,@main_cycle,@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(), |
| | | main_cycle = Type, |
| | | description = excelTable[0].Rows[k][4].ToString().Trim(), |
| | | CreateDate = DateTime.Now.ToString(), |
| | | Operator = User |
| | | } |
| | | }); |
| | | } |
| | | //导入设备保养标准部位子表 |
| | | for (int i = 0; i < excelTable[1].Rows.Count; i++) |
| | | { |
| | | sql = @"insert into TEqpmai_Deta(seq,code,name,eapmai_code,chk_desc,isscan,lm_user,lm_date) |
| | | values(@seq,@code,@name,@eapmai_code,@description,@isscan,@Operator,@CreateDate)"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | | parm = new |
| | | { |
| | | seq = excelTable[1].Rows[i][1].ToString().Trim(), |
| | | code = excelTable[1].Rows[i][3].ToString().Trim(), |
| | | name = excelTable[1].Rows[i][4].ToString().Trim(), |
| | | eapmai_code = excelTable[1].Rows[i][2].ToString().Trim(), |
| | | description = excelTable[1].Rows[i][5].ToString().Trim(), |
| | | isscan = excelTable[1].Rows[i][6].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) |
| | | { |
| | |
| | | //导入设备点检项目表 |
| | | for (int i = 0; i < excelTable.Rows.Count; i++) |
| | | { |
| | | string partcode = "", routecode = "",stepcode="",eqpcode="",wkspcode=""; |
| | | string partcode = "", routecode = "", stepcode = "", eqpcode = "", wkspcode = ""; |
| | | //查询产品编码 |
| | | sql = @"select partcode from TMateriel_Info |
| | | where partname=@partname"; |
| | |
| | | var data = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data.Rows.Count > 0) |
| | | { |
| | | partcode = data.Rows[0]["partname"].ToString(); |
| | | partcode = data.Rows[0]["partcode"].ToString(); |
| | | } |
| | | else |
| | | else |
| | | { |
| | | StuCode = "产品名称:【"+ excelTable.Rows[i][1].ToString().Trim() + "】对应编码不存在!"; |
| | | StuCode = "产品名称:【" + excelTable.Rows[i][1].ToString().Trim() + "】对应编码不存在!"; |
| | | message = "导入失败!"; |
| | | } |
| | | //查询工艺路线编码 |
| | |
| | | var data0 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data0.Rows.Count > 0) |
| | | { |
| | | routecode = data.Rows[0]["code"].ToString(); |
| | | routecode = data0.Rows[0]["code"].ToString(); |
| | | } |
| | | else |
| | | { |
| | |
| | | var data1 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data1.Rows.Count > 0) |
| | | { |
| | | stepcode = data.Rows[0]["stepcode"].ToString(); |
| | | stepcode = data1.Rows[0]["stepcode"].ToString(); |
| | | } |
| | | else |
| | | { |
| | |
| | | var data4 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data4.Rows.Count > 0) |
| | | { |
| | | eqpcode = data.Rows[0]["code"].ToString(); |
| | | eqpcode = data4.Rows[0]["code"].ToString(); |
| | | } |
| | | else |
| | | { |
| | |
| | | var data5 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data5.Rows.Count > 0) |
| | | { |
| | | wkspcode = data.Rows[0]["wksp_code"].ToString(); |
| | | wkspcode = data5.Rows[0]["wksp_code"].ToString(); |
| | | } |
| | | else |
| | | { |
| | |
| | | dynamicParams.Add("@stepcode", stepcode); |
| | | dynamicParams.Add("@eqpcode", eqpcode); |
| | | var data6 = DapperHelper.selectdata(sql, dynamicParams); |
| | | if (data6.Rows.Count > 0) |
| | | 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 "; |
| | |
| | | #region【Excel数据上传,物料清单】 |
| | | public static string TwentyOneSubmit(string FileCode, string User, out string StuCode) |
| | | { |
| | | string message = ""; |
| | | StuCode = ""; |
| | | string message = ""; StuCode = ""; |
| | | string sql = ""; |
| | | int BomID = 0; //最大id |
| | | List<object> list = new List<object>(); |
| | | var dynamicParams = new DynamicParameters(); |
| | | try |
| | | { |
| | | list.Clear(); |
| | | List<DataTable> excelTable = new List<DataTable>(); |
| | | 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,startdate) |
| | | values(@materiel_code,@quantity,@status,@version,@lm_user,@lm_date,@startdate)"; |
| | | 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(), |
| | | lm_user = User, |
| | | lm_date = DateTime.Now.ToString(), |
| | | startdate = DateTime.Now.ToString() |
| | | } |
| | | }); |
| | | //查询母件信息对应的子件信息 |
| | | 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++) |
| | | { |
| | | string Type = ""; |
| | | switch (ds.Rows[i][9].ToString().Trim()) |
| | | { |
| | | case "主料": |
| | | Type = "Z"; |
| | | break; |
| | | case "辅料": |
| | | Type = "F"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | 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 = Type |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | |
| | | bool aa = DapperHelper.DoTransaction(list); |
| | | if (aa) |
| | | { |
| | | StuCode = "200"; |
| | | message = "导入成功!"; |
| | | } |
| | | else |
| | | { |
| | | StuCode = "300"; |
| | | message = "导入失败!"; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |