From bebc6808a9fbaf4e5b163efabe16bd7ee9dbc30c Mon Sep 17 00:00:00 2001
From: wxd <123@qq.com>
Date: Wed, 19 Nov 2025 17:52:29 +0800
Subject: [PATCH] 111902
---
.../CustomerOrgs/CreateCustomerOrgDto.cs | 5 +
.../CustomerOrgs/CustomerOrgDto.cs | 11 +
.../GetMedicalTypeIdByCustomerOrgIdDto.cs | 11 +
.../CustomerOrgs/UpdateCustomerOrgDto.cs | 6 +
.../CCTJExportDataAppService.cs | 81 +-
.../CCTJExportDatas/CCTJLMPAppService.cs | 55 +-
.../CustomerOrgs/CustomerOrgAppService.cs | 31 +-
src/Shentun.Peis.DbMigrator/appsettings.json | 4 +-
.../CustomerOrgs/CustomerOrg.cs | 8 +-
.../CustomerOrgs/CustomerOrgManager.cs | 4 +-
.../StringConvertGuidHelper.cs | 87 +
.../CustomerOrgs/CustomerOrgDbMapping.cs | 2 +-
...stomer_org_add_medical_type_id.Designer.cs | 16391 ++++++++++++++++
...update_customer_org_add_medical_type_id.cs | 27 +
.../Migrations/PeisDbContextModelSnapshot.cs | 9 +-
15 files changed, 16717 insertions(+), 15 deletions(-)
create mode 100644 src/Shentun.Peis.Application.Contracts/CustomerOrgs/GetMedicalTypeIdByCustomerOrgIdDto.cs
create mode 100644 src/Shentun.Peis.Domain/StringConvertGuidHelper.cs
create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20251119074708_update_customer_org_add_medical_type_id.Designer.cs
create mode 100644 src/Shentun.Peis.EntityFrameworkCore/Migrations/20251119074708_update_customer_org_add_medical_type_id.cs
diff --git a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CreateCustomerOrgDto.cs b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CreateCustomerOrgDto.cs
index 482a6e55..61a47dc8 100644
--- a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CreateCustomerOrgDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CreateCustomerOrgDto.cs
@@ -119,5 +119,10 @@ namespace Shentun.Peis.CustomerOrgs
/// 销售员电话
///
public string SalesPersonPhone { get; set; }
+
+ ///
+ /// 体检类别id
+ ///
+ public Guid? MedicalTypeId { get; set; }
}
}
diff --git a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CustomerOrgDto.cs b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CustomerOrgDto.cs
index 06188457..01809817 100644
--- a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CustomerOrgDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/CustomerOrgDto.cs
@@ -130,5 +130,16 @@ namespace Shentun.Peis.CustomerOrgs
/// 销售员电话
///
public string SalesPersonPhone { get; set; }
+
+
+ ///
+ /// 体检类别id
+ ///
+ public Guid? MedicalTypeId { get; set; }
+
+ ///
+ /// 体检类别名称
+ ///
+ public string MedicalTypeName { get; set; }
}
}
diff --git a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/GetMedicalTypeIdByCustomerOrgIdDto.cs b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/GetMedicalTypeIdByCustomerOrgIdDto.cs
new file mode 100644
index 00000000..32cf3f42
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/GetMedicalTypeIdByCustomerOrgIdDto.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.CustomerOrgs
+{
+ public class GetMedicalTypeIdByCustomerOrgIdDto
+ {
+ public Guid? MedicalTypeId { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/UpdateCustomerOrgDto.cs b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/UpdateCustomerOrgDto.cs
index f0071749..545ad83d 100644
--- a/src/Shentun.Peis.Application.Contracts/CustomerOrgs/UpdateCustomerOrgDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/CustomerOrgs/UpdateCustomerOrgDto.cs
@@ -119,5 +119,11 @@ namespace Shentun.Peis.CustomerOrgs
/// 销售员电话
///
public string SalesPersonPhone { get; set; }
+
+
+ ///
+ /// 体检类别id
+ ///
+ public Guid? MedicalTypeId { get; set; }
}
}
diff --git a/src/Shentun.Peis.Application/CCTJExportDatas/CCTJExportDataAppService.cs b/src/Shentun.Peis.Application/CCTJExportDatas/CCTJExportDataAppService.cs
index 3bda1bbb..f0aa44c7 100644
--- a/src/Shentun.Peis.Application/CCTJExportDatas/CCTJExportDataAppService.cs
+++ b/src/Shentun.Peis.Application/CCTJExportDatas/CCTJExportDataAppService.cs
@@ -2233,6 +2233,10 @@ namespace Shentun.Peis.CCTJExportDatas
var count = await _customerOrgRepository.GetCountAsync();
if (count == 0)
{
+
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from org where len(org_id)=5 order by display_order asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
@@ -2265,6 +2269,20 @@ namespace Shentun.Peis.CCTJExportDatas
}
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
+
var data = new CustomerOrg(customerOrgId)
{
@@ -2288,7 +2306,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
@@ -2328,6 +2347,9 @@ namespace Shentun.Peis.CCTJExportDatas
var count = (await _customerOrgRepository.GetQueryableAsync()).Where(m => m.PathCode.Length > 5).Count();
if (count == 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from [dbo].[org] where len(org_id)=8 order by org_id asc");
if (oldCustomerOrgList.Rows.Count > 0)
@@ -2348,6 +2370,20 @@ namespace Shentun.Peis.CCTJExportDatas
Guid customerOrgId = GuidGenerator.Create();
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
+
#region 备注 导入联系人姓名、电话
string remark = "";
if (!string.IsNullOrWhiteSpace(row["linkman"].ToString()))
@@ -2389,7 +2425,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
@@ -2428,6 +2465,9 @@ namespace Shentun.Peis.CCTJExportDatas
var count = (await _customerOrgRepository.GetQueryableAsync()).Where(m => m.PathCode.Length > 11).Count();
if (count == 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from [dbo].[org] where len(org_id)=11 order by org_id asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
@@ -2467,6 +2507,20 @@ namespace Shentun.Peis.CCTJExportDatas
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
+
var data = new CustomerOrg(customerOrgId)
{
Accounts = row["accounts"].ToString(),
@@ -2489,7 +2543,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
@@ -2528,6 +2583,9 @@ namespace Shentun.Peis.CCTJExportDatas
var count = (await _customerOrgRepository.GetQueryableAsync()).Where(m => m.PathCode.Length > 17).Count();
if (count == 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from [dbo].[org] where len(org_id)=14 order by org_id asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
@@ -2567,6 +2625,20 @@ namespace Shentun.Peis.CCTJExportDatas
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
+
var data = new CustomerOrg(customerOrgId)
{
Accounts = row["accounts"].ToString(),
@@ -2589,7 +2661,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
diff --git a/src/Shentun.Peis.Application/CCTJExportDatas/CCTJLMPAppService.cs b/src/Shentun.Peis.Application/CCTJExportDatas/CCTJLMPAppService.cs
index 9e57c777..51946214 100644
--- a/src/Shentun.Peis.Application/CCTJExportDatas/CCTJLMPAppService.cs
+++ b/src/Shentun.Peis.Application/CCTJExportDatas/CCTJLMPAppService.cs
@@ -432,6 +432,9 @@ namespace Shentun.Peis.CCTJExportDatas
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from org where len(org_id)=5 order by display_order asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
int ordHandCount = 0;
foreach (DataRow row in oldCustomerOrgList.Rows)
@@ -466,7 +469,19 @@ namespace Shentun.Peis.CCTJExportDatas
}
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
var data = new CustomerOrg(customerOrgId)
{
Accounts = row["accounts"].ToString(),
@@ -489,7 +504,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
@@ -530,6 +546,8 @@ namespace Shentun.Peis.CCTJExportDatas
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from [dbo].[org] where len(org_id)=8 order by org_id asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
List fieldComparisonList = await _fieldComparisonRepository.GetListAsync(m => m.TableName == "customer_org");
@@ -568,7 +586,19 @@ namespace Shentun.Peis.CCTJExportDatas
}
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
var data = new CustomerOrg(customerOrgId)
{
Accounts = row["accounts"].ToString(),
@@ -591,7 +621,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
@@ -632,6 +663,9 @@ namespace Shentun.Peis.CCTJExportDatas
var oldCustomerOrgList = await oldDb.Ado.GetDataTableAsync("select * from [dbo].[org] where len(org_id)=11 order by org_id asc");
if (oldCustomerOrgList.Rows.Count > 0)
{
+ var medicalTypeIdFieldComparisonList = (await _fieldComparisonRepository.GetQueryableAsync())
+ .Where(m => m.TableName == "medical_Type").ToList();
+
List fieldComparisonList = await _fieldComparisonRepository.GetListAsync(m => m.TableName == "customer_org");
int ordHandCount = 0;
@@ -671,6 +705,20 @@ namespace Shentun.Peis.CCTJExportDatas
}
#endregion
+ #region 转换体检类别ID
+
+
+ Guid? medicalTypeId = null;
+
+ var oldMedicalTypeId = row["medical_type_id"].ToString();
+ if (!string.IsNullOrWhiteSpace(oldMedicalTypeId))
+ {
+ var medicalTypeIdFieldComparison = medicalTypeIdFieldComparisonList.FirstOrDefault(f => f.OldKeyValue == oldMedicalTypeId);
+ if (medicalTypeIdFieldComparison != null)
+ medicalTypeId = Guid.Parse(medicalTypeIdFieldComparison.NewKeyValue);
+ }
+ #endregion
+
var data = new CustomerOrg(customerOrgId)
{
Accounts = row["accounts"].ToString(),
@@ -693,7 +741,8 @@ namespace Shentun.Peis.CCTJExportDatas
Telephone = row["telephone"].ToString(),
CountryOrgCode = row["org_id"].ToString(),
SalesPerson = "",
- SalesPersonPhone = ""
+ SalesPersonPhone = "",
+ MedicalTypeId = medicalTypeId
};
await _customerOrgRepository.InsertAsync(data);
diff --git a/src/Shentun.Peis.Application/CustomerOrgs/CustomerOrgAppService.cs b/src/Shentun.Peis.Application/CustomerOrgs/CustomerOrgAppService.cs
index 7e8175e7..792f846f 100644
--- a/src/Shentun.Peis.Application/CustomerOrgs/CustomerOrgAppService.cs
+++ b/src/Shentun.Peis.Application/CustomerOrgs/CustomerOrgAppService.cs
@@ -77,6 +77,7 @@ namespace Shentun.Peis.CustomerOrgs
var entityDto = await base.GetAsync(id);
entityDto.CreatorName = await _cacheService.GetSurnameAsync(entityDto.CreatorId);
entityDto.LastModifierName = await _cacheService.GetSurnameAsync(entityDto.LastModifierId);
+ entityDto.MedicalTypeName = await _cacheService.GetMedicalTypeNameAsync(entityDto.MedicalTypeId);
return entityDto;
}
//[AllowAnonymous]
@@ -165,7 +166,9 @@ namespace Shentun.Peis.CustomerOrgs
MedicalCenterId = s.MedicalCenterId,
CountryOrgCode = s.CountryOrgCode,
CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).GetAwaiter().GetResult(),
- LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).GetAwaiter().GetResult()
+ LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).GetAwaiter().GetResult(),
+ MedicalTypeId = s.MedicalTypeId,
+ MedicalTypeName = _cacheService.GetMedicalTypeNameAsync(s.MedicalTypeId).GetAwaiter().GetResult()
}).OrderBy(m => m.DisplayOrder).ToList();
@@ -661,6 +664,32 @@ namespace Shentun.Peis.CustomerOrgs
return topCustomerOrgId;
}
+ ///
+ /// 根据单位id获取体检类别id
+ ///
+ ///
+ ///
+ [HttpPost("api/app/Customerorg/GetMedicalTypeIdByCustomerOrgId")]
+ public async Task GetMedicalTypeIdByCustomerOrgIdAsync(CustomerOrgIdInputDto input)
+ {
+ var result = new GetMedicalTypeIdByCustomerOrgIdDto();
+
+ var customerOrgEntity = await Repository.FirstOrDefaultAsync(f => f.Id == input.CustomerOrgId);
+ if (customerOrgEntity != null) {
+
+ if (customerOrgEntity.MedicalTypeId == null)
+ {
+ customerOrgEntity = await Repository.FirstOrDefaultAsync(f => f.PathCode == customerOrgEntity.PathCode.Substring(0, 5));
+ }
+
+ if (customerOrgEntity.MedicalTypeId != null)
+ result.MedicalTypeId = customerOrgEntity.MedicalTypeId;
+ }
+
+ return result;
+
+ }
+
//private async Task GetDbContextAsync()
diff --git a/src/Shentun.Peis.DbMigrator/appsettings.json b/src/Shentun.Peis.DbMigrator/appsettings.json
index 7d3e4091..5279017a 100644
--- a/src/Shentun.Peis.DbMigrator/appsettings.json
+++ b/src/Shentun.Peis.DbMigrator/appsettings.json
@@ -3,8 +3,8 @@
//"Default": "Host=140.143.162.39;Port=5432;Database=ShentunPeis240701;User ID=postgres;Password=shentun123;"
//"Default": "Host=192.168.2.67;Port=5432;Database=ShentunPeis;User ID=postgres;Password=st123;"
//"Default": "Host=localhost;Port=5432;Database=ShentunPeis1218;User ID=postgres;Password=wxd123;"
- "Default": "Host=10.1.12.140;Port=5432;Database=ShentunPeis0508;User ID=postgres;Password=st123;"
- //"Default": "Host=192.168.0.188;Port=5432;Database=ShentunPeis;User ID=postgres;Password=St123456;"
+ //"Default": "Host=10.1.12.140;Port=5432;Database=ShentunPeis0508;User ID=postgres;Password=st123;"
+ "Default": "Host=192.168.0.188;Port=5432;Database=ShentunPeis;User ID=postgres;Password=St123456;"
},
"OpenIddict": {
"Applications": {
diff --git a/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrg.cs b/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrg.cs
index 7de5b6bc..1a57877e 100644
--- a/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrg.cs
+++ b/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrg.cs
@@ -179,7 +179,13 @@ namespace Shentun.Peis.Models
//[Column("last_modification_time", TypeName = "timestamp without time zone")]
//public DateTime LastModificationTime { get; set; }
[Column("medical_center_id")]
- public Guid MedicalCenterId { get; set; }
+ public Guid MedicalCenterId { get; set; }
+
+ ///
+ /// 体检类别id
+ ///
+ [Column("medical_type_id")]
+ public Guid? MedicalTypeId { get; set; }
//[Column("concurrency_stamp")]
//[StringLength(40)]
//public string ConcurrencyStamp { get; set; } = null!;
diff --git a/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrgManager.cs b/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrgManager.cs
index 0f3ba48f..a6984a20 100644
--- a/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrgManager.cs
+++ b/src/Shentun.Peis.Domain/CustomerOrgs/CustomerOrgManager.cs
@@ -114,7 +114,8 @@ namespace Shentun.Peis.CustomerOrgs
Telephone = entity.Telephone,
CountryOrgCode = entity.CountryOrgCode,
SalesPerson = entity.SalesPerson,
- SalesPersonPhone = entity.SalesPersonPhone
+ SalesPersonPhone = entity.SalesPersonPhone,
+ MedicalTypeId = entity.MedicalTypeId
};
}
///
@@ -174,6 +175,7 @@ namespace Shentun.Peis.CustomerOrgs
targetEntity.CountryOrgCode = sourceEntity.CountryOrgCode;
targetEntity.SalesPerson = sourceEntity.SalesPerson;
targetEntity.SalesPersonPhone = sourceEntity.SalesPersonPhone;
+ targetEntity.MedicalTypeId = sourceEntity.MedicalTypeId;
}
diff --git a/src/Shentun.Peis.Domain/StringConvertGuidHelper.cs b/src/Shentun.Peis.Domain/StringConvertGuidHelper.cs
new file mode 100644
index 00000000..0352aa23
--- /dev/null
+++ b/src/Shentun.Peis.Domain/StringConvertGuidHelper.cs
@@ -0,0 +1,87 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Security.Cryptography;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Shentun.Peis
+{
+ public class StringConvertGuidHelper
+ {
+ ///
+ /// 生成RFC 4122版本5 UUID(基于SHA1的命名空间UUID)- 推荐使用
+ ///
+ public static Guid GenerateVersion5UUID(string name, Guid namespaceId)
+ {
+ // 将命名空间Guid和名称转换为字节数组
+ byte[] namespaceBytes = namespaceId.ToByteArray();
+ SwapByteOrder(namespaceBytes); // RFC标准要求字节序转换
+
+ byte[] nameBytes = Encoding.UTF8.GetBytes(name);
+
+ byte[] combinedBytes = new byte[namespaceBytes.Length + nameBytes.Length];
+ Buffer.BlockCopy(namespaceBytes, 0, combinedBytes, 0, namespaceBytes.Length);
+ Buffer.BlockCopy(nameBytes, 0, combinedBytes, namespaceBytes.Length, nameBytes.Length);
+
+ using (SHA1 sha1 = SHA1.Create())
+ {
+ byte[] hash = sha1.ComputeHash(combinedBytes);
+
+ // 取前16个字节
+ byte[] guidBytes = new byte[16];
+ Array.Copy(hash, 0, guidBytes, 0, 16);
+
+ // 设置版本号: 0101 (版本5)
+ guidBytes[6] = (byte)((guidBytes[6] & 0x0F) | 0x50);
+ // 设置变体: 10xx (RFC变体)
+ guidBytes[8] = (byte)((guidBytes[8] & 0x3F) | 0x80);
+
+ SwapByteOrder(guidBytes); // 转换回Guid的字节序
+
+ return new Guid(guidBytes);
+ }
+ }
+
+ ///
+ /// 生成URL的版本5 UUID
+ ///
+ public static Guid GenerateURLUUID(string url)
+ {
+ return GenerateVersion5UUID(url, URLNamespace);
+ }
+
+ ///
+ /// 生成DNS的版本5 UUID
+ ///
+ public static Guid GenerateDNSUUID(string domain)
+ {
+ return GenerateVersion5UUID(domain, DNSNamespace);
+ }
+
+ private static void SwapByteOrder(byte[] guid)
+ {
+ // 交换前4字节
+ SwapBytes(guid, 0, 3);
+ SwapBytes(guid, 1, 2);
+
+ // 交换5-6字节
+ SwapBytes(guid, 4, 5);
+ // 交换7-8字节
+ SwapBytes(guid, 6, 7);
+ }
+
+ private static void SwapBytes(byte[] array, int index1, int index2)
+ {
+ byte temp = array[index1];
+ array[index1] = array[index2];
+ array[index2] = temp;
+ }
+
+ // 预定义的命名空间UUID (RFC 4122)
+ public static readonly Guid DNSNamespace = new Guid("6ba7b810-9dad-11d1-80b4-00c04fd430c8");
+ public static readonly Guid URLNamespace = new Guid("6ba7b811-9dad-11d1-80b4-00c04fd430c8");
+ public static readonly Guid OIDNamespace = new Guid("6ba7b812-9dad-11d1-80b4-00c04fd430c8");
+ public static readonly Guid X500Namespace = new Guid("6ba7b814-9dad-11d1-80b4-00c04fd430c8");
+ }
+}
diff --git a/src/Shentun.Peis.EntityFrameworkCore/DbMapping/CustomerOrgs/CustomerOrgDbMapping.cs b/src/Shentun.Peis.EntityFrameworkCore/DbMapping/CustomerOrgs/CustomerOrgDbMapping.cs
index 1ee4679b..40573105 100644
--- a/src/Shentun.Peis.EntityFrameworkCore/DbMapping/CustomerOrgs/CustomerOrgDbMapping.cs
+++ b/src/Shentun.Peis.EntityFrameworkCore/DbMapping/CustomerOrgs/CustomerOrgDbMapping.cs
@@ -23,7 +23,7 @@ namespace Shentun.Peis.DbMapping
entity.Property(t => t.PathCode).HasComment("路径编码").IsRequired();
entity.Property(t => t.IsLock).HasComment("锁住").IsRequired().HasDefaultValueSql("'N'");
entity.Property(t => t.IsActive).HasComment("状态").IsRequired().HasDefaultValueSql("'Y'");
-
+ entity.Property(t => t.MedicalTypeId).HasComment("体检类别id");
entity.Property(e => e.Id)
.IsFixedLength()
diff --git a/src/Shentun.Peis.EntityFrameworkCore/Migrations/20251119074708_update_customer_org_add_medical_type_id.Designer.cs b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20251119074708_update_customer_org_add_medical_type_id.Designer.cs
new file mode 100644
index 00000000..cec2ae7d
--- /dev/null
+++ b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20251119074708_update_customer_org_add_medical_type_id.Designer.cs
@@ -0,0 +1,16391 @@
+//
+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("20251119074708_update_customer_org_add_medical_type_id")]
+ partial class update_customer_org_add_medical_type_id
+ {
+ 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("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.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("BarcodeMode")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("barcode_mode")
+ .HasDefaultValueSql("'0'")
+ .HasComment("条码模式");
+
+ b.Property("ClinicalMeaning")
+ .HasMaxLength(500)
+ .HasColumnType("character varying(500)")
+ .HasColumnName("clinical_meaning")
+ .HasComment("临床意义");
+
+ b.Property("CollectItemTypeId")
+ .HasColumnType("uuid")
+ .HasColumnName("collect_item_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("CriticalValueFunction")
+ .HasColumnType("text")
+ .HasColumnName("critical_value_function")
+ .HasComment("危急值函数");
+
+ 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("DiseaseScreeningTypeId")
+ .HasColumnType("uuid")
+ .HasColumnName("disease_screening_type_id");
+
+ b.Property("DisplayName")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)")
+ .HasColumnName("display_name")
+ .HasComment("名称");
+
+ b.Property("DisplayOrder")
+ .HasColumnType("integer")
+ .HasColumnName("display_order");
+
+ b.Property("FollowUpFunction")
+ .HasColumnType("text")
+ .HasColumnName("follow_up_function")
+ .HasComment("随访函数");
+
+ b.Property("ForPregnantFlag")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("for_pregnant_flag")
+ .HasDefaultValueSql("'A'")
+ .HasComment("备怀孕期间禁止检查");
+
+ b.Property("ForSexId")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("for_sex_id")
+ .HasDefaultValueSql("'A'")
+ .HasComment("适用性别,M-男,F-女,A-全部");
+
+ 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("IsCriticalValueFunction")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_critical_value_function")
+ .HasDefaultValueSql("'N'")
+ .HasComment("是否启用危急值函数");
+
+ b.Property("IsDiagnosisFunction")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_diagnosis_function")
+ .HasDefaultValueSql("'N'")
+ .HasComment("启用诊断函数");
+
+ b.Property("IsFollowUpFunction")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_follow_up_function")
+ .HasDefaultValueSql("'N'")
+ .HasComment("是否启用随访函数");
+
+ b.Property("IsItemResultMerger")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_item_result_merger")
+ .HasDefaultValueSql("'N'")
+ .HasComment("项目结果合并");
+
+ b.Property("IsOutsend")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("character(1)")
+ .HasColumnName("is_outsend")
+ .HasDefaultValueSql("'N'")
+ .HasComment("是否外检项目");
+
+ b.Property("IsPictureRotate")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_picture_rotate")
+ .HasDefaultValueSql("'N'")
+ .HasComment("体检报告图片旋转90°");
+
+ b.Property("IsPrivacy")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("character(1)")
+ .HasColumnName("is_privacy")
+ .HasDefaultValueSql("'N'")
+ .HasComment("是否隐私项目");
+
+ b.Property("IsWebAppoint")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_web_appoint")
+ .HasDefaultValueSql("'Y'")
+ .HasComment("是否支持网上预约");
+
+ 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("MaritalStatusId")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("marital_status_id")
+ .HasDefaultValueSql("'A'")
+ .HasComment("适用婚姻状况,0-未婚,1-已婚,A-全部");
+
+ 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.Property("Warn")
+ .HasMaxLength(100)
+ .HasColumnType("character varying(100)")
+ .HasColumnName("warn");
+
+ b.HasKey("Id");
+
+ b.HasIndex("CollectItemTypeId");
+
+ 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("MedicalCenterId")
+ .HasColumnType("uuid")
+ .HasColumnName("medical_center_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("MedicalCenterId", "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("IsAbnormal")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("is_abnormal")
+ .HasDefaultValueSql("'Y'")
+ .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("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(2000)
+ .HasColumnType("character varying(2000)")
+ .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(50)
+ .HasColumnType("character varying(50)")
+ .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(50)
+ .HasColumnType("character varying(50)")
+ .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(200)
+ .HasColumnType("character varying(200)")
+ .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");
+
+ 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("ExpiryDay")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer")
+ .HasColumnName("expiry_day")
+ .HasDefaultValueSql("3650")
+ .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("Remark")
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)")
+ .HasColumnName("remark")
+ .HasComment("备注");
+
+ b.HasKey("Id");
+
+ b.ToTable("card_type");
+
+ b.HasComment("会员卡类别");
+ });
+
+ modelBuilder.Entity("Shentun.Peis.Models.Charge", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("uuid")
+ .HasColumnName("id")
+ .HasComment("收据号");
+
+ b.Property("ChargeFlag")
+ .ValueGeneratedOnAdd()
+ .HasMaxLength(1)
+ .HasColumnType("character(1)")
+ .HasColumnName("charge_flag")
+ .HasDefaultValueSql("0");
+
+ 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("InvoiceNo")
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)")
+ .HasColumnName("invoice_no");
+
+ b.Property("InvoiceOrgName")
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)")
+ .HasColumnName("invoice_org_name");
+
+ 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("PatientRegisterId")
+ .HasColumnType("uuid")
+ .HasColumnName("patient_register_id")
+ .HasComment("登记流水号");
+
+ b.Property("SettleAccountId")
+ .HasColumnType("uuid")
+ .HasColumnName("settle_account_id");
+
+ b.Property("SettleTime")
+ .HasColumnType("timestamp without time zone")
+ .HasColumnName("settle_time");
+
+ b.HasKey("Id");
+
+ b.HasIndex(new[] { "PatientRegisterId" }, "fki_fk_patient_register_charge");
+
+ b.HasIndex(new[] { "PatientRegisterId" }, "ix_charge");
+
+ b.ToTable("charge");
+
+ b.HasComment("收费主档");
+ });
+
+ modelBuilder.Entity("Shentun.Peis.Models.ChargeAsbitem", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("uuid")
+ .HasColumnName("id");
+
+ b.Property("Amount")
+ .HasColumnType("smallint")
+ .HasColumnName("amount");
+
+ b.Property("AsbitemId")
+ .HasColumnType("uuid")
+ .HasColumnName("asbitem_id")
+ .IsFixedLength()
+ .HasComment("组合项目");
+
+ b.Property("ChargeId")
+ .HasColumnType("uuid")
+ .HasColumnName("charge_id")
+ .HasComment("收据号");
+
+ b.Property("ChargePrice")
+ .HasPrecision(10, 2)
+ .HasColumnType("numeric(10,2)")
+ .HasColumnName("charge_price")
+ .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("RegisterAsbitemId")
+ .HasColumnType("uuid")
+ .HasColumnName("register_asbitem_id");
+
+ b.HasKey("Id");
+
+ b.HasIndex("AsbitemId");
+
+ b.HasIndex("ChargeId");
+
+ b.ToTable("charge_asbitem");
+
+ b.HasComment("收费包含组合项目");
+ });
+
+ modelBuilder.Entity("Shentun.Peis.Models.ChargeBack", b =>
+ {
+ b.Property("Id")
+ .HasColumnType("uuid")
+ .HasColumnName("id")
+ .HasComment("退费编号");
+
+ b.Property("ChargeId")
+ .HasColumnType("uuid")
+ .HasColumnName("charge_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