diff --git a/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/CreateAppointScheduleWithDetailInputDto.cs b/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/CreateAppointScheduleWithDetailInputDto.cs
index f4cf9f5..ca16d08 100644
--- a/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/CreateAppointScheduleWithDetailInputDto.cs
+++ b/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/CreateAppointScheduleWithDetailInputDto.cs
@@ -6,6 +6,11 @@ namespace Shentun.WebPeis.AppointSchedules
{
public class CreateAppointScheduleWithDetailInputDto
{
+ ///
+ /// 体检中心ID
+ ///
+ public Guid MedicalCenterId { get; set; }
+
///
/// 开始日期
///
diff --git a/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/GetAppointScheduleListInputDto.cs b/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/GetAppointScheduleListInputDto.cs
new file mode 100644
index 0000000..c34adea
--- /dev/null
+++ b/src/Shentun.WebPeis.Application.Contracts/AppointSchedules/GetAppointScheduleListInputDto.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.WebPeis.AppointSchedules
+{
+ public class GetAppointScheduleListInputDto
+ {
+ ///
+ /// 体检中心ID
+ ///
+ public Guid MedicalCenterId { get; set; }
+ }
+}
diff --git a/src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs b/src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs
index 0f79f09..186aa27 100644
--- a/src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs
+++ b/src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs
@@ -56,13 +56,13 @@ namespace Shentun.WebPeis.AppointSchedules
[HttpPost("api/app/AppointSchedule/GetAppointScheduleDateList")]
public async Task> GetAppointScheduleDateListAsync(MedicalCenterIdInputDto input)
{
- Guid medicalCenterId ;
- if (input == null || input.MedicalCenterId == Guid.Empty || input.MedicalCenterId == null)
+ Guid medicalCenterId;
+ if (input == null || input.MedicalCenterId == Guid.Empty || input.MedicalCenterId == null)
{
var webPeisOrganizationUnit = await _webPeisOrganizationUnitManager.GetMedicalCenterListAsync();
if (webPeisOrganizationUnit.Count > 1 || webPeisOrganizationUnit.Count == 0)
{
- throw new UserFriendlyException("体检中心参数不能为空");
+ throw new UserFriendlyException("体检中心参数不能为空");
}
medicalCenterId = webPeisOrganizationUnit.First().Id;
}
@@ -122,7 +122,7 @@ namespace Shentun.WebPeis.AppointSchedules
}
-
+
///
@@ -139,7 +139,7 @@ namespace Shentun.WebPeis.AppointSchedules
//所有日期
List dateTimes = DataHelper.GetAllDatesWithinRange(startDate, endDate);
- var appointScheduleTemplateList = await _appointScheduleTemplateRepository.GetListAsync();
+ var appointScheduleTemplateList = await _appointScheduleTemplateRepository.GetListAsync(m => m.MedicalCenterId == input.MedicalCenterId);
foreach (var dateTime in dateTimes)
{
@@ -403,9 +403,9 @@ namespace Shentun.WebPeis.AppointSchedules
///
///
[HttpPost("api/app/AppointSchedule/GetAppointScheduleNumberLimitList")]
- public async Task> GetAppointScheduleListAsync()
+ public async Task> GetAppointScheduleListAsync(GetAppointScheduleListInputDto input)
{
- var entList = await _appointScheduleRepository.GetQueryableAsync();
+ var entList = (await _appointScheduleRepository.GetQueryableAsync()).Where(m => m.MedicalCenterId == input.MedicalCenterId);
var entListDto = entList.Select(s => new AppointScheduleDto
{
AmNumberLimit = s.AmNumberLimit,
diff --git a/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs b/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs
index 9b41f97..172652a 100644
--- a/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs
+++ b/src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs
@@ -38,7 +38,7 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
{
DataHelper.CheckEntityIsNull(entity);
- var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.WeekId == entity.WeekId);
+ var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.WeekId == entity.WeekId && f.MedicalCenterId == entity.MedicalCenterId);
if (isWeekId != null)
throw new UserFriendlyException($"WeekId数据已存在,不能重复");
return new AppointScheduleTemplate
diff --git a/src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs b/src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs
index be212f1..4ec9ae2 100644
--- a/src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs
+++ b/src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs
@@ -23,24 +23,26 @@ public partial class AppointSchedule : AuditedEntity, IHasConcurrencyStamp
/// 下午数量限制
///
public int PmNumberLimit { get; set; }
+
///
/// 个人体检数量限制
///
-
public int SingleNumberLimit { get; set; }
public string ConcurrencyStamp { get; set; }
///
/// 主键
///
-
public Guid AppointScheduleId { get; set; }
+ ///
+ /// 体检中心ID
+ ///
public Guid MedicalCenterId { get; set; }
public virtual ICollection AppointScheduleTimes { get; set; } = new List();
- public override object?[] GetKeys()
+ public override object[] GetKeys()
{
return [AppointScheduleId];
}
diff --git a/src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs b/src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs
index 57e1ff1..5e77ef3 100644
--- a/src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs
+++ b/src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs
@@ -57,11 +57,14 @@ public class AppointScheduleTemplate : AuditedEntity, IHasConcurrencyStamp, ID
public int DisplayOrder { get; set; }
+ ///
+ /// 体检中心ID
+ ///
public Guid MedicalCenterId { get; set; }
public string? ConcurrencyStamp { get; set; }
- public override object?[] GetKeys()
+ public override object[] GetKeys()
{
return [AppointScheduleTemplateId];
}
diff --git a/src/Shentun.WebPeis.Domain/Models/AppointScheduleTime.cs b/src/Shentun.WebPeis.Domain/Models/AppointScheduleTime.cs
index d3cb223..297f94b 100644
--- a/src/Shentun.WebPeis.Domain/Models/AppointScheduleTime.cs
+++ b/src/Shentun.WebPeis.Domain/Models/AppointScheduleTime.cs
@@ -41,9 +41,9 @@ public partial class AppointScheduleTime : AuditedEntity, IHasConcurrencyStamp
public Guid AppointScheduleId { get; set; }
- public virtual AppointSchedule? AppointSchedule { get; set; }
+ public virtual AppointSchedule AppointSchedule { get; set; }
- public override object?[] GetKeys()
+ public override object[] GetKeys()
{
return [AppointScheduleTimeId];
}