diff --git a/BasicData/Tnb.BasicData.Entities/Entity/BasCustomer.cs b/BasicData/Tnb.BasicData.Entities/Entity/BasCustomer.cs new file mode 100644 index 00000000..698ae11b --- /dev/null +++ b/BasicData/Tnb.BasicData.Entities/Entity/BasCustomer.cs @@ -0,0 +1,174 @@ +using System; +using System.Linq; +using System.Text; +using SqlSugar; + +namespace Tnb.BasicData.Entities +{ + /// + ///客户信息 + /// + [SugarTable("bas_customer")] + public partial class BasCustomer + { + public BasCustomer(){ + + this.org_id =Convert.ToString("NULL::character varying"); + this.short_name =Convert.ToString("NULL::character varying"); + this.full_address =Convert.ToString("NULL::character varying"); + this.postal_code =Convert.ToString("NULL::character varying"); + this.country =Convert.ToString("NULL::character varying"); + this.province =Convert.ToString("NULL::character varying"); + this.city =Convert.ToString("NULL::character varying"); + this.district =Convert.ToString("NULL::character varying"); + this.street =Convert.ToString("NULL::character varying"); + this.contact_name =Convert.ToString("NULL::character varying"); + this.contact_phone =Convert.ToString("NULL::character varying"); + this.contact_mobile =Convert.ToString("NULL::character varying"); + this.create_id =Convert.ToString("NULL::character varying"); + this.modify_id =Convert.ToString("NULL::character varying"); + + } + /// + /// Desc:编号 + /// Default: + /// Nullable:False + /// + [SugarColumn(IsPrimaryKey=true)] + public string id {get;set;} + + /// + /// Desc:客户代码 + /// Default: + /// Nullable:False + /// + public string customer_code {get;set;} + + /// + /// Desc:客户名称 + /// Default: + /// Nullable:False + /// + public string customer_name {get;set;} + + /// + /// Desc:所属组织 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? org_id {get;set;} + + /// + /// Desc:客户简称 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? short_name {get;set;} + + /// + /// Desc:详细地址 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? full_address {get;set;} + + /// + /// Desc:邮编 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? postal_code {get;set;} + + /// + /// Desc:国家 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? country {get;set;} + + /// + /// Desc:省 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? province {get;set;} + + /// + /// Desc:市 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? city {get;set;} + + /// + /// Desc:区 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? district {get;set;} + + /// + /// Desc:街道地址 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? street {get;set;} + + /// + /// Desc:联系人名称 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? contact_name {get;set;} + + /// + /// Desc:联系人电话 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? contact_phone {get;set;} + + /// + /// Desc:联系人手机 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? contact_mobile {get;set;} + + /// + /// Desc:创建用户 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? create_id {get;set;} + + /// + /// Desc:创建时间 + /// Default: + /// Nullable:True + /// + public DateTime? create_time {get;set;} + + /// + /// Desc:修改用户 + /// Default:NULL::character varying + /// Nullable:True + /// + public string? modify_id {get;set;} + + /// + /// Desc:修改时间 + /// Default: + /// Nullable:True + /// + public DateTime? modify_time {get;set;} + + /// + /// Desc:扩展字段 + /// Default: + /// Nullable:True + /// + public string? extras {get;set;} + + } +} diff --git a/common/Tnb.SqlSugar/Tnb.SqlSugar.csproj b/common/Tnb.SqlSugar/Tnb.SqlSugar.csproj index e71e8896..197c66e6 100644 --- a/common/Tnb.SqlSugar/Tnb.SqlSugar.csproj +++ b/common/Tnb.SqlSugar/Tnb.SqlSugar.csproj @@ -18,7 +18,7 @@ - + diff --git a/system/Tnb.Systems/System/DataBaseService.cs b/system/Tnb.Systems/System/DataBaseService.cs index 592ef1c1..da72766c 100644 --- a/system/Tnb.Systems/System/DataBaseService.cs +++ b/system/Tnb.Systems/System/DataBaseService.cs @@ -386,51 +386,39 @@ public class DataBaseService : IDynamicApiController, ITransient sugarClient = _dataBaseManager.ChangeDataBase(link); } - string CustomFormatName(string s) + var entityName = string.Join("", input.TableName.Split('_').Select(a => a.ToPascalCase())); + foreach (var item in sugarClient.DbMaintenance.GetTableInfoList().Where(t => t.Name == input.TableName)) { - var pos = 0; - if ((pos = s.IndexOf("_", StringComparison.Ordinal)) > -1) - { - var separatorStrings = Regex.Split(s, @"_", RegexOptions.Compiled); - if (separatorStrings.Length > 2) - { - var sb = new StringBuilder(); - foreach (var item in separatorStrings) - { - sb.Append(item.ToUpperCase()); - } - return sb.ToString(); - } - else - { - var first = s.AsSpan().Slice(0, pos).ToString().ToUpperCase(); - var second = s.AsSpan().Slice(pos + 1).ToString().ToUpperCase(); - return $"{first}{second}"; - } - } - else - { - return s.ToUpperCase(); - } - } - - foreach (var item in sugarClient!.DbMaintenance.GetTableInfoList().Where(t => t.Name == input.TableName)) - { - string entityName = CustomFormatName(item.Name);/*实体名首字母大写*/ + //string entityName = CustomFormatName(item.Name);/*实体名首字母大写*/ sugarClient.MappingTables.Add(entityName, item.Name); - foreach (var col in sugarClient.DbMaintenance.GetColumnInfosByTableName(item.Name)) - { - //var colName = CustomFormatName(col.DbColumnName); - sugarClient.MappingColumns.Add(col.DbColumnName /*类的属性首字母大写*/, col.DbColumnName, entityName); - } + //foreach (var col in sugarClient.DbMaintenance.GetColumnInfosByTableName(item.Name)) + //{ + // //var colName = CustomFormatName(col.DbColumnName); + // sugarClient.MappingColumns.Add(col.DbColumnName /*类的属性首字母大写*/, col.DbColumnName, entityName); + //} } + var prefix = input.TableName.Split('_')[0]; + Dictionary nsMapper = new() + { + {"bas", "Tnb.BasicData.Entities" }, + {"prd", "Tnb.ProductionMgr.Entities" }, + {"wms", "Tnb.WarehouseMgr.Entities" }, + {"eqp", "Tnb.EquipMgr.Entities" }, + {"tool", "Tnb.EquipMgr.Entities" }, + {"qc", "Tnb.QcMgr.Entities" }, + }; sugarClient.DbFirst.Where(input.TableName) - .FormatFileName(CustomFormatName) + .SettingConstructorTemplate(a => + { + return a; + }) + //.IsCreateDefaultValue(true) .IsCreateAttribute() - .CreateClassFile(dir, "DbModels"); + .StringNullable() + .CreateClassFile(dir, nsMapper.ContainsKey(prefix) ? nsMapper[prefix] : "Tnb.Entities"); var previewContent = ""; - var codeFile = Path.Combine(dir, $"{CustomFormatName(input.TableName)}.cs"); + var codeFile = Path.Combine(dir, $"{entityName}.cs"); if (File.Exists(codeFile)) { using (var sr = File.OpenText(codeFile))