lcl 2 лет назад
Родитель
Сommit
a0e3a734ef
1 измененных файлов с 12 добавлено и 3 удалено
  1. 12 3
      Areas/Admin/Controllers/MainServer/CustomQueryDoController.cs

+ 12 - 3
Areas/Admin/Controllers/MainServer/CustomQueryDoController.cs

@@ -342,12 +342,12 @@ namespace MySystem.Areas.Admin.Controllers
         public string Excute(int Id)
         {
             var sysAdmin = bsdb.SysAdmin.FirstOrDefault(m => m.AdminName == SysUserName && m.Status > -1);
-
+            string ConnectStr = "";
             Dictionary<string, string> dicVals = new Dictionary<string, string>();
             List<CustomQuerySub> subItems = db.CustomQuerySub.Where(m => m.ParentId == Id).ToList();
             foreach(CustomQuerySub sub in subItems)
             {
-                string ConnectStr = sub.DatabaseConnect;
+                ConnectStr = sub.DatabaseConnect;
                 if(!string.IsNullOrEmpty(ConnectStr))
                 {
                     ConnectStr = GetConnectStr(sub.DatabaseConnect);
@@ -400,6 +400,15 @@ namespace MySystem.Areas.Admin.Controllers
                 }
             }
             CustomQuery item = db.CustomQuery.FirstOrDefault(m => m.Id == Id) ?? new CustomQuery();
+            ConnectStr = item.DatabaseConnect;
+            if(!string.IsNullOrEmpty(ConnectStr))
+            {
+                ConnectStr = GetConnectStr(item.DatabaseConnect);
+            }
+            else
+            {
+                ConnectStr = MysqlConn.ReadSqlConnStr;
+            }
             string sql = item.SqlContent;
             MatchCollection mc = Regex.Matches(sql, @"\$\{.*?\}\$");
             foreach(Match m in mc)
@@ -419,7 +428,7 @@ namespace MySystem.Areas.Admin.Controllers
                 sql = sql.Replace(m.Value, str);
             }
             var FileName = item.Title + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
-            string SendData = "{\"Operater\":\"" + sysAdmin.Id + "\",\"SqlString\":\"" + sql + "\",\"FileName\":\"执行\",\"MaxCount\":\"" + item.ExcuteFlag + "\"}";
+            string SendData = "{\"Operater\":\"" + sysAdmin.Id + "\",\"SqlString\":\"" + sql + "\",\"FileName\":\"执行\",\"MaxCount\":\"" + item.ExcuteFlag + "\",\"ConnectStr\":\"" + ConnectStr + "\"}";
             RedisDbconn.Instance.AddList("ExportQueue", SendData);
             return "success";
         }