From 6fe3d6fc4e93f4cf31dc02d4f0cbc48d56c249b7 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 30 六月 2023 13:35:23 +0800
Subject: [PATCH] 多车间模式接口过滤

---
 VueWebApi/Tools/ImportExcelData.cs |  473 +++++++++++++++++++++++++++-------------------------------
 1 files changed, 218 insertions(+), 255 deletions(-)

diff --git a/VueWebApi/Tools/ImportExcelData.cs b/VueWebApi/Tools/ImportExcelData.cs
index 4053ec4..2ea8e76 100644
--- a/VueWebApi/Tools/ImportExcelData.cs
+++ b/VueWebApi/Tools/ImportExcelData.cs
@@ -27,7 +27,7 @@
                 return Message;
 
             }
-            else if (excelTable[0].Columns.Count != 4)
+            else if (excelTable[0].Columns.Count != 5)
             {
                 code = "300";
                 Message = "鐢ㄦ埛鐝粍妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
@@ -45,19 +45,25 @@
                 Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
                 return Message;
             }
-            else if (excelTable[0].Columns[1].ColumnName != "鐝粍缂栧彿(鍞竴)")
+            else if (excelTable[0].Columns[1].ColumnName != "缁勭粐缂栫爜")
+            {
+                code = "300";
+                Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕缁勭粐缂栫爜}";
+                return Message;
+            }
+            else if (excelTable[0].Columns[2].ColumnName != "鐝粍缂栧彿(鍞竴)")
             {
                 code = "300";
                 Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕鐝粍缂栧彿(鍞竴)}";
                 return Message;
             }
-            else if (excelTable[0].Columns[2].ColumnName != "鐝粍鍚嶇О")
+            else if (excelTable[0].Columns[3].ColumnName != "鐝粍鍚嶇О")
             {
                 code = "300";
                 Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕鐝粍鍚嶇О}";
                 return Message;
             }
-            else if (excelTable[0].Columns[3].ColumnName != "鐝粍鎻忚堪")
+            else if (excelTable[0].Columns[4].ColumnName != "鐝粍鎻忚堪")
             {
                 code = "300";
                 Message = "鐢ㄦ埛鐝粍妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕鐝粍鎻忚堪}";
@@ -146,13 +152,13 @@
                 return Message;
 
             }
-            else if (excelTable[0].Columns.Count != 3)
+            else if (excelTable[0].Columns.Count != 4)
             {
                 code = "300";
                 Message = "瑙掕壊绫诲瀷妯℃澘涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
                 return Message;
             }
-            else if (excelTable[1].Columns.Count != 5)
+            else if (excelTable[1].Columns.Count != 6)
             {
                 code = "300";
                 Message = "妯℃澘瑙掕壊娓呭崟涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
@@ -164,13 +170,19 @@
                 Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
                 return Message;
             }
-            else if (excelTable[0].Columns[1].ColumnName != "瑙掕壊绫诲瀷缂栧彿(鍞竴)")
+            else if (excelTable[0].Columns[1].ColumnName != "缁勭粐缂栫爜")
+            {
+                code = "300";
+                Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕缁勭粐缂栫爜}";
+                return Message;
+            }
+            else if (excelTable[0].Columns[2].ColumnName != "瑙掕壊绫诲瀷缂栧彿(鍞竴)")
             {
                 code = "300";
                 Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕瑙掕壊绫诲瀷缂栧彿(鍞竴)}";
                 return Message;
             }
-            else if (excelTable[0].Columns[2].ColumnName != "瑙掕壊绫诲瀷鍚嶇О")
+            else if (excelTable[0].Columns[3].ColumnName != "瑙掕壊绫诲瀷鍚嶇О")
             {
                 code = "300";
                 Message = "瑙掕壊绫诲瀷妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕瑙掕壊绫诲瀷鍚嶇О}";
@@ -182,25 +194,31 @@
                 Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
                 return Message;
             }
-            else if (excelTable[1].Columns[1].ColumnName != "瑙掕壊缂栧彿(鍞竴)")
+            else if (excelTable[1].Columns[1].ColumnName != "缁勭粐缂栫爜")
+            {
+                code = "300";
+                Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕缁勭粐缂栫爜}";
+                return Message;
+            }
+            else if (excelTable[1].Columns[2].ColumnName != "瑙掕壊缂栧彿(鍞竴)")
             {
                 code = "300";
                 Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�2鍒楀簲涓簕瑙掕壊缂栧彿(鍞竴)}";
                 return Message;
             }
-            else if (excelTable[1].Columns[2].ColumnName != "瑙掕壊濮撳悕")
+            else if (excelTable[1].Columns[3].ColumnName != "瑙掕壊濮撳悕")
             {
                 code = "300";
                 Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�3鍒楀簲涓簕瑙掕壊濮撳悕}";
                 return Message;
             }
-            else if (excelTable[1].Columns[3].ColumnName != "瑙掕壊绫诲瀷缂栫爜")
+            else if (excelTable[1].Columns[4].ColumnName != "瑙掕壊绫诲瀷缂栫爜")
             {
                 code = "300";
                 Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�4鍒楀簲涓簕瑙掕壊绫诲瀷缂栫爜}";
                 return Message;
             }
-            else if (excelTable[1].Columns[4].ColumnName != "瑙掕壊鎻忚堪")
+            else if (excelTable[1].Columns[5].ColumnName != "瑙掕壊鎻忚堪")
             {
                 code = "300";
                 Message = "瑙掕壊娓呭崟妯℃澘锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�5鍒楀簲涓簕瑙掕壊鎻忚堪}";
@@ -569,23 +587,13 @@
             string Message = "";
             code = "";
             List<DataTable> excelTable = new List<DataTable>();
-            excelTable = ImportExcel.ExcelToThreeTableList(FileCode);
-            if (excelTable.Count != 6)
+            excelTable = ImportExcel.ExcelToTableList(FileCode);
+            if (excelTable.Count != 2)
             {
                 code = "300";
                 Message = "瀵煎叆妯℃澘涓嶇鍚堣鑼�,璇锋鏌heet鏁�";
             }
-            else if (excelTable[0].Columns.Count != 4)
-            {
-                code = "300";
-                Message = "璁惧娓呭崟妯℃澘(璁惧绫诲瀷)涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
-            }
-            else if (excelTable[1].Columns.Count != 5)
-            {
-                code = "300";
-                Message = "璁惧娓呭崟妯℃澘(璁惧缁�)涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
-            }
-            else if (excelTable[2].Columns.Count != 9)
+            else if (excelTable[0].Columns.Count != 7)
             {
                 code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)涓嶇鍚堣鑼�,璇锋鏌ュ垪鍚嶅瓧娈垫暟";
@@ -593,89 +601,34 @@
             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[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[2].Columns[0].ColumnName != "搴忓彿")
-            {
-                code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕搴忓彿}";
             }
-            else if (excelTable[2].Columns[1].ColumnName != "璁惧缂栧彿(鍞竴)")
+            else if (excelTable[0].Columns[1].ColumnName != "璁惧缂栧彿(鍞竴)")
             {
                 code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕璁惧缂栧彿(鍞竴)}";
             }
-            else if (excelTable[2].Columns[2].ColumnName != "璁惧鍚嶇О")
+            else if (excelTable[0].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 != "鎶曞叆鏃ユ湡")
+            else if (excelTable[0].Columns[3].ColumnName != "鎶曞叆鏃ユ湡")
             {
                 code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕鎶曞叆鏃ユ湡}";
             }
-            else if (excelTable[2].Columns[6].ColumnName != "鐢熶骇杞﹂棿")
+            else if (excelTable[0].Columns[4].ColumnName != "杞﹂棿缂栫爜")
             {
                 code = "300";
-                Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕鐢熶骇杞﹂棿}";
+                Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕杞﹂棿缂栫爜}";
             }
-            else if (excelTable[2].Columns[7].ColumnName != "浣跨敤鐘舵��")
+            else if (excelTable[0].Columns[5].ColumnName != "浣跨敤鐘舵��")
             {
                 code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕浣跨敤鐘舵�亇";
             }
-            else if (excelTable[2].Columns[8].ColumnName != "绋煎姩鐜囷紙%锛�")
+            else if (excelTable[0].Columns[6].ColumnName != "绋煎姩鐜囷紙%锛�")
             {
                 code = "300";
                 Message = "璁惧娓呭崟妯℃澘(璁惧娓呭崟)锛氳〃澶翠俊鎭笉绗﹀悎瑙勮寖,绗�1鍒楀簲涓簕绋煎姩鐜囷紙%锛墋";
@@ -1917,17 +1870,17 @@
             //涓昏〃
             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() != "")
+                if (excelTable[0].Rows[j][2].ToString().Trim() != null && excelTable[0].Rows[j][2].ToString().Trim() != "")
                 {
                     sql = @"select *  from TGroup where group_code=@group_code";
-                    dynamicParams.Add("@group_code", excelTable[0].Rows[j][1].ToString().Trim());
+                    dynamicParams.Add("@group_code", excelTable[0].Rows[j][2].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() + "宸插瓨鍦�";
+                        erro.ErrorCont = "鐝粍琛�:{鐝粍缂栫爜(鍞竴)}瀛楁" + excelTable[0].Rows[j][2].ToString().Trim() + "宸插瓨鍦�";
                         list.Add(erro);
                     }
                 }
@@ -1945,7 +1898,7 @@
                         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);
                     }
                 }
@@ -1959,10 +1912,42 @@
                         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);
                     }
                 }
+                if (excelTable[1].Rows[k][9].ToString().Trim() != null && excelTable[1].Rows[k][9].ToString().Trim() != "")
+                {
+                    sql = @"select torg_code  from TGroup where group_code=@group_code";
+                    dynamicParams.Add("@group_code", excelTable[1].Rows[k][9].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt != null && dt.Rows.Count>0)
+                    {
+                        if (dt.Rows[0]["torg_code"].ToString()!= excelTable[1].Rows[k][7].ToString().Trim()) 
+                        {
+                            ExcelErro erro = new ExcelErro();
+                            erro.RoeNumber = "/";
+                            erro.ErrorField = "{鐢ㄦ埛缁勭紪鐮亇";
+                            erro.ErrorCont = "鐢ㄦ埛琛�:{鐢ㄦ埛缁勭紪鐮亇瀛楁" + excelTable[1].Rows[k][9].ToString().Trim() + " 涓嶆槸缁勭粐缂栫爜:" + excelTable[1].Rows[k][7].ToString().Trim() + "涓嬬殑鐢ㄦ埛缁�";
+                            list.Add(erro);
+                        }                    }
+                }
+            }
+            //鍒ゆ柇瀛愯〃缁勭粐缂栫爜涓嶅瓨鍦ㄤ簬涓昏〃缁勭粐缂栫爜涓殑鏁版嵁
+            var dt2 = 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> listRow2 = dt2.ToList();
+            if (listRow2.Count > 0)
+            {
+                ExcelErro erro = new ExcelErro();
+                erro.RoeNumber = "/";
+                erro.ErrorField = "{缁勭粐缂栫爜}";
+                erro.ErrorCont = "鐢ㄦ埛琛�:{缁勭粐缂栫爜}瀛楁涓湁鍊煎湪鐝粍琛�:{缁勭粐缂栫爜}涓笉瀛樺湪";
+                list.Add(erro);
             }
             //鍒ゆ柇瀛愯〃澶栭敭涓嶅瓨鍦ㄤ簬涓昏〃涓婚敭涓殑鏁版嵁
             var dt3 = from r in excelTable[1].AsEnumerable()
@@ -2017,17 +2002,31 @@
             //涓昏〃
             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() != "")
+                if (excelTable[1].Rows[j][1].ToString().Trim() != null && excelTable[1].Rows[j][1].ToString().Trim() != "")
+                {
+                    sql = @"select *  from TOrganization where org_code=@org_code";
+                    dynamicParams.Add("@org_code", excelTable[1].Rows[j][1].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[j][1].ToString().Trim() + "涓嶅瓨鍦�";
+                        list.Add(erro);
+                    }
+                }
+                if (excelTable[0].Rows[j][2].ToString().Trim() != null && excelTable[0].Rows[j][2].ToString().Trim() != "")
                 {
                     sql = @"select *  from TRoleType where roletype_code=@roletype_code";
-                    dynamicParams.Add("@roletype_code", excelTable[0].Rows[j][1].ToString().Trim());
+                    dynamicParams.Add("@roletype_code", excelTable[0].Rows[j][2].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() + "宸插瓨鍦�";
+                        erro.ErrorCont = "鐝粍琛�:{瑙掕壊绫诲瀷缂栫爜(鍞竴)}瀛楁" + excelTable[0].Rows[j][2].ToString().Trim() + "宸插瓨鍦�";
                         list.Add(erro);
                     }
                 }
@@ -2035,10 +2034,10 @@
             //瀛愯〃
             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() != "")
+                if (excelTable[1].Rows[k][2].ToString().Trim() != null && excelTable[1].Rows[k][2].ToString().Trim() != "")
                 {
                     sql = @"select *  from TRole where role_code=@role_code";
-                    dynamicParams.Add("@role_code", excelTable[1].Rows[k][1].ToString().Trim());
+                    dynamicParams.Add("@role_code", excelTable[1].Rows[k][2].ToString().Trim());
                     dt = DapperHelper.selectdata(sql, dynamicParams);
                     if (dt.Rows.Count > 0)
                     {
@@ -2049,6 +2048,53 @@
                         list.Add(erro);
                     }
                 }
+                if (excelTable[1].Rows[k][1].ToString().Trim() != null && excelTable[1].Rows[k][1].ToString().Trim() != "")
+                {
+                    sql = @"select *  from TOrganization where org_code=@org_code";
+                    dynamicParams.Add("@org_code", excelTable[1].Rows[k][1].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][1].ToString().Trim() + "涓嶅瓨鍦�";
+                        list.Add(erro);
+                    }
+                }
+                if (excelTable[1].Rows[k][4].ToString().Trim() != null && excelTable[1].Rows[k][4].ToString().Trim() != "")
+                {
+                    sql = @"select torg_code  from TRoleType where roletype_code=@roletype_code";
+                    dynamicParams.Add("@roletype_code", excelTable[1].Rows[k][4].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt != null && dt.Rows.Count > 0)
+                    {
+                        if (dt.Rows[0]["torg_code"].ToString() != excelTable[1].Rows[k][1].ToString().Trim())
+                        {
+                            ExcelErro erro = new ExcelErro();
+                            erro.RoeNumber = "/";
+                            erro.ErrorField = "{瑙掕壊绫诲瀷缂栫爜}";
+                            erro.ErrorCont = "瑙掕壊琛�:{瑙掕壊绫诲瀷缂栫爜}瀛楁" + excelTable[1].Rows[k][4].ToString().Trim() + " 涓嶆槸缁勭粐缂栫爜:" + excelTable[1].Rows[k][1].ToString().Trim() + "涓嬬殑瑙掕壊缁�";
+                            list.Add(erro);
+                        }
+                    }
+                }
+            }
+            //鍒ゆ柇瀛愯〃缁勭粐缂栫爜涓嶅瓨鍦ㄤ簬涓昏〃缁勭粐缂栫爜涓殑鏁版嵁
+            var dt2 = 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> listRow2 = dt2.ToList();
+            if (listRow2.Count > 0)
+            {
+                ExcelErro erro = new ExcelErro();
+                erro.RoeNumber = "/";
+                erro.ErrorField = "{缁勭粐缂栫爜}";
+                erro.ErrorCont = "瑙掕壊琛�:{缁勭粐缂栫爜}瀛楁涓湁鍊煎湪瑙掕壊绫诲瀷琛�:{缁勭粐缂栫爜}涓笉瀛樺湪";
+                list.Add(erro);
             }
             //鍒ゆ柇瀛愯〃澶栭敭涓嶅瓨鍦ㄤ簬涓昏〃涓婚敭涓殑鏁版嵁
             var dt3 = from r in excelTable[1].AsEnumerable()
@@ -2277,103 +2323,41 @@
             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);
-            }
+            DataTable excelTable = new DataTable();
+            list = ImportExcel.ExcelToTableErro(FileCode);    //楠岃瘉Excel鏁版嵁蹇呭~瀛楁鏄惁涓虹┖銆佸敮涓�瀛楁鏄惁閲嶅
+            excelTable = ImportExcel.ExcelToTable(FileCode);  //鑾峰彇Excel鏁版嵁
             //璁惧娓呭崟琛�
-            for (int k = 0; k < excelTable[2].Rows.Count; k++)
+            for (int k = 0; k < excelTable.Rows.Count; k++)
             {
-                if (excelTable[2].Rows[k][1].ToString().Trim() != null && excelTable[2].Rows[k][1].ToString().Trim() != "")
+                if (excelTable.Rows[k][1].ToString().Trim() != null && excelTable.Rows[k][1].ToString().Trim() != "")
                 {
                     sql = @"select *  from TEqpInfo where code=@code";
-                    dynamicParams.Add("@code", excelTable[2].Rows[k][1].ToString().Trim());
+                    dynamicParams.Add("@code", excelTable.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() + "涓庤澶囩粍娓呭崟涓缃涓嶄笂";
+                        erro.ErrorCont = "璁惧琛�:{璁惧缂栧彿(鍞竴)}瀛楁" + excelTable.Rows[k][1].ToString().Trim() + "宸插瓨鍦�";
                         list.Add(erro);
                     }
                 }
             }
             //杞﹂棿鍒ゆ柇
-            for (int m = 0; m < excelTable[2].Rows.Count; m++)
+            for (int m = 0; m < excelTable.Rows.Count; m++)
             {
-                if (excelTable[2].Rows[m][6].ToString().Trim() != null && excelTable[2].Rows[m][6].ToString().Trim() != "")
+                if (excelTable.Rows[m][4].ToString().Trim() != null && excelTable.Rows[m][4].ToString().Trim() != "")
                 {
-                    sql = @"select *  from TOrganization where org_name=@code and description='W'";
-                    dynamicParams.Add("@code", excelTable[2].Rows[m][6].ToString().Trim());
+                    sql = @"select *  from TOrganization where org_code=@code and description='W'";
+                    dynamicParams.Add("@code", excelTable.Rows[m][4].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() + "涓嶅瓨鍦�";
+                        erro.ErrorField = "{杞﹂棿缂栫爜}";
+                        erro.ErrorCont = "璁惧琛�:{杞﹂棿缂栫爜}瀛楁" + excelTable.Rows[m][4].ToString().Trim() + "涓嶅瓨鍦�";
                         list.Add(erro);
                     }
                 }
@@ -2393,7 +2377,7 @@
             {
                 StuCode = "200";
                 message = "鏁版嵁楠岃瘉鎴愬姛";
-                count = excelTable[0].Rows.Count + excelTable[1].Rows.Count+excelTable[2].Rows.Count;
+                count = excelTable.Rows.Count;
             }
             return list;
         }
@@ -3254,20 +3238,31 @@
                 //瀵煎叆鐝粍
                 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
+                    sql = @"select *   from TGroup where group_code=@group_code";
+                    dynamicParams.Add("@group_code", excelTable[0].Rows[k][2].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
                     {
-                        str = sql,
-                        parm = new
+                        continue;
+                    }
+                    else 
+                    {
+                        sql = @"insert into TGroup(group_code,group_name,description,lm_user,lm_date,torg_code) 
+                            values(@group_code,@group_name,@description,@Operator,@CreateDate,@torg_code)";
+                        list.Add(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
-                        }
-                    });
+                            str = sql,
+                            parm = new
+                            {
+                                group_code = excelTable[0].Rows[k][2].ToString().Trim(),
+                                group_name = excelTable[0].Rows[k][3].ToString().Trim(),
+                                description = excelTable[0].Rows[k][4].ToString().Trim(),
+                                CreateDate = DateTime.Now.ToString(),
+                                Operator = User,
+                                torg_code= excelTable[0].Rows[k][1].ToString().Trim()
+                            }
+                        });
+                    }
                 }
                 //瀵煎叆鐢ㄦ埛
                 for (int i = 0; i < excelTable[1].Rows.Count; i++)
@@ -3292,7 +3287,13 @@
                         default:
                             break;
                     }
-
+                    sql = @"select *   from TUser where usercode=@usercode";
+                    dynamicParams.Add("@usercode", excelTable[1].Rows[i][1].ToString().Trim());
+                    dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
+                    {
+                        continue;
+                    }
                     sql = @"insert into TUser(usercode,username,password,enable,mobile,lm_date,email,lm_user,stu_torgcode,wagetype,usergroup_code) 
                             values(@UserCode,@UserName,@password,@Enable,@Mobile,@CreateDate,@Email,@Operator,@StuOrg,@wagetype,@usergroup_code)";
                     list.Add(new
@@ -3353,34 +3354,36 @@
                 //瀵煎叆瑙掕壊绫诲瀷
                 for (int k = 0; k < excelTable[0].Rows.Count; k++)
                 {
-                    sql = @"insert into TRoleType(roletype_code,roletype_name) 
-                            values(@roletype_code,@roletype_name)";
+                    sql = @"insert into TRoleType(roletype_code,roletype_name,torg_code) 
+                            values(@roletype_code,@roletype_name,@torg_code)";
                     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()
+                            roletype_code = excelTable[0].Rows[k][2].ToString().Trim(),
+                            roletype_name = excelTable[0].Rows[k][3].ToString().Trim(),
+                            torg_code = excelTable[0].Rows[k][1].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)";
+                    sql = @"insert into TRole(role_code,role_name,roletype_code,description,lm_user,lm_date,torg_code) 
+                            values(@role_code,@role_name,@roletype_code,@description,@Operator,@CreateDate,@torg_code)";
                     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(),
+                            role_code = excelTable[1].Rows[i][2].ToString().Trim(),
+                            role_name = excelTable[1].Rows[i][3].ToString().Trim(),
+                            roletype_code = excelTable[1].Rows[i][4].ToString().Trim(),
+                            description = excelTable[1].Rows[i][5].ToString().Trim(),
                             Operator = User,
-                            CreateDate = DateTime.Now.ToString()
+                            CreateDate = DateTime.Now.ToString(),
+                            torg_code = excelTable[1].Rows[i][1].ToString().Trim()
                         }
                     });
                 }
@@ -3612,77 +3615,37 @@
             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()
-
-                        }
-                    });
-                }
+                DataTable excelTable = new DataTable();
+                excelTable = ImportExcel.ExcelToTable(FileCode);
                 //瀵煎叆璁惧娓呭崟
-                for (int k = 0; k < excelTable[2].Rows.Count; k++)
+                for (int k = 0; k < excelTable.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)";
+                    sql = @"select *   from TEqpInfo where code=@eqp_code";
+                    dynamicParams.Add("@eqp_code", excelTable.Rows[k][1].ToString().Trim());
+                    DataTable dt = DapperHelper.selectdata(sql, dynamicParams);
+                    if (dt.Rows.Count > 0)
+                    {
+                        continue;
+                    }
+                    sql = @"insert into TEqpInfo(code,name,wksp_code,input_date,operation_ration,enable,opc_uom,lm_user,lm_date) 
+                            values(@devicecode,@devicename,@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(),
+                            devicecode = excelTable.Rows[k][1].ToString().Trim(),
+                            devicename = excelTable.Rows[k][2].ToString().Trim(),
+                            workshop = excelTable.Rows[k][4].ToString().Trim(),
+                            importdate = excelTable.Rows[k][3].ToString().Trim(),
+                            ratio = excelTable.Rows[k][6].ToString().Trim(),
+                            status = excelTable.Rows[k][5].ToString().Trim(),
                             uom = "鍙�",
                             lm_user = User,
                             lm_date = DateTime.Now.ToString()
                         }
                     });
                 }
-
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {

--
Gitblit v1.9.3