From 55498a1e0f5f48faceedd723ea363a6518b54b91 Mon Sep 17 00:00:00 2001
From: wxd <123@qq.com>
Date: Fri, 26 Apr 2024 23:35:38 +0800
Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E8=A1=A8=E3=80=81=E8=8F=9C=E5=8D=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
 .../MenuInfos/GetMyMenuInfoListDto.cs         |    43 +
 .../MenuInfos/MenuInfoDto.cs                  |     1 -
 .../BaseDataHandleAppService.cs               |   102 +-
 .../MenuInfos/MenuInfoAppService.cs           |    49 +-
 .../L_JYTMXX_TJs/L_JYTMXX_TJ.cs               |     2 +-
 .../ReportFormatTemplate.cs                   |     4 +-
 .../ReportFormats/ReportFormat.cs             |     2 +-
 ...20240426142107_init20240426001.Designer.cs | 14089 ++++++++++++++++
 .../20240426142107_init20240426001.cs         |   153 +
 ...20240426151955_init20240426002.Designer.cs | 14089 ++++++++++++++++
 .../20240426151955_init20240426002.cs         |    36 +
 ...20240426153157_init20240426003.Designer.cs | 14089 ++++++++++++++++
 .../20240426153157_init20240426003.cs         |    35 +
 .../Migrations/PeisDbContextModelSnapshot.cs  |   259 +-
 .../appsettings.json                          |     8 +-
 15 files changed, 42914 insertions(+), 47 deletions(-)
 create mode 100644 src/Shentun.Peis.Application.Contracts/MenuInfos/GetMyMenuInfoListDto.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426142107_init20240426001.Designer.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426142107_init20240426001.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426151955_init20240426002.Designer.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426151955_init20240426002.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426153157_init20240426003.Designer.cs
 create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426153157_init20240426003.cs
diff --git a/src/Shentun.Peis.Application.Contracts/MenuInfos/GetMyMenuInfoListDto.cs b/src/Shentun.Peis.Application.Contracts/MenuInfos/GetMyMenuInfoListDto.cs
new file mode 100644
index 0000000..fb47238
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/MenuInfos/GetMyMenuInfoListDto.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations.Schema;
+using System.Text;
+
+namespace Shentun.Peis.MenuInfos
+{
+    public class GetMyMenuInfoListDto
+    {
+        public Guid Id { get; set; }
+
+        /// 
+        /// 名称
+        /// 
+        public string DisplayName { get; set; }
+
+
+        /// 
+        /// 路由地址
+        /// 
+        public string? RouteUrl { get; set; }
+
+
+        /// 
+        /// 菜单图标
+        /// 
+        public string? IconName { get; set; }
+
+
+        /// 
+        /// 父id
+        /// 
+        public Guid? ParentId { get; set; }
+
+        public int DisplayOrder { get; set; }
+
+
+        /// 
+        /// 菜单类型  0 一级菜单  1 带路径的菜单  2 按钮
+        /// 
+        public char MenuType { get; set; }
+    }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/MenuInfos/MenuInfoDto.cs b/src/Shentun.Peis.Application.Contracts/MenuInfos/MenuInfoDto.cs
index 349714c..db4a1f9 100644
--- a/src/Shentun.Peis.Application.Contracts/MenuInfos/MenuInfoDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/MenuInfos/MenuInfoDto.cs
@@ -45,7 +45,6 @@ namespace Shentun.Peis.MenuInfos
         /// 
         /// 菜单类型  0 一级菜单  1 带路径的菜单  2 按钮
         /// 
-        [Column("menu_type")]
         public char MenuType { get; set; }
 
     }
diff --git a/src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs b/src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs
index a154095..e6d177b 100644
--- a/src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs
+++ b/src/Shentun.Peis.Application/DataMigrations/BaseDataHandleAppService.cs
@@ -55,6 +55,14 @@ namespace Shentun.Peis.DataMigrations
         });
 
         private readonly SqlSugarClient PgDb = new SqlSugarClient(new ConnectionConfig()
+        {
+            ConnectionString = "Host=140.143.162.39;Port=5432;Database=ShentunPeis070703;User ID=postgres;Password=shentun123;",
+            DbType = SqlSugar.DbType.PostgreSQL,
+            IsAutoCloseConnection = true
+        });
+
+
+        private readonly SqlSugarClient PgNWDb = new SqlSugarClient(new ConnectionConfig()
         {
             ConnectionString = "Host=10.1.12.140;Port=5432;Database=ShentunPeis;User ID=postgres;Password=st123;",
             DbType = SqlSugar.DbType.PostgreSQL,
@@ -62,6 +70,7 @@ namespace Shentun.Peis.DataMigrations
         });
 
 
+
         ////默认指引类别ID
         //private readonly Guid defaultGuidTypeId = Guid.Parse("3a120284-df18-7b36-4b12-0423a7d5c1c6");
         ////默认体检报告类别ID
@@ -117,6 +126,9 @@ namespace Shentun.Peis.DataMigrations
         private readonly IRepository _sumSuggestionHeaderRepository;
         private readonly IRepository _sumSuggestionContentRepository;
         private readonly IRepository _sumDiagnosisRepository;
+        private readonly IRepository _reportRepository;
+        private readonly IRepository _reportFormatRepository;
+        private readonly IRepository _reportFormatTemplateRepository;
 
         private Dictionary veryPatientNo = new Dictionary();
 
@@ -163,7 +175,10 @@ namespace Shentun.Peis.DataMigrations
             IRepository sumSummaryContentRepository,
             IRepository sumSuggestionHeaderRepository,
             IRepository sumSuggestionContentRepository,
-            IRepository sumDiagnosisRepository)
+            IRepository sumDiagnosisRepository,
+            IRepository reportRepository,
+            IRepository reportFormatRepository,
+            IRepository reportFormatTemplateRepository)
         {
             _deviceTypeRepository = deviceTypeRepository;
             _itemTypeRepository = itemTypeRepository;
@@ -208,6 +223,9 @@ namespace Shentun.Peis.DataMigrations
             _sumSuggestionHeaderRepository = sumSuggestionHeaderRepository;
             _sumSuggestionContentRepository = sumSuggestionContentRepository;
             _sumDiagnosisRepository = sumDiagnosisRepository;
+            _reportRepository = reportRepository;
+            _reportFormatRepository = reportFormatRepository;
+            _reportFormatTemplateRepository = reportFormatTemplateRepository;
         }
 
 
@@ -2215,7 +2233,7 @@ namespace Shentun.Peis.DataMigrations
 
                     sql_update += $" where id='{patientRegisterId}' ";
 
-                    await PgDb.Ado.ExecuteCommandAsync(sql_update);
+                    await PgNWDb.Ado.ExecuteCommandAsync(sql_update);
                     string sql_update_status = $"update patient_register set is_doctor='Y'  where patient_register_id='{row["patient_register_id"].ToString()}' ";
                     await Db.Ado.ExecuteCommandAsync(sql_update_status);
 
@@ -3004,6 +3022,86 @@ namespace Shentun.Peis.DataMigrations
 
         #endregion
 
+
+
+        #region 迁移报表数据
+
+        /// 
+        /// 迁移云端报表数据
+        /// 
+        /// 
+        public async Task TransferReportData()
+        {
+            var oldReportList = await PgDb.Ado.GetDataTableAsync("select id,display_name,is_active from report  ");
+
+            if (oldReportList.Rows.Count > 0)
+            {
+                foreach (DataRow row in oldReportList.Rows)
+                {
+                    Report reportEntity = new Report
+                    {
+                        DisplayName = row["display_name"].ToString(),
+                        IsActive = Convert.ToChar(row["is_active"].ToString())
+                    };
+
+                    reportEntity.SetId(row["id"].ToString());
+
+                    await _reportRepository.InsertAsync(reportEntity, true);
+
+
+                }
+            }
+
+            var oldReportFormatList = await PgDb.Ado.GetDataTableAsync("select id,display_name,is_default,report_id from report_format  ");
+
+            if (oldReportFormatList.Rows.Count > 0)
+            {
+                foreach (DataRow row in oldReportFormatList.Rows)
+                {
+                    ReportFormat reportFormatEntity = new ReportFormat
+                    {
+                        DisplayName = row["display_name"].ToString(),
+                        IsDefault = Convert.ToChar(row["is_default"].ToString()),
+                        ReportId = row["report_id"].ToString()
+                    };
+
+                    reportFormatEntity.SetId(row["id"].ToString());
+
+                    await _reportFormatRepository.InsertAsync(reportFormatEntity, true);
+
+                }
+            }
+
+            var oldReportFormatTemplateList = await PgDb.Ado.GetDataTableAsync("select id,display_name,report_format_id,template_file_type,template_file,data_set_json,is_system,is_default from report_format_template  ");
+
+            if (oldReportFormatTemplateList.Rows.Count > 0)
+            {
+                foreach (DataRow row in oldReportFormatTemplateList.Rows)
+                {
+                    ReportFormatTemplate reportFormatTemplateEntity = new ReportFormatTemplate
+                    {
+                        DisplayName = row["display_name"].ToString(),
+                        IsDefault = Convert.ToChar(row["is_default"].ToString()),
+                        DataSetJson = row["data_set_json"].ToString(),
+                        IsSystem = Convert.ToChar(row["is_system"].ToString()),
+                        ReportFormatId = row["report_format_id"].ToString(),
+                        TemplateFile = row["template_file"].ToString(),
+                        TemplateFileType = Convert.ToChar(row["template_file_type"].ToString())
+                    };
+
+                    reportFormatTemplateEntity.SetId(row["id"].ToString());
+
+                    await _reportFormatTemplateRepository.InsertAsync(reportFormatTemplateEntity, true);
+
+                }
+            }
+
+        }
+
+
+        #endregion
+
+
         private void LoadDLL()
         {
             // 定义dll文件夹路径
diff --git a/src/Shentun.Peis.Application/MenuInfos/MenuInfoAppService.cs b/src/Shentun.Peis.Application/MenuInfos/MenuInfoAppService.cs
index 67c6c92..1814159 100644
--- a/src/Shentun.Peis.Application/MenuInfos/MenuInfoAppService.cs
+++ b/src/Shentun.Peis.Application/MenuInfos/MenuInfoAppService.cs
@@ -190,19 +190,10 @@ namespace Shentun.Peis.MenuInfos
         /// 
         /// 
         [HttpGet("api/app/menuinfo/getmymenuinfolist")]
-        public async Task> GetMyMenuInfoListAsync()
+        public async Task> GetMyMenuInfoListAsync()
         {
-            var query = from a in await _menuInfoRepository.GetQueryableAsync()
-                        join b in await _identityUserRepository.GetQueryableAsync() on a.CreatorId equals b.Id into bb
-                        from ab in bb.DefaultIfEmpty()
-                        join c in await _identityUserRepository.GetQueryableAsync() on a.LastModifierId equals c.Id into cc
-                        from ac in cc.DefaultIfEmpty()
-                        select new
-                        {
-                            a,
-                            LastModifierName = ac != null ? ac.UserName : "",
-                            CreatorName = ab != null ? ab.UserName : ""
-                        };
+            var query = await _menuInfoRepository.GetQueryableAsync();
+
 
 
             string AdminId = _configuration.GetValue("AdminId");
@@ -211,32 +202,24 @@ namespace Shentun.Peis.MenuInfos
             {
                 var userRoles = await _userRepository.GetRolesAsync(_currentUser.Id.Value); //获取当前用户的角色
                 if (!userRoles.Any())
-                    return new List();
+                    return new List();
                 var userMenuInfoList = await _roleMenuInfoRepository.GetListAsync(m => userRoles.Select(s => s.Id).Contains(m.RoleId)); //当前持有的菜单项
                 if (!userMenuInfoList.Any())
-                    return new List();
-                query = query.Where(m => userMenuInfoList.Select(s => s.MenuInfoId).Distinct().Contains(m.a.Id));
+                    return new List();
+                query = query.Where(m => userMenuInfoList.Select(s => s.MenuInfoId).Distinct().Contains(m.Id));
             }
 
 
-            var entlistdto = query.Select(s => new MenuInfoDto
+            var entlistdto = query.Select(s => new GetMyMenuInfoListDto
             {
-                CreationTime = s.a.CreationTime,
-                CreatorId = s.a.CreatorId,
-                DisplayName = s.a.DisplayName,
-                DisplayOrder = s.a.DisplayOrder,
-                IconName = s.a.IconName,
-                Id = s.a.Id,
-                IsActive = s.a.IsActive,
-                LastModifierId = s.a.LastModifierId,
-                LastModificationTime = s.a.LastModificationTime,
-                MenuType = s.a.MenuType,
-                ParentId = s.a.ParentId,
-                RouteUrl = s.a.RouteUrl,
-                SimpleCode = s.a.SimpleCode,
-                CreatorName = s.CreatorName,
-                LastModifierName = s.LastModifierName
-            }).OrderBy(o => o.DisplayOrder).ThenBy(o => o.DisplayName).ToList();
+                DisplayName = s.DisplayName,
+                DisplayOrder = s.DisplayOrder,
+                IconName = s.IconName,
+                Id = s.Id,
+                MenuType = s.MenuType,
+                ParentId = s.ParentId,
+                RouteUrl = s.RouteUrl,
+            }).OrderBy(o => o.ParentId).ThenBy(o => o.DisplayOrder).ToList();
 
             return entlistdto;
         }
@@ -260,7 +243,7 @@ namespace Shentun.Peis.MenuInfos
                             LastModifierName = ac != null ? ac.UserName : "",
                             CreatorName = ab != null ? ab.UserName : ""
                         };
-             
+
             var userRoles = await _userRepository.GetRolesAsync(UserId); //获取当前用户的角色
             if (!userRoles.Any())
                 return new List();
diff --git a/src/Shentun.Peis.Domain/L_JYTMXX_TJs/L_JYTMXX_TJ.cs b/src/Shentun.Peis.Domain/L_JYTMXX_TJs/L_JYTMXX_TJ.cs
index b52f53e..82a3eda 100644
--- a/src/Shentun.Peis.Domain/L_JYTMXX_TJs/L_JYTMXX_TJ.cs
+++ b/src/Shentun.Peis.Domain/L_JYTMXX_TJs/L_JYTMXX_TJ.cs
@@ -44,7 +44,7 @@ namespace Shentun.Peis.L_JYTMXX_TJs
         /// 出生年月  YYYY-MM-DD
         /// 
         [Column("BRITHDAY")]
-        public DateTime BRITHDAY { get; set; }
+        public DateOnly BRITHDAY { get; set; }
 
         /// 
         /// 性别  (1-男,2-女,3-未知,传代码)
diff --git a/src/Shentun.Peis.Domain/ReportFormatTemplates/ReportFormatTemplate.cs b/src/Shentun.Peis.Domain/ReportFormatTemplates/ReportFormatTemplate.cs
index 304102b..dbfdc30 100644
--- a/src/Shentun.Peis.Domain/ReportFormatTemplates/ReportFormatTemplate.cs
+++ b/src/Shentun.Peis.Domain/ReportFormatTemplates/ReportFormatTemplate.cs
@@ -49,14 +49,14 @@ namespace Shentun.Peis.Models
         [Comment("模板文件")]
         public string DataSetJson { get; set; }
 
-        [Column("isSystem")]
+        [Column("is_system")]
         [Comment("是否系统自定义(N:停用,Y:启用)")]
         [Required]
         [MaxLength(1)]
         [DefaultValue('N')]
         public char IsSystem { get; set; }
 
-        [Column("isDefault")]
+        [Column("is_default")]
         [Comment("是否默认(N:不默认,Y:默认)")]
         [Required]
         [MaxLength(1)]
diff --git a/src/Shentun.Peis.Domain/ReportFormats/ReportFormat.cs b/src/Shentun.Peis.Domain/ReportFormats/ReportFormat.cs
index f815c1d..1dd3aab 100644
--- a/src/Shentun.Peis.Domain/ReportFormats/ReportFormat.cs
+++ b/src/Shentun.Peis.Domain/ReportFormats/ReportFormat.cs
@@ -31,7 +31,7 @@ namespace Shentun.Peis.Models
         [StringLength(64)]
         public string DisplayName { get; set; } = null!;
 
-        [Column("isDefault")]
+        [Column("is_default")]
         [Comment("默认标志(N:不默认,Y:默认)")]
         [Required]
         [MaxLength(1)]
diff --git a/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426142107_init20240426001.Designer.cs b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426142107_init20240426001.Designer.cs
new file mode 100644
index 0000000..bf241c1
--- /dev/null
+++ b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240426142107_init20240426001.Designer.cs
@@ -0,0 +1,14089 @@
+// 
+using System;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+using Shentun.Peis.EntityFrameworkCore;
+using Volo.Abp.EntityFrameworkCore;
+
+#nullable disable
+
+namespace Shentun.Peis.Migrations
+{
+    [DbContext(typeof(PeisDbContext))]
+    [Migration("20240426142107_init20240426001")]
+    partial class init20240426001
+    {
+        protected override void BuildTargetModel(ModelBuilder modelBuilder)
+        {
+#pragma warning disable 612, 618
+            modelBuilder
+                .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.PostgreSql)
+                .HasAnnotation("ProductVersion", "6.0.5")
+                .HasAnnotation("Relational:MaxIdentifierLength", 63);
+
+            NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
+
+            modelBuilder.Entity("AsbitemRoom", b =>
+                {
+                    b.Property("AsbitemId")
+                        .HasColumnType("uuid");
+
+                    b.Property("RoomId")
+                        .HasColumnType("uuid");
+
+                    b.HasKey("AsbitemId", "RoomId");
+
+                    b.ToTable("AsbitemRoom");
+                });
+
+            modelBuilder.Entity("RoomAsbitem", b =>
+                {
+                    b.Property("RoomId")
+                        .HasMaxLength(5)
+                        .HasColumnType("uuid")
+                        .HasColumnName("room_id")
+                        .IsFixedLength();
+
+                    b.Property("AsbitemId")
+                        .HasMaxLength(6)
+                        .HasColumnType("uuid")
+                        .HasColumnName("asbitem_id")
+                        .IsFixedLength();
+
+                    b.HasKey("RoomId", "AsbitemId")
+                        .HasName("pk_room_asbitem");
+
+                    b.HasIndex("AsbitemId");
+
+                    b.ToTable("room_asbitem", (string)null);
+
+                    b.HasComment("房间包含组合项目设置");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.HelloA", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id");
+
+                    b.Property("ADesc")
+                        .HasColumnType("text")
+                        .HasColumnName("a_desc");
+
+                    b.Property("AName")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("text")
+                        .HasDefaultValue("默认值")
+                        .HasColumnName("a_name");
+
+                    b.Property("AddTime")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("add_time")
+                        .HasDefaultValueSql("now()");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("HelloTypeId")
+                        .HasColumnType("text")
+                        .HasColumnName("hello_type_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("S2")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("character(1)")
+                        .HasDefaultValueSql("'A'::bpchar");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex(new[] { "AName" }, "ix_helloa")
+                        .IsUnique();
+
+                    b.ToTable("hello_a");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.HelloType", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("TypeName")
+                        .HasMaxLength(10)
+                        .HasColumnType("character varying(10)")
+                        .HasColumnName("type_name")
+                        .HasComment("类型名称");
+
+                    b.Property("s1")
+                        .HasColumnType("uuid")
+                        .HasColumnName("s1");
+
+                    b.Property("s2")
+                        .HasColumnType("uuid")
+                        .HasColumnName("s2");
+
+                    b.Property("s3")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("s3");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("hello_type");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.Ma", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("text")
+                        .HasColumnName("id");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("Name")
+                        .HasColumnType("text")
+                        .HasColumnName("name");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("ma");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.Mb", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("text")
+                        .HasColumnName("id");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("MaId")
+                        .HasColumnType("text")
+                        .HasColumnName("ma_id");
+
+                    b.Property("Name")
+                        .HasColumnType("text")
+                        .HasColumnName("name");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("MaId");
+
+                    b.ToTable("mb");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.Mc", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("text")
+                        .HasColumnName("id");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("MbId")
+                        .HasColumnType("text")
+                        .HasColumnName("mb_id");
+
+                    b.Property("Name")
+                        .HasColumnType("text")
+                        .HasColumnName("name");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("MbId");
+
+                    b.ToTable("mc");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.Student", b =>
+                {
+                    b.Property("Sid")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("uuid")
+                        .HasColumnName("sid");
+
+                    b.Property("Cid")
+                        .HasColumnType("text");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("CreationTime");
+
+                    b.Property("CreatorId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("CreatorId");
+
+                    b.Property("DeleterId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("DeleterId");
+
+                    b.Property("DeletionTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("DeletionTime");
+
+                    b.Property("IsDeleted")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("boolean")
+                        .HasDefaultValue(false)
+                        .HasColumnName("IsDeleted");
+
+                    b.Property("LastModificationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("LastModificationTime");
+
+                    b.Property("LastModifierId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("LastModifierId");
+
+                    b.Property("Name")
+                        .HasColumnType("text");
+
+                    b.Property("Uid")
+                        .HasColumnType("uuid");
+
+                    b.HasKey("Sid");
+
+                    b.ToTable("student");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.TestA", b =>
+                {
+                    b.Property("AId")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("uuid")
+                        .IsFixedLength()
+                        .HasComment("编号");
+
+                    b.Property("AName")
+                        .HasColumnType("text");
+
+                    b.HasKey("AId");
+
+                    b.ToTable("testa");
+
+                    b.HasComment("组合项目");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.TestB", b =>
+                {
+                    b.Property("BId")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("uuid");
+
+                    b.Property("AId")
+                        .HasColumnType("uuid")
+                        .IsFixedLength()
+                        .HasComment("编号");
+
+                    b.Property("AName")
+                        .HasColumnType("text");
+
+                    b.Property("TestAsAId")
+                        .HasColumnType("uuid");
+
+                    b.HasKey("BId");
+
+                    b.HasIndex("TestAsAId");
+
+                    b.ToTable("testb");
+
+                    b.HasComment("组合项目");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Books.TestCT", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("TName")
+                        .HasColumnType("text")
+                        .HasColumnName("t_name");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("test_ct");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.L_JYTMXX_TJs.L_JYTMXX_TJ", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength()
+                        .HasComment("编号");
+
+                    b.Property("BRITHDAY")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("BRITHDAY");
+
+                    b.Property("BRXZ")
+                        .IsRequired()
+                        .HasMaxLength(10)
+                        .HasColumnType("character varying(10)")
+                        .HasColumnName("BRXZ");
+
+                    b.Property("DOCTADVISENO")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("DOCTADVISENO");
+
+                    b.Property("EXAMINAIM")
+                        .IsRequired()
+                        .HasMaxLength(400)
+                        .HasColumnType("character varying(400)")
+                        .HasColumnName("EXAMINAIM");
+
+                    b.Property("EXAMINAIMCODE")
+                        .IsRequired()
+                        .HasMaxLength(400)
+                        .HasColumnType("character varying(400)")
+                        .HasColumnName("EXAMINAIMCODE");
+
+                    b.Property("EXECUTETIME")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("EXECUTETIME");
+
+                    b.Property("EXECUTOR")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("EXECUTOR");
+
+                    b.Property("FEE")
+                        .HasColumnType("numeric(7,2)")
+                        .HasColumnName("FEE");
+
+                    b.Property("FEESTATUS")
+                        .HasColumnType("smallint")
+                        .HasColumnName("FEESTATUS");
+
+                    b.Property("LXDH")
+                        .IsRequired()
+                        .HasMaxLength(16)
+                        .HasColumnType("character varying(16)")
+                        .HasColumnName("LXDH");
+
+                    b.Property("PATIENTID")
+                        .IsRequired()
+                        .HasMaxLength(18)
+                        .HasColumnType("character varying(18)")
+                        .HasColumnName("PATIENTID");
+
+                    b.Property("PATIENTNAME")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("PATIENTNAME");
+
+                    b.Property("REQUESTER")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("REQUESTER");
+
+                    b.Property("REQUESTTIME")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("REQUESTTIME");
+
+                    b.Property("SAMPLETYPE")
+                        .IsRequired()
+                        .HasMaxLength(4)
+                        .HasColumnType("character varying(4)")
+                        .HasColumnName("SAMPLETYPE");
+
+                    b.Property("SAMPLE_JSZT")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("SAMPLE_JSZT");
+
+                    b.Property("SECTION")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("SECTION");
+
+                    b.Property("SEX")
+                        .HasColumnType("character(1)")
+                        .HasColumnName("SEX");
+
+                    b.Property("SFZH")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("SFZH");
+
+                    b.Property("STAYHOSPITALMODE")
+                        .HasColumnType("smallint")
+                        .HasColumnName("STAYHOSPITALMODE");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("L_JYTMXX_TJ");
+
+                    b.HasComment("LIS对接表");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.AbpUserDepartment", b =>
+                {
+                    b.Property("UserId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("user_id");
+
+                    b.Property("OrganizationUnitId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("organization_unit_id");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.HasKey("UserId", "OrganizationUnitId")
+                        .HasName("pk_user_organizationunitid");
+
+                    b.ToTable("abp_user_department");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.Asbitem", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength()
+                        .HasComment("编号");
+
+                    b.Property("ClinicalMeaning")
+                        .HasMaxLength(100)
+                        .HasColumnType("character varying(100)")
+                        .HasColumnName("clinical_meaning")
+                        .HasComment("临床意义");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("DefaultResult")
+                        .HasMaxLength(100)
+                        .HasColumnType("character varying(100)")
+                        .HasColumnName("default_result")
+                        .HasComment("默认结果");
+
+                    b.Property("DeviceTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("device_type_id")
+                        .HasComment("仪器类别");
+
+                    b.Property("DiagnosisFunction")
+                        .HasMaxLength(4000)
+                        .HasColumnType("character varying(4000)")
+                        .HasColumnName("diagnosis_function")
+                        .HasComment("诊断函数");
+
+                    b.Property("DisplayName")
+                        .IsRequired()
+                        .HasMaxLength(30)
+                        .HasColumnType("character varying(30)")
+                        .HasColumnName("display_name")
+                        .HasComment("名称");
+
+                    b.Property("DisplayOrder")
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order");
+
+                    b.Property("ForSexId")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("for_sex_id")
+                        .HasDefaultValueSql("'A'")
+                        .HasComment("适用性别,M-男,F-女,A-全部");
+
+                    b.Property("InvoiceItemTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("invoice_item_type_id")
+                        .IsFixedLength()
+                        .HasComment("发票类别");
+
+                    b.Property("IsActive")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_active")
+                        .HasDefaultValueSql("'Y'")
+                        .HasComment("是启用");
+
+                    b.Property("IsBeforeEat")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_before_eat")
+                        .HasDefaultValueSql("'N'")
+                        .HasComment("餐前项目");
+
+                    b.Property("IsCheck")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_check")
+                        .HasDefaultValueSql("'Y'")
+                        .HasComment("是检查项目");
+
+                    b.Property("IsContinueProcess")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_continue_process")
+                        .HasDefaultValueSql("'N'")
+                        .HasComment("诊断函数处理完毕后继续处理");
+
+                    b.Property("IsDiagnosisFunction")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_diagnosis_function")
+                        .HasDefaultValueSql("'N'")
+                        .HasComment("启用诊断函数");
+
+                    b.Property("IsItemResultMerger")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_item_result_merger")
+                        .HasDefaultValueSql("'N'")
+                        .HasComment("项目结果合并");
+
+                    b.Property("IsPictureRotate")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_picture_rotate")
+                        .HasDefaultValueSql("'N'")
+                        .HasComment("体检报告图片旋转90°");
+
+                    b.Property("ItemTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("item_type_id")
+                        .IsFixedLength()
+                        .HasComment("项目类别");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("Price")
+                        .ValueGeneratedOnAdd()
+                        .HasPrecision(8, 2)
+                        .HasColumnType("numeric(8,2)")
+                        .HasColumnName("price")
+                        .HasDefaultValueSql("0")
+                        .HasComment("价格");
+
+                    b.Property("QueueTime")
+                        .ValueGeneratedOnAdd()
+                        .HasPrecision(3, 1)
+                        .HasColumnType("numeric(3,1)")
+                        .HasColumnName("queue_time")
+                        .HasDefaultValueSql("0")
+                        .HasComment("候诊时间");
+
+                    b.Property("ShortName")
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("short_name")
+                        .HasComment("简称");
+
+                    b.Property("SimpleCode")
+                        .HasMaxLength(30)
+                        .HasColumnType("character varying(30)")
+                        .HasColumnName("simple_code");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("InvoiceItemTypeId");
+
+                    b.HasIndex("ItemTypeId");
+
+                    b.HasIndex(new[] { "DisplayName" }, "ix_asbitem")
+                        .IsUnique();
+
+                    b.ToTable("asbitem");
+
+                    b.HasComment("组合项目");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.AsbitemDetail", b =>
+                {
+                    b.Property("AsbitemId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("asbitem_id")
+                        .IsFixedLength();
+
+                    b.Property("ItemId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("item_id")
+                        .IsFixedLength()
+                        .HasComment("项目编码");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.HasKey("AsbitemId", "ItemId")
+                        .HasName("pk_department_asbitem_detail");
+
+                    b.HasIndex("ItemId");
+
+                    b.ToTable("asbitem_detail");
+
+                    b.HasComment("组合项目包含项目");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.AsbitemGuide", b =>
+                {
+                    b.Property("OrganizationUnitId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("organization_unit_id")
+                        .IsFixedLength()
+                        .HasComment("单位科室ID");
+
+                    b.Property("AsbitemId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("asbitem_id")
+                        .IsFixedLength()
+                        .HasComment("组合项目ID");
+
+                    b.Property("ForSexId")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("for_sex_id")
+                        .HasDefaultValueSql("'A'")
+                        .HasComment("适用性别ID");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("Guide")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("guide")
+                        .HasComment("指引单内容");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.HasKey("OrganizationUnitId", "AsbitemId", "ForSexId")
+                        .HasName("pk_department_asbitem_guide");
+
+                    b.ToTable("asbitem_guide");
+
+                    b.HasComment("体检中心组和项目指引内容");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.AsbitemPriceItem", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("Amount")
+                        .IsRequired()
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("smallint")
+                        .HasColumnName("amount")
+                        .HasDefaultValueSql("0")
+                        .HasComment("数量");
+
+                    b.Property("AsbitemId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("asbitem_id")
+                        .IsFixedLength()
+                        .HasComment("组合项目编号");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("PriceItemId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("price_item_id")
+                        .IsFixedLength()
+                        .HasComment("价表项目编码");
+
+                    b.HasKey("Id");
+
+                    b.ToTable("asbitem_price_item");
+
+                    b.HasComment("组和项目包含价表项目");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.BigtextResultConclusion", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("BigtextResultTemplateId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("bigtext_result_template_id")
+                        .IsFixedLength();
+
+                    b.Property("Conclusion")
+                        .HasMaxLength(200)
+                        .HasColumnType("character varying(200)")
+                        .HasColumnName("conclusion")
+                        .HasComment("结论");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("DisplayOrder")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order")
+                        .HasDefaultValueSql("999999");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("BigtextResultTemplateId");
+
+                    b.ToTable("bigtext_result_conclusion");
+
+                    b.HasComment("大文本结果结论");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.BigtextResultDescription", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("BigtextResultTemplateId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("bigtext_result_template_id")
+                        .IsFixedLength();
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("Description")
+                        .HasMaxLength(200)
+                        .HasColumnType("character varying(200)")
+                        .HasColumnName("description")
+                        .HasComment("描述");
+
+                    b.Property("DisplayOrder")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order")
+                        .HasDefaultValueSql("999999");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("BigtextResultTemplateId");
+
+                    b.ToTable("bigtext_result_description");
+
+                    b.HasComment("大文本结果描述");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.BigtextResultTemplate", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("BigtextResultTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("bigtext_result_type_id")
+                        .IsFixedLength()
+                        .HasComment("结果类别编号");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("DisplayName")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("display_name")
+                        .HasComment("名称");
+
+                    b.Property("DisplayOrder")
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("SimpleCode")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("simple_code");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("BigtextResultTypeId");
+
+                    b.ToTable("bigtext_result_template");
+
+                    b.HasComment("大文本结果模板");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.BigtextResultType", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("DisplayName")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("display_name")
+                        .HasComment("名称");
+
+                    b.Property("DisplayOrder")
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order");
+
+                    b.Property("ItemTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("item_type_id")
+                        .IsFixedLength()
+                        .HasComment("项目类别");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("ParentId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("parent_id")
+                        .IsFixedLength()
+                        .HasComment("父编号");
+
+                    b.Property("PathCode")
+                        .IsRequired()
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("path_code")
+                        .HasComment("路径编码");
+
+                    b.Property("SimpleCode")
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("simple_code");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("ItemTypeId");
+
+                    b.ToTable("bigtext_result_type");
+
+                    b.HasComment("大文本结果类别");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.BirthPlace", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength();
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CountryCode")
+                        .IsRequired()
+                        .HasMaxLength(6)
+                        .HasColumnType("character varying(6)")
+                        .HasColumnName("country_code")
+                        .HasComment("国家标准码");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("DisplayName")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("display_name");
+
+                    b.Property("DisplayOrder")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order")
+                        .HasDefaultValueSql("999999");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("SimpleCode")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("simple_code");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex(new[] { "DisplayName" }, "ix_birth_place")
+                        .IsUnique();
+
+                    b.ToTable("birth_place");
+
+                    b.HasComment("出生地");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.CardBill", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .HasComment("编号");
+
+                    b.Property("BillFlag")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("bill_flag")
+                        .HasDefaultValueSql("'0'::bpchar")
+                        .HasComment("记账标志");
+
+                    b.Property("BillMoney")
+                        .HasPrecision(10, 2)
+                        .HasColumnType("numeric(10,2)")
+                        .HasColumnName("bill_money")
+                        .HasComment("记账金额");
+
+                    b.Property("CardRegisterId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("card_register_id")
+                        .HasComment("卡登记编号");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("PayModeId")
+                        .IsRequired()
+                        .HasMaxLength(4)
+                        .HasColumnType("character varying(4)")
+                        .HasColumnName("pay_mode_id")
+                        .HasComment("支付方式");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("CardRegisterId");
+
+                    b.HasIndex("PayModeId");
+
+                    b.ToTable("card_bill");
+
+                    b.HasComment("卡记账记录");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.CardRegister", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .HasComment("编号");
+
+                    b.Property("CardBalance")
+                        .HasPrecision(10, 2)
+                        .HasColumnType("numeric(10,2)")
+                        .HasColumnName("card_balance");
+
+                    b.Property("CardNo")
+                        .IsRequired()
+                        .HasMaxLength(30)
+                        .HasColumnType("character varying(30)")
+                        .HasColumnName("card_no")
+                        .HasComment("卡号");
+
+                    b.Property("CardPassword")
+                        .HasMaxLength(10)
+                        .HasColumnType("character varying(10)")
+                        .HasColumnName("card_password");
+
+                    b.Property("CardTypeId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("card_type_id")
+                        .IsFixedLength()
+                        .HasComment("卡类型");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("CustomerName")
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("customer_name")
+                        .HasComment("领用者");
+
+                    b.Property("Discount")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("discount")
+                        .HasDefaultValueSql("100")
+                        .HasComment("折扣");
+
+                    b.Property("ExpiryDate")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("expiry_date")
+                        .HasComment("有效期");
+
+                    b.Property("IdNo")
+                        .IsRequired()
+                        .HasMaxLength(18)
+                        .HasColumnType("character varying(18)")
+                        .HasColumnName("id_no")
+                        .HasComment("身份证号");
+
+                    b.Property("IsActive")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("is_active")
+                        .HasDefaultValueSql("0")
+                        .HasComment("使用标志");
+
+                    b.Property("LastModificationTime")
+                        .IsRequired()
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("last_modification_time");
+
+                    b.Property("LastModifierId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("last_modifier_id");
+
+                    b.Property("MedicalCenterId")
+                        .HasColumnType("uuid")
+                        .HasColumnName("medical_center_id");
+
+                    b.Property("MobileTelephone")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("mobile_telephone")
+                        .HasComment("手机");
+
+                    b.Property("Remark")
+                        .HasMaxLength(50)
+                        .HasColumnType("character varying(50)")
+                        .HasColumnName("remark")
+                        .HasComment("备注");
+
+                    b.Property("Telephone")
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("telephone")
+                        .HasComment("电话");
+
+                    b.HasKey("Id");
+
+                    b.HasIndex("CardTypeId");
+
+                    b.HasIndex(new[] { "CardNo", "IsActive" }, "ix_card_register")
+                        .IsUnique();
+
+                    b.ToTable("card_register");
+
+                    b.HasComment("会员卡登记");
+                });
+
+            modelBuilder.Entity("Shentun.Peis.Models.CardType", b =>
+                {
+                    b.Property("Id")
+                        .HasColumnType("uuid")
+                        .HasColumnName("id")
+                        .IsFixedLength()
+                        .HasComment("编号");
+
+                    b.Property("CardModeId")
+                        .ValueGeneratedOnAdd()
+                        .HasMaxLength(1)
+                        .HasColumnType("character(1)")
+                        .HasColumnName("card_mode_id")
+                        .HasDefaultValueSql("0")
+                        .HasComment("卡模式");
+
+                    b.Property("ConcurrencyStamp")
+                        .IsConcurrencyToken()
+                        .HasMaxLength(40)
+                        .HasColumnType("character varying(40)")
+                        .HasColumnName("concurrency_stamp");
+
+                    b.Property("CreationTime")
+                        .HasColumnType("timestamp without time zone")
+                        .HasColumnName("creation_time");
+
+                    b.Property("CreatorId")
+                        .IsRequired()
+                        .HasColumnType("uuid")
+                        .HasColumnName("creator_id");
+
+                    b.Property("Discount")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("discount")
+                        .HasDefaultValueSql("100")
+                        .HasComment("折扣");
+
+                    b.Property("DisplayName")
+                        .IsRequired()
+                        .HasMaxLength(20)
+                        .HasColumnType("character varying(20)")
+                        .HasColumnName("display_name")
+                        .HasComment("名称");
+
+                    b.Property("DisplayOrder")
+                        .ValueGeneratedOnAdd()
+                        .HasColumnType("integer")
+                        .HasColumnName("display_order")
+                        .HasDefaultValueSql("999999")
+                        .HasComment("显示顺序");
+
+                    b.Property