From 74982163f33d7ebce164aae1bc3c6890fb156407 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Fri, 8 Oct 2021 14:47:47 +0800 Subject: [PATCH 001/231] =?UTF-8?q?=E4=BF=AE=E5=A4=8DMYSQL=20=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E7=89=B9=E6=AE=8A=E5=90=8D=E7=A7=B0BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SoEasyPlatform/Code/Util/PubMehtod.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/SoEasyPlatform/Code/Util/PubMehtod.cs b/SoEasyPlatform/Code/Util/PubMehtod.cs index 49b5474d..07f5ac71 100644 --- a/SoEasyPlatform/Code/Util/PubMehtod.cs +++ b/SoEasyPlatform/Code/Util/PubMehtod.cs @@ -11,6 +11,7 @@ public static string GetCsharpName(string dbColumnName) { if (dbColumnName.Contains("_")) { + dbColumnName = dbColumnName.TrimEnd('_'); var array = dbColumnName.Split('_').Select(it=>GetFirstUpper(it)).ToArray(); return string.Join("", array); } From bdd1ad65d63e77b2e9544bf50fc8e09a4e1f5de2 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Fri, 8 Oct 2021 14:54:05 +0800 Subject: [PATCH 002/231] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=AD=97=E6=AF=8D?= =?UTF-8?q?=E5=A4=A7=E5=B0=8F=E5=86=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SoEasyPlatform/Code/Util/PubMehtod.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/SoEasyPlatform/Code/Util/PubMehtod.cs b/SoEasyPlatform/Code/Util/PubMehtod.cs index 07f5ac71..df657952 100644 --- a/SoEasyPlatform/Code/Util/PubMehtod.cs +++ b/SoEasyPlatform/Code/Util/PubMehtod.cs @@ -25,7 +25,7 @@ private static string GetFirstUpper(string dbColumnName) { if (dbColumnName == null) return null; - return dbColumnName.Substring(0, 1).ToUpper() + dbColumnName.Substring(1); + return dbColumnName.Substring(0, 1).ToUpper() + dbColumnName.Substring(1).ToLower(); } } } From 74aa6d27a5725ac7a0bf16a84bf78b1b91de44d5 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Fri, 8 Oct 2021 14:56:36 +0800 Subject: [PATCH 003/231] - --- SoEasyPlatform/Code/Util/PubMehtod.cs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/SoEasyPlatform/Code/Util/PubMehtod.cs b/SoEasyPlatform/Code/Util/PubMehtod.cs index df657952..96c4c77b 100644 --- a/SoEasyPlatform/Code/Util/PubMehtod.cs +++ b/SoEasyPlatform/Code/Util/PubMehtod.cs @@ -12,7 +12,7 @@ public static string GetCsharpName(string dbColumnName) if (dbColumnName.Contains("_")) { dbColumnName = dbColumnName.TrimEnd('_'); - var array = dbColumnName.Split('_').Select(it=>GetFirstUpper(it)).ToArray(); + var array = dbColumnName.Split('_').Select(it=>GetFirstUpper(it,true)).ToArray(); return string.Join("", array); } else @@ -21,11 +21,18 @@ public static string GetCsharpName(string dbColumnName) } } - private static string GetFirstUpper(string dbColumnName) + private static string GetFirstUpper(string dbColumnName,bool islower=false) { if (dbColumnName == null) return null; - return dbColumnName.Substring(0, 1).ToUpper() + dbColumnName.Substring(1).ToLower(); + if (islower) + { + return dbColumnName.Substring(0, 1).ToUpper() + dbColumnName.Substring(1).ToLower(); + } + else + { + return dbColumnName.Substring(0, 1).ToUpper() + dbColumnName.Substring(1); + } } } } From 0d1543ac399a01a2d852ff8d30923b598b0c1bf8 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Fri, 8 Oct 2021 17:47:55 +0800 Subject: [PATCH 004/231] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=B6=85=E8=BF=87100?= =?UTF-8?q?=E4=B8=AA=E5=AE=9E=E4=BD=93=E4=B8=80=E4=B8=8B=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E5=87=BA=E9=94=99BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Apis/CodeTableApp/CodeTableController.cs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs b/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs index 1f23a22e..d3997d73 100644 --- a/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs +++ b/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs @@ -165,12 +165,15 @@ public ActionResult> DeleteCodeTable([FromForm] string model) if (!string.IsNullOrEmpty(model)) { var list = Newtonsoft.Json.JsonConvert.DeserializeObject>(model); - var exp = Expressionable.Create(); - foreach (var item in list) + Db.Utilities.PageEach(list, 50, eitem => { - exp.Or(it => it.Id == item.Id); - } - CodeTableDb.Update(it => new CodeTable() { IsDeleted = true }, exp.ToExpression()); + var exp = Expressionable.Create(); + foreach (var item in eitem) + { + exp.Or(it => it.Id == item.Id); + } + CodeTableDb.Update(it => new CodeTable() { IsDeleted = true }, exp.ToExpression()); + }); } result.IsSuccess = true; return result; From 6017c44645f66a98dfd20b28a82b9e7e8a1568b6 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Fri, 8 Oct 2021 19:03:35 +0800 Subject: [PATCH 005/231] =?UTF-8?q?=E5=88=86=E9=A1=B5=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Apis/CodeTableApp/CodeTableController.cs | 116 ++++++++++-------- 1 file changed, 62 insertions(+), 54 deletions(-) diff --git a/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs b/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs index d3997d73..6ba4e39a 100644 --- a/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs +++ b/SoEasyPlatform/Apis/CodeTableApp/CodeTableController.cs @@ -514,72 +514,80 @@ public ActionResult> UpdateEntity([FromForm] string model, [From if (!string.IsNullOrEmpty(model)) { var list = Newtonsoft.Json.JsonConvert.DeserializeObject>(model); - var oldList = CodeTableDb.AsQueryable().In(list.Select(it => it.Id).ToList()).ToList(); - var oldColumns = Db.Queryable((c, t) => c.CodeTableId == t.Id).Where((c, t) => oldList.Select(it => it.Id).Contains(t.Id)).Select((c, t) => new { TableId = t.Id, TableName = t.TableName, Columns = c }).ToList(); - var alltables = tableDb.DbMaintenance.GetTableInfoList(false).Select(it => it.Name.ToLower()).ToList(); - var ids = list.Select(it => it.Id).ToList(); - var tableNames = list.Select(it => it.TableName.ToLower()).ToList(); - var errorTables = list.Where(it => !alltables.Contains(it.TableName.ToLower()) && !alltables.Contains(it.ClassName.ToLower())).ToList(); - base.Check(errorTables.Any(), string.Join(",", errorTables.Select(y => y.TableName ?? y.ClassName)) + "未创建表不能同步"); - try + Db.Utilities.PageEach(list, 20, pageList => { - Db.BeginTran(); - CodeTableDb.DeleteByIds(ids.Select(it => (object)it).ToArray()); - var dbTableGridList = tableDb.DbMaintenance.GetTableInfoList(false).Where(it => tableNames.Contains(it.Name.ToLower())).Select(it => new DbTableGridViewModel() - { - Description = it.Description, - Name = it.Name - }); - if (dbTableGridList.Any()) - { - SaveCodetableImport(dbid, Newtonsoft.Json.JsonConvert.SerializeObject(dbTableGridList)); - } - foreach (var item in oldList) - { - CodeTableDb.AsUpdateable(item).UpdateColumns(it => it.ClassName).WhereColumns(it => it.TableName).ExecuteCommand(); - } - List UpdateColumns = new List(); - foreach (var item in oldColumns.GroupBy(it => new { it.TableId, it.TableName }).ToList()) + UpdateEntityItem(dbid, tableDb, pageList); + }); + } + result.IsSuccess = true; + return result; + } + + private void UpdateEntityItem(int dbid, SqlSugarClient tableDb, List list) + { + var oldList = CodeTableDb.AsQueryable().In(list.Select(it => it.Id).ToList()).ToList(); + var oldColumns = Db.Queryable((c, t) => c.CodeTableId == t.Id).Where((c, t) => oldList.Select(it => it.Id).Contains(t.Id)).Select((c, t) => new { TableId = t.Id, TableName = t.TableName, Columns = c }).ToList(); + var alltables = tableDb.DbMaintenance.GetTableInfoList(false).Select(it => it.Name.ToLower()).ToList(); + var ids = list.Select(it => it.Id).ToList(); + var tableNames = list.Select(it => it.TableName.ToLower()).ToList(); + var errorTables = list.Where(it => !alltables.Contains(it.TableName.ToLower()) && !alltables.Contains(it.ClassName.ToLower())).ToList(); + base.Check(errorTables.Any(), string.Join(",", errorTables.Select(y => y.TableName ?? y.ClassName)) + "未创建表不能同步"); + try + { + Db.BeginTran(); + CodeTableDb.DeleteByIds(ids.Select(it => (object)it).ToArray()); + var dbTableGridList = tableDb.DbMaintenance.GetTableInfoList(false).Where(it => tableNames.Contains(it.Name.ToLower())).Select(it => new DbTableGridViewModel() + { + Description = it.Description, + Name = it.Name + }); + if (dbTableGridList.Any()) + { + SaveCodetableImport(dbid, Newtonsoft.Json.JsonConvert.SerializeObject(dbTableGridList)); + } + foreach (var item in oldList) + { + CodeTableDb.AsUpdateable(item).UpdateColumns(it => it.ClassName).WhereColumns(it => it.TableName).ExecuteCommand(); + } + List UpdateColumns = new List(); + foreach (var item in oldColumns.GroupBy(it => new { it.TableId, it.TableName }).ToList()) + { + var tableId = CodeTableDb.AsQueryable().Where(it => it.TableName == item.Key.TableName && it.DbId == dbid).First()?.Id; + if (tableId != null) { - var tableId = CodeTableDb.AsQueryable().Where(it => it.TableName == item.Key.TableName && it.DbId == dbid).First()?.Id; - if (tableId != null) + var columns = CodeColumnsDb.AsQueryable().Where(it => it.CodeTableId == tableId).ToList(); + foreach (var col in columns) { - var columns = CodeColumnsDb.AsQueryable().Where(it => it.CodeTableId == tableId).ToList(); - foreach (var col in columns) + var addColumn = item.FirstOrDefault(it => it.Columns.DbColumnName == col.DbColumnName); + if (addColumn != null) + { + col.ClassProperName = addColumn.Columns.ClassProperName; + UpdateColumns.Add(col); + } + else { - var addColumn = item.FirstOrDefault(it => it.Columns.DbColumnName == col.DbColumnName); - if (addColumn != null) - { - col.ClassProperName = addColumn.Columns.ClassProperName; - UpdateColumns.Add(col); - } - else - { - } } - foreach (var oldItem in item.ToList()) + } + foreach (var oldItem in item.ToList()) + { + if (oldItem.Columns.CodeType.Equals("ignore", StringComparison.CurrentCultureIgnoreCase)) { - if (oldItem.Columns.CodeType.Equals("ignore", StringComparison.CurrentCultureIgnoreCase)) - { - var mapp = _mapper.Map(oldItem.Columns); - mapp.CodeTableId = columns[0].CodeTableId; - CodeColumnsDb.AsInsertable(mapp).ExecuteCommand(); - } + var mapp = _mapper.Map(oldItem.Columns); + mapp.CodeTableId = columns[0].CodeTableId; + CodeColumnsDb.AsInsertable(mapp).ExecuteCommand(); } } } - CodeColumnsDb.AsUpdateable(UpdateColumns).UpdateColumns(it => it.ClassProperName).ExecuteCommand(); - Db.CommitTran(); - } - catch (Exception ex) - { - Db.RollbackTran(); - throw ex; } + CodeColumnsDb.AsUpdateable(UpdateColumns).UpdateColumns(it => it.ClassProperName).ExecuteCommand(); + Db.CommitTran(); + } + catch (Exception ex) + { + Db.RollbackTran(); + throw ex; } - result.IsSuccess = true; - return result; } From 70e1383b8cfe4b0c72d2d2f149a39a7ead6f0ef6 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Sat, 9 Oct 2021 19:04:52 +0800 Subject: [PATCH 006/231] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=BF=87=E6=BB=A4?= =?UTF-8?q?=E5=99=A8=E9=87=8D=E5=A4=8D=E6=B3=A8=E5=86=8CBUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SoEasyPlatform/Models/Dal/Repository.cs | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/SoEasyPlatform/Models/Dal/Repository.cs b/SoEasyPlatform/Models/Dal/Repository.cs index 2a089355..3e2eb236 100644 --- a/SoEasyPlatform/Models/Dal/Repository.cs +++ b/SoEasyPlatform/Models/Dal/Repository.cs @@ -19,12 +19,15 @@ public Repository(ISqlSugarClient context = null) : base(context)//注意这里 public static SqlSugarClient GetInstance() { var db =DbScoped.Sugar; - db.QueryFilter.Add(new TableFilterItem(it => it.IsDeleted == false)); - db.QueryFilter.Add(new TableFilterItem(it => it.IsDeleted == false)); - db.QueryFilter.Add(new TableFilterItem