diff --git a/src/Shentun.Peis.Application.Contracts/PatientRegisters/CreatePatientRegisterDto.cs b/src/Shentun.Peis.Application.Contracts/PatientRegisters/CreatePatientRegisterDto.cs
index 6a00f4d..12eebbf 100644
--- a/src/Shentun.Peis.Application.Contracts/PatientRegisters/CreatePatientRegisterDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/PatientRegisters/CreatePatientRegisterDto.cs
@@ -134,6 +134,10 @@ namespace Shentun.Peis.PatientRegisters
///
public string AppointPatientRegisterId { get; set; }
+ ///
+ /// 第三方预约Id
+ ///
+ public string ThirdBookingId { get; set; }
#region 添加时不需要
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListDto.cs
new file mode 100644
index 0000000..d969c37
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListDto.cs
@@ -0,0 +1,91 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations.Schema;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace Shentun.Peis.ThirdBookings
+{
+ public class GetThirdBookingListDto
+ {
+ ///
+ /// 登记时需要写入
+ ///
+ public Guid ThirdBookingId { get; set; }
+
+ ///
+ /// 姓名
+ ///
+ public string PatientName { get; set; }
+
+ ///
+ /// 单位分组ID
+ ///
+ public string CustomerOrgGroupId { get; set; }
+
+ /////
+ ///// 第三方体检中心Id 不是体检中的体检中心
+ /////
+ //public string ThirdMedicalCenterId { get; set; }
+
+ /////
+ ///// 身份证类型( 0 身份证 )
+ /////
+ //public string IdType { get; set; }
+
+ ///
+ /// 身份证
+ ///
+ public string IdNo { get; set; }
+
+ ///
+ /// 性别
+ ///
+ public char SexId { get; set; }
+
+ ///
+ /// 年龄
+ ///
+ public short Age { get; set; }
+
+ ///
+ /// 预约日期
+ ///
+ public DateTime BookingDate { get; set; }
+
+ ///
+ /// 电话
+ ///
+ public string Phone { get; set; }
+
+ /////
+ ///// 分公司
+ /////
+ //public string ChildCompanyName { get; set; }
+
+ /////
+ ///// 部门
+ /////
+ //public string DepartmentName { get; set; }
+
+ /////
+ ///// 婚姻状况
+ /////
+ //public char MaritalStatusId { get; set; }
+
+ ///
+ /// 体检状态 0未开始 1已登记 2已完成体检
+ ///
+ public char MedicalStatus { get; set; }
+
+ ///
+ /// 体检次数ID
+ ///
+ public Guid? CustomerOrgRegisterId { get; set; }
+
+ ///
+ /// 单位ID
+ ///
+ public Guid? CustomerOrgId { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListInputDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListInputDto.cs
new file mode 100644
index 0000000..9f94163
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdBookings/GetThirdBookingListInputDto.cs
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdBookings
+{
+ public class GetThirdBookingListInputDto
+ {
+ ///
+ /// 体检状态 0未开始 1已登记 2已完成体检
+ ///
+ public char? MedicalStatus { get; set; }
+
+ ///
+ /// 预约开始日期
+ ///
+ public string StartDate { get; set; }
+
+ ///
+ /// 预约结束日期
+ ///
+ public string EndDate { get; set; }
+
+ ///
+ /// 支持身份证、手机号、姓名 完全匹配
+ ///
+ public string KeyWord { get; set; }
+
+
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterBookingDateInputDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterBookingDateInputDto.cs
new file mode 100644
index 0000000..0c17fe6
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterBookingDateInputDto.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations.Schema;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class CreateThirdMedicalCenterBookingDateInputDto
+ {
+ ///
+ /// 第三方体检中心id
+ ///
+ public Guid ThirdMedicalCenterId { get; set; }
+
+ ///
+ /// 可以预约日期集合 格式2024-09-27
+ ///
+ public List BookingDates { get; set; } = new List();
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterDto.cs
new file mode 100644
index 0000000..4b02cba
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/CreateThirdMedicalCenterDto.cs
@@ -0,0 +1,20 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class CreateThirdMedicalCenterDto
+ {
+ ///
+ /// 名称
+ ///
+ public string DisplayName { get; set; }
+
+ ///
+ /// 单位分组ID
+ ///
+
+ public Guid CustomerOrgGroupId { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/GetThirdMedicalCenterBookingDateListDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/GetThirdMedicalCenterBookingDateListDto.cs
new file mode 100644
index 0000000..5778e99
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/GetThirdMedicalCenterBookingDateListDto.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class GetThirdMedicalCenterBookingDateListDto
+ {
+ public Guid Id { get; set; }
+
+
+ public Guid ThirdMedicalCenterId { get; set; }
+
+ ///
+ /// 可预约日期
+ ///
+ public string BookingDate { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterDto.cs
new file mode 100644
index 0000000..031ce3a
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterDto.cs
@@ -0,0 +1,25 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations.Schema;
+using System.ComponentModel.DataAnnotations;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class ThirdMedicalCenterDto : AuditedEntityDtoName
+ {
+ ///
+ /// 名称
+ ///
+ public string DisplayName { get; set; }
+
+ ///
+ /// 单位分组ID
+ ///
+
+ public Guid CustomerOrgGroupId { get; set; }
+
+
+ public int DisplayOrder { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterIdInputDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterIdInputDto.cs
new file mode 100644
index 0000000..054dd57
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterIdInputDto.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class ThirdMedicalCenterIdInputDto
+ {
+ public Guid ThirdMedicalCenterId { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterListInputDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterListInputDto.cs
new file mode 100644
index 0000000..9feb20a
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/ThirdMedicalCenterListInputDto.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class ThirdMedicalCenterListInputDto
+ {
+ public Guid? CustomerOrgGroupId { get; set; }
+
+ ///
+ /// 关键字
+ ///
+ public string KeyWord { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateManySortThirdMedicalCenterInputDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateManySortThirdMedicalCenterInputDto.cs
new file mode 100644
index 0000000..e0fbd3b
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateManySortThirdMedicalCenterInputDto.cs
@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class UpdateManySortThirdMedicalCenterInputDto
+ {
+ ///
+ /// 需要修改的ID
+ ///
+ public Guid ThirdMedicalCenterId { get; set; }
+
+ ///
+ /// 修改方式:1 置顶 2 置底
+ ///
+ public int SortType { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateThirdMedicalCenterDto.cs b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateThirdMedicalCenterDto.cs
new file mode 100644
index 0000000..29357ae
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/ThirdMedicalCenters/UpdateThirdMedicalCenterDto.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class UpdateThirdMedicalCenterDto
+ {
+ public Guid ThirdMedicalCenterId { get; set; }
+
+ ///
+ /// 名称
+ ///
+ public string DisplayName { get; set; }
+
+ ///
+ /// 单位分组ID
+ ///
+
+ public Guid CustomerOrgGroupId { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application/PeisApplicationAutoMapperProfile.cs b/src/Shentun.Peis.Application/PeisApplicationAutoMapperProfile.cs
index 9a9ef5c..1bb2ce1 100644
--- a/src/Shentun.Peis.Application/PeisApplicationAutoMapperProfile.cs
+++ b/src/Shentun.Peis.Application/PeisApplicationAutoMapperProfile.cs
@@ -97,6 +97,7 @@ using Shentun.Peis.SysParms;
using Shentun.Peis.SysParmTypes;
using Shentun.Peis.SysParmValues;
using Shentun.Peis.ThirdInterfaces;
+using Shentun.Peis.ThirdMedicalCenters;
using Shentun.Peis.Units;
using System;
using System.Collections.Generic;
@@ -604,8 +605,12 @@ public class PeisApplicationAutoMapperProfile : Profile
CreateMap();
CreateMap();
CreateMap();
-
+ //ԤԼ
+ CreateMap();
+ CreateMap();
+ CreateMap();
+
}
}
diff --git a/src/Shentun.Peis.Application/ThirdBookings/ThirdBookingAppService.cs b/src/Shentun.Peis.Application/ThirdBookings/ThirdBookingAppService.cs
new file mode 100644
index 0000000..7ce0016
--- /dev/null
+++ b/src/Shentun.Peis.Application/ThirdBookings/ThirdBookingAppService.cs
@@ -0,0 +1,125 @@
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Configuration;
+using Shentun.Peis.Enums;
+using Shentun.Peis.Models;
+using Shentun.Peis.PlugIns.Sms;
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Services;
+using Volo.Abp.Domain.Repositories;
+
+namespace Shentun.Peis.ThirdBookings
+{
+ ///
+ /// 第三方预约记录
+ ///
+ [Authorize]
+ [ApiExplorerSettings(GroupName = "Work")]
+ public class ThirdBookingAppService : ApplicationService
+ {
+ private readonly IRepository _thirdBookingRepository;
+ private readonly IRepository _thirdInterfaceRepository;
+
+ public ThirdBookingAppService(
+ IRepository thirdBookingRepository,
+ IRepository thirdInterfaceRepository)
+ {
+ _thirdBookingRepository = thirdBookingRepository;
+ _thirdInterfaceRepository = thirdInterfaceRepository;
+ }
+
+
+ ///
+ /// 获取人寿预约记录
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdBooking/GetThirdBookingList")]
+ public async Task> GetThirdBookingListAsync(GetThirdBookingListInputDto input)
+ {
+ Guid? customerOrgRegisterId = null;
+ Guid? customerOrgId = null;
+
+ var thirdBookingInterface = await _thirdInterfaceRepository.FirstOrDefaultAsync(o => o.ThirdInterfaceType ==
+ ThirdInterfaceTypeFlag.ThirdBooking);
+ if (thirdBookingInterface != null && thirdBookingInterface.IsActive == 'Y')
+ {
+
+ var parmValue = thirdBookingInterface.ParmValue;
+ var configurationBuilder = new ConfigurationBuilder()
+ .AddJsonStream(new MemoryStream(System.Text.Encoding.UTF8.GetBytes(parmValue)));
+ var interfaceConfig = configurationBuilder.Build();
+ var isActive = interfaceConfig.GetSection("Interface").GetSection("IsActive").Value;
+ var customerOrgRegisterIdPara = interfaceConfig.GetSection("Interface").GetSection("CustomerOrgRegisterId").Value;
+ var customerOrgIdPara = interfaceConfig.GetSection("Interface").GetSection("CustomerOrgId").Value;
+ if (!string.IsNullOrWhiteSpace(isActive)
+ && isActive == "Y")
+ {
+ customerOrgRegisterId = Guid.Parse(customerOrgRegisterIdPara);
+ customerOrgId = Guid.Parse(customerOrgIdPara);
+ }
+ }
+
+ var query = await _thirdBookingRepository.GetQueryableAsync();
+ if (!string.IsNullOrWhiteSpace(input.StartDate) && !string.IsNullOrWhiteSpace(input.StartDate))
+ {
+ query = query.Where(m => m.BookingDate >= Convert.ToDateTime(input.StartDate) &&
+ m.BookingDate < Convert.ToDateTime(input.EndDate).AddDays(1));
+ }
+ if (!string.IsNullOrWhiteSpace(input.KeyWord))
+ {
+ query = query.Where(m => m.PatientName == input.KeyWord
+ || m.IdNo == input.KeyWord || m.Phone == input.KeyWord);
+ }
+ if (input.MedicalStatus != null)
+ {
+ query = query.Where(m => m.MedicalStatus == input.MedicalStatus);
+ }
+
+ var entListDto = query.Select(s => new GetThirdBookingListDto
+ {
+ ThirdBookingId = s.Id,
+ Age = s.Age,
+ BookingDate = s.BookingDate,
+ CustomerOrgGroupId = s.CustomerOrgGroupId,
+ IdNo = s.IdNo,
+ MedicalStatus = s.MedicalStatus,
+ PatientName = s.PatientName,
+ Phone = s.Phone,
+ SexId = GetSexId(s.SexName),
+ CustomerOrgId = customerOrgId,
+ CustomerOrgRegisterId = customerOrgRegisterId,
+ }).ToList();
+
+ return entListDto;
+
+ }
+
+
+
+ ///
+ /// 转换性别
+ ///
+ ///
+ private static char GetSexId(string SexName)
+ {
+ char SexId = 'U';
+ if (SexName == "0" || SexName == "男")
+ {
+ SexId = 'M';
+ }
+ if (SexName == "1" || SexName == "女")
+ {
+ SexId = 'F';
+ }
+ return SexId;
+ }
+
+
+ }
+}
diff --git a/src/Shentun.Peis.Application/ThirdMedicalCenters/ThirdMedicalCenterAppService.cs b/src/Shentun.Peis.Application/ThirdMedicalCenters/ThirdMedicalCenterAppService.cs
new file mode 100644
index 0000000..0d319b6
--- /dev/null
+++ b/src/Shentun.Peis.Application/ThirdMedicalCenters/ThirdMedicalCenterAppService.cs
@@ -0,0 +1,217 @@
+using Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Mvc;
+using Shentun.Peis.ThirdMedicalCenters;
+using Shentun.Peis.HelperDto;
+using Shentun.Peis.Models;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp.Application.Services;
+using Volo.Abp.Domain.Repositories;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+
+
+ ///
+ /// 第三方体检中心
+ ///
+ [ApiExplorerSettings(GroupName = "Work")]
+ [Authorize]
+ public class ThirdMedicalCenterAppService : ApplicationService
+ {
+ private readonly IRepository _thirdMedicalCenterRepository;
+ private readonly CacheService _cacheService;
+ private readonly ThirdMedicalCenterManager _thirdMedicalCenterManager;
+ private readonly IRepository _thirdMedicalCenterBookingDateRepository;
+ public ThirdMedicalCenterAppService(
+ IRepository thirdMedicalCenterRepository,
+ CacheService cacheService,
+ ThirdMedicalCenterManager thirdMedicalCenterManager,
+ IRepository thirdMedicalCenterBookingDateRepository)
+ {
+ _thirdMedicalCenterRepository = thirdMedicalCenterRepository;
+ _cacheService = cacheService;
+ _thirdMedicalCenterManager = thirdMedicalCenterManager;
+ _thirdMedicalCenterBookingDateRepository = thirdMedicalCenterBookingDateRepository;
+ }
+
+ ///
+ /// 获取通过主键
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/Get")]
+ public async Task GetAsync(ThirdMedicalCenterIdInputDto input)
+ {
+ var thirdMedicalCenterEnt = await _thirdMedicalCenterRepository.GetAsync(input.ThirdMedicalCenterId);
+ var entityDto = ObjectMapper.Map(thirdMedicalCenterEnt);
+ entityDto.CreatorName = await _cacheService.GetSurnameAsync(entityDto.CreatorId);
+ entityDto.LastModifierName = await _cacheService.GetSurnameAsync(entityDto.LastModifierId);
+ return entityDto;
+ }
+
+ ///
+ /// 获取列表 可根据条件检索
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/GetList")]
+ public async Task> GetListAsync(ThirdMedicalCenterListInputDto input)
+ {
+
+ var query = await _thirdMedicalCenterRepository.GetQueryableAsync();
+
+ if (input.CustomerOrgGroupId != null)
+ query = query.Where(m => m.CustomerOrgGroupId == input.CustomerOrgGroupId);
+
+
+ if (!string.IsNullOrWhiteSpace(input.KeyWord))
+ query = query.Where(m => m.DisplayName.Contains(input.KeyWord));
+
+
+ var entdto = query.Select(s => new ThirdMedicalCenterDto
+ {
+ CreationTime = s.CreationTime,
+ CreatorId = s.CreatorId,
+ DisplayName = s.DisplayName,
+ DisplayOrder = s.DisplayOrder,
+ Id = s.Id,
+ CustomerOrgGroupId = s.CustomerOrgGroupId,
+ LastModificationTime = s.LastModificationTime,
+ LastModifierId = s.LastModifierId,
+ CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result,
+ LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result
+ }).OrderBy(o => o.DisplayOrder).ToList();
+
+ return entdto;
+
+
+ }
+
+ ///
+ /// 创建
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/Create")]
+ public async Task CreateAsync(CreateThirdMedicalCenterDto input)
+ {
+ var createEntity = ObjectMapper.Map(input);
+ var entity = await _thirdMedicalCenterManager.CreateAsync(createEntity);
+ entity = await _thirdMedicalCenterRepository.InsertAsync(entity);
+ var dto = ObjectMapper.Map(entity);
+ dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId);
+ dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId);
+ return dto;
+ }
+
+ ///
+ /// 更新
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/Update")]
+ public async Task UpdateAsync(UpdateThirdMedicalCenterDto input)
+ {
+ var entity = await _thirdMedicalCenterRepository.GetAsync(input.ThirdMedicalCenterId);
+ var sourceEntity = ObjectMapper.Map(input);
+ await _thirdMedicalCenterManager.UpdateAsync(sourceEntity, entity);
+ entity = await _thirdMedicalCenterRepository.UpdateAsync(entity);
+ var dto = ObjectMapper.Map(entity);
+ dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId);
+ dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId);
+ return dto;
+ }
+
+
+ ///
+ /// 删除
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/Delete")]
+ public async Task DeleteAsync(ThirdMedicalCenterIdInputDto input)
+ {
+ await _thirdMedicalCenterManager.CheckAndDeleteAsync(input.ThirdMedicalCenterId);
+ }
+
+
+
+ ///
+ /// 修改排序 置顶,置底
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/UpdateManySort")]
+ public async Task UpdateManySortAsync(UpdateManySortThirdMedicalCenterInputDto input)
+ {
+ await _thirdMedicalCenterManager.UpdateManySortAsync(input.ThirdMedicalCenterId, input.SortType);
+ }
+
+ ///
+ /// 修改排序 拖拽
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/UpdateSortMany")]
+ public async Task UpdateSortManyAsync(UpdateSortManyCommonDto input)
+ {
+ await _thirdMedicalCenterManager.UpdateSortManyAsync(input);
+ }
+
+
+ ///
+ /// 根据体检中心获取可预约日期
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/GetThirdMedicalCenterBookingDateList")]
+ public async Task> GetThirdMedicalCenterBookingDateListAsync(ThirdMedicalCenterIdInputDto input)
+ {
+ var entList = await _thirdMedicalCenterBookingDateRepository.GetListAsync(m => m.ThirdMedicalCenterId == input.ThirdMedicalCenterId);
+ var entListDto = entList.OrderBy(o => o.BookingDate).Select(s => new GetThirdMedicalCenterBookingDateListDto
+ {
+ BookingDate = DataHelper.ConversionDateShortToString(s.BookingDate),
+ Id = s.Id,
+ ThirdMedicalCenterId = s.ThirdMedicalCenterId
+ }).ToList();
+
+ return entListDto;
+ }
+
+
+ ///
+ /// 生成预约日期 会先删除再添加
+ ///
+ ///
+ ///
+ [HttpPost("api/app/ThirdMedicalCenter/CreateThirdMedicalCenterBookingDate")]
+ public async Task CreateThirdMedicalCenterBookingDateAsync(CreateThirdMedicalCenterBookingDateInputDto input)
+ {
+ //删除
+ await _thirdMedicalCenterBookingDateRepository.DeleteAsync(d => d.ThirdMedicalCenterId == input.ThirdMedicalCenterId);
+ if (input.BookingDates.Any())
+ {
+ List thirdMedicalCenterBookingDates = new List();
+
+ foreach (var date in input.BookingDates)
+ {
+
+ thirdMedicalCenterBookingDates.Add(new ThirdMedicalCenterBookingDate
+ {
+ BookingDate = Convert.ToDateTime(date),
+ ThirdMedicalCenterId = input.ThirdMedicalCenterId
+ });
+ }
+
+ if (thirdMedicalCenterBookingDates.Any())
+ {
+ await _thirdMedicalCenterBookingDateRepository.InsertManyAsync(thirdMedicalCenterBookingDates);
+ }
+ }
+ }
+
+
+ }
+}
diff --git a/src/Shentun.Peis.Domain.Shared/Enums/ThirdInterfaceTypeFlag.cs b/src/Shentun.Peis.Domain.Shared/Enums/ThirdInterfaceTypeFlag.cs
index 0eecde4..54bbbed 100644
--- a/src/Shentun.Peis.Domain.Shared/Enums/ThirdInterfaceTypeFlag.cs
+++ b/src/Shentun.Peis.Domain.Shared/Enums/ThirdInterfaceTypeFlag.cs
@@ -41,5 +41,8 @@ namespace Shentun.Peis.Enums
[Description("危急值随访短信推送")]
public const string CriticalSmsPush = "11";
+
+ [Description("第三方预约对接")]
+ public const string ThirdBooking = "12";
}
}
diff --git a/src/Shentun.Peis.Domain/PatientRegisters/CreatePatientRegisterArg.cs b/src/Shentun.Peis.Domain/PatientRegisters/CreatePatientRegisterArg.cs
index 7bedbd5..170af3a 100644
--- a/src/Shentun.Peis.Domain/PatientRegisters/CreatePatientRegisterArg.cs
+++ b/src/Shentun.Peis.Domain/PatientRegisters/CreatePatientRegisterArg.cs
@@ -126,5 +126,10 @@ namespace Shentun.Peis.PatientRegisters
/// 预约ID
///
public string AppointPatientRegisterId { get; set; }
+
+ ///
+ /// 第三方预约Id
+ ///
+ public string ThirdBookingId { get; set; }
}
}
diff --git a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
index 8602386..38f061c 100644
--- a/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
+++ b/src/Shentun.Peis.Domain/PatientRegisters/PatientRegisterManager.cs
@@ -352,7 +352,8 @@ namespace Shentun.Peis.PatientRegisters
SummaryDate = null,
SummaryDoctorId = null,
ThirdInfo = entity.ThirdInfo,
- AppointPatientRegisterId = entity.AppointPatientRegisterId
+ AppointPatientRegisterId = entity.AppointPatientRegisterId,
+ ThirdBookingId = entity.ThirdBookingId
};
if (patientRegisterEnt.CustomerOrgGroupId != Guid.Empty && patientRegisterEnt.CustomerOrgGroupId != null)
diff --git a/src/Shentun.Peis.Domain/ThirdBookings/ThirdBooking.cs b/src/Shentun.Peis.Domain/ThirdBookings/ThirdBooking.cs
index 45bd0dd..9d68acd 100644
--- a/src/Shentun.Peis.Domain/ThirdBookings/ThirdBooking.cs
+++ b/src/Shentun.Peis.Domain/ThirdBookings/ThirdBooking.cs
@@ -100,6 +100,12 @@ namespace Shentun.Peis.Models
[Column("marital_status_name")]
public string MaritalStatusName { get; set; }
+ ///
+ /// 体检状态 0未开始 1已登记 2已完成体检
+ ///
+ [Column("medical_status")]
+ public char MedicalStatus { get; set; }
+
[Column("concurrency_stamp")]
public string ConcurrencyStamp { get; set; }
diff --git a/src/Shentun.Peis.Domain/ThirdMedicalCenters/ThirdMedicalCenterManager.cs b/src/Shentun.Peis.Domain/ThirdMedicalCenters/ThirdMedicalCenterManager.cs
new file mode 100644
index 0000000..5d8a572
--- /dev/null
+++ b/src/Shentun.Peis.Domain/ThirdMedicalCenters/ThirdMedicalCenterManager.cs
@@ -0,0 +1,133 @@
+using Shentun.Peis.HelperDto;
+using Shentun.Peis.Models;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Volo.Abp;
+using Volo.Abp.Domain.Repositories;
+using Volo.Abp.Domain.Services;
+
+namespace Shentun.Peis.ThirdMedicalCenters
+{
+ public class ThirdMedicalCenterManager : DomainService
+ {
+ private readonly IRepository _thirdMedicalCenterRepository;
+ private readonly IRepository _thirdMedicalCenterBookingDateRepository;
+ public ThirdMedicalCenterManager(
+ IRepository thirdMedicalCenterRepository,
+ IRepository thirdMedicalCenterBookingDateRepository
+ )
+ {
+ _thirdMedicalCenterRepository = thirdMedicalCenterRepository;
+ _thirdMedicalCenterBookingDateRepository = thirdMedicalCenterBookingDateRepository;
+ }
+
+ ///
+ /// 创建
+ ///
+ ///
+ ///
+ public async Task CreateAsync(
+ ThirdMedicalCenter entity
+ )
+ {
+ Verify(entity);
+ await EntityHelper.CheckSameName(_thirdMedicalCenterRepository, entity.DisplayName);
+ return new ThirdMedicalCenter
+ {
+ DisplayName = entity.DisplayName,
+ CustomerOrgGroupId = entity.CustomerOrgGroupId,
+ DisplayOrder = await EntityHelper.CreateMaxDisplayOrder(_thirdMedicalCenterRepository)
+ };
+ }
+
+ ///
+ /// 更新
+ ///
+ ///
+ ///
+ ///
+ public async Task UpdateAsync(
+ ThirdMedicalCenter sourceEntity,
+ ThirdMedicalCenter targetEntity
+ )
+ {
+ DataHelper.CheckEntityIsNull(sourceEntity);
+ Verify(targetEntity);
+ if (sourceEntity.DisplayName != targetEntity.DisplayName)
+ {
+
+ await EntityHelper.CheckSameName(_thirdMedicalCenterRepository, sourceEntity.DisplayName, targetEntity);
+ targetEntity.DisplayName = sourceEntity.DisplayName;
+ }
+
+ targetEntity.CustomerOrgGroupId = sourceEntity.CustomerOrgGroupId;
+ }
+
+
+ ///
+ /// 删除
+ ///
+ ///
+ ///
+ ///
+ public async Task CheckAndDeleteAsync(Guid id)
+ {
+ var thirdMedicalCenterBookingDateEnt = await _thirdMedicalCenterBookingDateRepository.FirstOrDefaultAsync(f => f.ThirdMedicalCenterId == id);
+ if (thirdMedicalCenterBookingDateEnt != null)
+ {
+ throw new UserFriendlyException("第三方体检中心设置了预约日期,不能删除");
+ }
+ await _thirdMedicalCenterRepository.DeleteAsync(id);
+ }
+
+
+
+
+ ///
+ /// 修改排序 置顶,置底
+ ///
+ /// 需要修改的ID
+ /// 修改方式:1 置顶 2 置底
+ ///
+ public async Task UpdateManySortAsync(Guid id, int SortType)
+ {
+ await EntityHelper.UpdateManySortCommonAsync(_thirdMedicalCenterRepository, id, SortType);
+ }
+
+
+
+ ///
+ /// 修改排序 拖拽
+ ///
+ ///
+ ///
+ ///
+ ///
+ public async Task UpdateSortManyAsync(UpdateSortManyCommonDto input)
+ {
+ await EntityHelper.UpdateSortManyCommonAsync(_thirdMedicalCenterRepository, input);
+ }
+
+
+
+ ///
+ /// 检查空值
+ ///
+ ///
+ private void Verify(ThirdMedicalCenter entity)
+ {
+
+ DataHelper.CheckEntityIsNull(entity);
+ DataHelper.CheckStringIsNull(entity.DisplayName, "名称");
+ DataHelper.CheckGuidIsDefaultValue(entity.CustomerOrgGroupId, "单位分组ID");
+
+
+
+ }
+
+
+ }
+}
diff --git a/src/Shentun.Peis.EntityFrameworkCore/DbMapping/ThirdBookings/ThirdBookingDbMapping.cs b/src/Shentun.Peis.EntityFrameworkCore/DbMapping/ThirdBookings/ThirdBookingDbMapping.cs
index 85bc8f2..5cff0c2 100644
--- a/src/Shentun.Peis.EntityFrameworkCore/DbMapping/ThirdBookings/ThirdBookingDbMapping.cs
+++ b/src/Shentun.Peis.EntityFrameworkCore/DbMapping/ThirdBookings/ThirdBookingDbMapping.cs
@@ -28,6 +28,7 @@ namespace Shentun.Peis.DbMapping
entity.Property(t => t.ChildCompanyName).HasComment("分公司");
entity.Property(t => t.DepartmentName).HasComment("部门");
entity.Property(t => t.MaritalStatusName).HasComment("婚姻状况");
+ entity.Property(t => t.MedicalStatus).HasComment("体检状态 0未开始 1已登记 2已完成体检").HasDefaultValueSql("'0'").IsRequired(); ;
entity.Property(e => e.Id).IsFixedLength().IsRequired();
diff --git a/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240927073902_update_third_booking.Designer.cs b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240927073902_update_third_booking.Designer.cs
new file mode 100644
index 0000000..f9db27c
--- /dev/null
+++ b/src/Shentun.Peis.EntityFrameworkCore/Migrations/20240927073902_update_third_booking.Designer.cs
@@ -0,0 +1,15955 @@
+//
+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("20240927073902_update_third_booking")]
+ partial class update_third_booking
+ {
+ 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(100)
+ .HasColumnType("character varying(100)")
+ .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("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("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(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("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