Browse Source

预约

master
wxd 2 years ago
parent
commit
bf48d2f228
  1. 47
      src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs
  2. 50
      src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/CreateAppointScheduleTemplateDto.cs
  3. 60
      src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/CreateOrUpdateAppointScheduleTemplateInputDto.cs
  4. 14
      src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/MedicalCenterIdInputDto.cs
  5. 19
      src/Shentun.WebPeis.Application.Contracts/AppointScheduleTimes/UpdateAppointScheduleTimeNumberLimitInputDto.cs
  6. 15
      src/Shentun.WebPeis.Application.Contracts/AppointSchedules/AppointScheduleDto.cs
  7. 19
      src/Shentun.WebPeis.Application.Contracts/AppointSchedules/UpdateAppointScheduleIsWorkInputDto.cs
  8. 198
      src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs
  9. 22
      src/Shentun.WebPeis.Application/AppointScheduleTimes/AppointScheduleTimeAppService.cs
  10. 239
      src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs
  11. 20
      src/Shentun.WebPeis.Application/WebPeisApplicationAutoMapperProfile.cs
  12. 26
      src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs
  13. 12
      src/Shentun.WebPeis.Domain/AppointSchedules/AppointScheduleManager.cs
  14. 16
      src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs
  15. 58
      src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs
  16. 5
      src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplateTime.cs
  17. 4
      src/Shentun.WebPeis.EntityFrameworkCore/Configures/AppointScheduleConfigure.cs
  18. 12
      src/Shentun.WebPeis.EntityFrameworkCore/Configures/AppointScheduleTemplateConfigure.cs

47
src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/AppointScheduleTemplateDto.cs

@ -15,41 +15,50 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
/// </summary>
public int WeekId { get; set; }
/// <summary>
/// 上午数量限制
/// 个人体检数量限制
/// </summary>
public int SingleNumberLimit { get; set; }
public int AmNumberLimit { get; set; }
/// <summary>
/// 下午数量限制
/// </summary>
public int PmNumberLimit { get; set; }
/// <summary>
/// 个人体检数量限制
/// 是否上班
/// </summary>
public int SingleNumberLimit { get; set; }
public char IsWork { get; set; }
public int DisplayOrder { get; set; }
public List<AppointScheduleTemplateTimeDto> AppointScheduleTemplateTimes { get; set; } = new List<AppointScheduleTemplateTimeDto>();
}
public class AppointScheduleTemplateTimeDto : AuditedEntityDtoName
{
/// <summary>
/// 上午上班时间
/// 主键
/// </summary>
public Guid AppointScheduleTemplateTimeId { get; set; }
public Guid AppointScheduleTemplateId { get; set; }
public string AmStartTime { get; set; }
/// <summary>
/// 上午下班时间
/// 数量限制
/// </summary>
public int NumberLimit { get; set; }
public string AmStopTime { get; set; }
/// <summary>
/// 下午上班时间
/// 开始时间 格式 08:00
/// </summary>
public string PmStartTime { get; set; }
public string StartTime { get; set; }
/// <summary>
/// 下午下班时间
/// 结束时间 格式 09:00
/// </summary>
public string PmStopTime { get; set; }
public int DisplayOrder { get; set; }
public string StopTime { get; set; }
}
}

50
src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/CreateAppointScheduleTemplateDto.cs

@ -1,50 +0,0 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Shentun.WebPeis.AppointScheduleTemplates
{
public class CreateAppointScheduleTemplateDto
{
/// <summary>
/// 星期
/// </summary>
public int WeekId { get; set; }
/// <summary>
/// 上午数量限制
/// </summary>
public int AmNumberLimit { get; set; }
/// <summary>
/// 下午数量限制
/// </summary>
public int PmNumberLimit { get; set; }
/// <summary>
/// 个人体检数量限制
/// </summary>
public int SingleNumberLimit { get; set; }
/// <summary>
/// 上午上班时间
/// </summary>
public string AmStartTime { get; set; }
/// <summary>
/// 上午下班时间
/// </summary>
public string AmStopTime { get; set; }
/// <summary>
/// 下午上班时间
/// </summary>
public string PmStartTime { get; set; }
/// <summary>
/// 下午下班时间
/// </summary>
public string PmStopTime { get; set; }
}
}

60
src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/CreateOrUpdateAppointScheduleTemplateInputDto.cs

@ -0,0 +1,60 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Shentun.WebPeis.AppointScheduleTemplates
{
public class CreateOrUpdateAppointScheduleTemplateInputDto
{
/// <summary>
/// 体检中心ID
/// </summary>
public Guid MedicalCenterId { get; set; }
/// <summary>
/// 预约计划模板
/// </summary>
public List<CreateAppointScheduleTemplateDto> AppointScheduleTemplates { get; set; }
}
public class CreateAppointScheduleTemplateDto
{
/// <summary>
/// 星期
/// </summary>
public int WeekId { get; set; }
/// <summary>
/// 个人体检数量限制
/// </summary>
public int SingleNumberLimit { get; set; }
/// <summary>
/// 是否上班
/// </summary>
public char IsWork { get; set; }
public List<CreateAppointScheduleTemplateTimeDto> AppointScheduleTemplateTimes { get; set; } = new List<CreateAppointScheduleTemplateTimeDto>();
}
public class CreateAppointScheduleTemplateTimeDto
{
/// <summary>
/// 数量限制
/// </summary>
public int NumberLimit { get; set; }
/// <summary>
/// 开始时间 格式 08:00
/// </summary>
public string StartTime { get; set; }
/// <summary>
/// 结束时间 格式 09:00
/// </summary>
public string StopTime { get; set; }
}
}

14
src/Shentun.WebPeis.Application.Contracts/AppointScheduleTemplates/MedicalCenterIdInputDto.cs

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Shentun.WebPeis.AppointScheduleTemplates
{
public class MedicalCenterIdInputDto
{
/// <summary>
/// 体检中心
/// </summary>
public Guid MedicalCenterId { get; set; }
}
}

19
src/Shentun.WebPeis.Application.Contracts/AppointScheduleTimes/UpdateAppointScheduleTimeNumberLimitInputDto.cs

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Shentun.WebPeis.AppointScheduleTimes
{
public class UpdateAppointScheduleTimeNumberLimitInputDto
{
/// <summary>
/// 主键
/// </summary>
public Guid AppointScheduleTimeId { get; set; }
/// <summary>
/// 数量限制
/// </summary>
public int NumberLimit { get; set; }
}
}

15
src/Shentun.WebPeis.Application.Contracts/AppointSchedules/AppointScheduleDto.cs

@ -11,19 +11,22 @@ namespace Shentun.WebPeis.AppointSchedules
/// </summary>
public string AppointDate { get; set; }
/// <summary>
/// 上午数量限制
/// 个人体检数量限制
/// </summary>
public int AmNumberLimit { get; set; }
public int SingleNumberLimit { get; set; }
/// <summary>
/// 下午数量限制
/// 体检中心ID
/// </summary>
public int PmNumberLimit { get; set; }
public Guid MedicalCenterId { get; set; }
/// <summary>
/// 个人体检数量限制
/// 是否上班
/// </summary>
public int SingleNumberLimit { get; set; }
public char IsWork { get; set; }
/// <summary>
/// 主键

19
src/Shentun.WebPeis.Application.Contracts/AppointSchedules/UpdateAppointScheduleIsWorkInputDto.cs

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Text;
namespace Shentun.WebPeis.AppointSchedules
{
public class UpdateAppointScheduleIsWorkInputDto
{
/// <summary>
/// 主键ID
/// </summary>
public Guid AppointScheduleId { get; set; }
/// <summary>
/// 是否上班
/// </summary>
public char IsWork { get; set; }
}
}

198
src/Shentun.WebPeis.Application/AppointScheduleTemplates/AppointScheduleTemplateAppService.cs

@ -24,61 +24,70 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
{
private readonly IRepository<AppointScheduleTemplate> _appointScheduleTemplateRepository;
private readonly IRepository<AppointScheduleTemplateTime> _appointScheduleTemplateTimeRepository;
private readonly AppointScheduleTemplateManager _appointScheduleTemplateManager;
private readonly CacheService _cacheService;
public AppointScheduleTemplateAppService(
IRepository<AppointScheduleTemplate> appointScheduleTemplateRepository,
AppointScheduleTemplateManager appointScheduleTemplateManager,
CacheService cacheService)
CacheService cacheService,
IRepository<AppointScheduleTemplateTime> appointScheduleTemplateTimeRepository)
{
_appointScheduleTemplateRepository = appointScheduleTemplateRepository;
_appointScheduleTemplateManager = appointScheduleTemplateManager;
_cacheService = cacheService;
_appointScheduleTemplateTimeRepository = appointScheduleTemplateTimeRepository;
}
/// <summary>
/// 根据ID获取预约计划模板
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/Get")]
public async Task<AppointScheduleTemplateDto> GetAsync(AppointScheduleTemplateIdInputDto input)
{
var entity = await _appointScheduleTemplateRepository.GetAsync(g => g.AppointScheduleTemplateId == input.AppointScheduleTemplateId);
var dto = ObjectMapper.Map<AppointScheduleTemplate, AppointScheduleTemplateDto>(entity);
dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId);
dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId);
return dto;
}
/// <summary>
/// 根据预约计划模板列表
/// 获取预约计划模板列表 根据体检中心
/// </summary>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/GetList")]
public async Task<List<AppointScheduleTemplateDto>> GetListAsync()
public async Task<List<AppointScheduleTemplateDto>> GetListAsync(MedicalCenterIdInputDto input)
{
var entList = await _appointScheduleTemplateRepository.GetQueryableAsync();
var entListDto = entList.Select(s => new AppointScheduleTemplateDto
var query = from appointScheduleTemplate in await _appointScheduleTemplateRepository.GetQueryableAsync()
join appointScheduleTemplateTime in await _appointScheduleTemplateTimeRepository.GetQueryableAsync()
on appointScheduleTemplate.AppointScheduleTemplateId equals appointScheduleTemplateTime.AppointScheduleTemplateId into appointScheduleTemplateTimeTemp
from appointScheduleTemplateTimeHaveEmpty in appointScheduleTemplateTimeTemp.DefaultIfEmpty()
where appointScheduleTemplate.MedicalCenterId == input.MedicalCenterId
select new
{
appointScheduleTemplate,
appointScheduleTemplateTimeHaveEmpty
};
var entListDto = query.ToList().GroupBy(g => g.appointScheduleTemplate.AppointScheduleTemplateId).Select(s => new AppointScheduleTemplateDto
{
AmNumberLimit = s.AmNumberLimit,
AmStartTime = DataHelper.ConvertTimeOnlyToString(s.AmStartTime),
AmStopTime = DataHelper.ConvertTimeOnlyToString(s.AmStopTime),
AppointScheduleTemplateId = s.AppointScheduleTemplateId,
CreationTime = s.CreationTime,
CreatorId = s.CreatorId,
DisplayOrder = s.DisplayOrder,
LastModificationTime = s.LastModificationTime,
LastModifierId = s.LastModifierId,
PmNumberLimit = s.PmNumberLimit,
PmStartTime = DataHelper.ConvertTimeOnlyToString(s.PmStartTime),
PmStopTime = DataHelper.ConvertTimeOnlyToString(s.PmStopTime),
SingleNumberLimit = s.SingleNumberLimit,
WeekId = s.WeekId,
CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result,
LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result
AppointScheduleTemplateId = s.FirstOrDefault().appointScheduleTemplate.AppointScheduleTemplateId,
CreationTime = s.FirstOrDefault().appointScheduleTemplate.CreationTime,
CreatorId = s.FirstOrDefault().appointScheduleTemplate.CreatorId,
DisplayOrder = s.FirstOrDefault().appointScheduleTemplate.DisplayOrder,
LastModificationTime = s.FirstOrDefault().appointScheduleTemplate.LastModificationTime,
LastModifierId = s.FirstOrDefault().appointScheduleTemplate.LastModifierId,
SingleNumberLimit = s.FirstOrDefault().appointScheduleTemplate.SingleNumberLimit,
WeekId = s.FirstOrDefault().appointScheduleTemplate.WeekId,
CreatorName = _cacheService.GetSurnameAsync(s.FirstOrDefault().appointScheduleTemplate.CreatorId).Result,
LastModifierName = _cacheService.GetSurnameAsync(s.FirstOrDefault().appointScheduleTemplate.LastModifierId).Result,
IsWork = s.FirstOrDefault().appointScheduleTemplate.IsWork,
AppointScheduleTemplateTimes = s.Where(m => m.appointScheduleTemplateTimeHaveEmpty != null).Select(ss => new AppointScheduleTemplateTimeDto
{
AppointScheduleTemplateId = ss.appointScheduleTemplateTimeHaveEmpty.AppointScheduleTemplateId,
AppointScheduleTemplateTimeId = ss.appointScheduleTemplateTimeHaveEmpty.AppointScheduleTemplateTimeId,
CreationTime = ss.appointScheduleTemplateTimeHaveEmpty.CreationTime,
CreatorId = ss.appointScheduleTemplateTimeHaveEmpty.CreatorId,
CreatorName = _cacheService.GetSurnameAsync(ss.appointScheduleTemplateTimeHaveEmpty.CreatorId).Result,
LastModificationTime = ss.appointScheduleTemplateTimeHaveEmpty.LastModificationTime,
LastModifierId = ss.appointScheduleTemplateTimeHaveEmpty.LastModifierId,
NumberLimit = ss.appointScheduleTemplateTimeHaveEmpty.NumberLimit,
StartTime = DataHelper.ConvertTimeOnlyToString(ss.appointScheduleTemplateTimeHaveEmpty.StartTime),
StopTime = DataHelper.ConvertTimeOnlyToString(ss.appointScheduleTemplateTimeHaveEmpty.StopTime),
LastModifierName = _cacheService.GetSurnameAsync(ss.appointScheduleTemplateTimeHaveEmpty.LastModifierId).Result
}).ToList()
}).ToList();
return entListDto;
}
@ -89,100 +98,63 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/CreateOrUpdateAppointScheduleTemplate")]
public async Task<List<AppointScheduleTemplateDto>> CreateOrUpdateAppointScheduleTemplateAsync(List<CreateAppointScheduleTemplateDto> input)
public async Task<List<AppointScheduleTemplateDto>> CreateOrUpdateAppointScheduleTemplateAsync(CreateOrUpdateAppointScheduleTemplateInputDto input)
{
List<AppointScheduleTemplateDto> entListDto = new List<AppointScheduleTemplateDto>();
var deleteList = await _appointScheduleTemplateRepository.GetListAsync();
await _appointScheduleTemplateRepository.DeleteManyAsync(deleteList,true);
#region 删除
var deleteAppointScheduleTemplateList = await _appointScheduleTemplateRepository.GetListAsync(m => m.MedicalCenterId == input.MedicalCenterId);
await _appointScheduleTemplateTimeRepository.DeleteAsync(d => deleteAppointScheduleTemplateList.Select(s => s.AppointScheduleTemplateId).Contains(d.AppointScheduleTemplateId), true);
await _appointScheduleTemplateRepository.DeleteManyAsync(deleteAppointScheduleTemplateList, true);
#endregion
List<AppointScheduleTemplate> appointScheduleTemplateList = new List<AppointScheduleTemplate>();
foreach (var item in input)
foreach (var appointScheduleTemplate in input.AppointScheduleTemplates)
{
var createEntity = ObjectMapper.Map<CreateAppointScheduleTemplateDto, AppointScheduleTemplate>(item);
createEntity.AppointScheduleTemplateId = GuidGenerator.Create();
createEntity = await _appointScheduleTemplateManager.CreateAsync(createEntity);
await _appointScheduleTemplateRepository.InsertAsync(createEntity,true);
}
Guid appointScheduleTemplateId = GuidGenerator.Create();
entListDto = await GetListAsync();
var createEntity = new AppointScheduleTemplate
{
AppointScheduleTemplateId = appointScheduleTemplateId,
DisplayOrder = input.AppointScheduleTemplates.IndexOf(appointScheduleTemplate) + 1,
IsWork = appointScheduleTemplate.IsWork,
MedicalCenterId = input.MedicalCenterId,
SingleNumberLimit = appointScheduleTemplate.SingleNumberLimit,
WeekId = appointScheduleTemplate.WeekId
};
return entListDto;
}
createEntity = await _appointScheduleTemplateManager.CreateAsync(createEntity);
/// <summary>
/// 创建预约计划模板
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/Create")]
public async Task<AppointScheduleTemplateDto> CreateAsync(CreateAppointScheduleTemplateDto input)
{
var createEntity = ObjectMapper.Map<CreateAppointScheduleTemplateDto, AppointScheduleTemplate>(input);
createEntity.AppointScheduleTemplateId = GuidGenerator.Create();
var entity = await _appointScheduleTemplateManager.CreateAsync(createEntity);
entity = await _appointScheduleTemplateRepository.InsertAsync(entity);
var dto = ObjectMapper.Map<AppointScheduleTemplate, AppointScheduleTemplateDto>(entity);
dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId);
dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId);
return dto;
}
await _appointScheduleTemplateRepository.InsertAsync(createEntity, true);
/// <summary>
/// 更新预约计划模板
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/Update")]
public async Task<AppointScheduleTemplateDto> UpdateAsync(UpdateAppointScheduleTemplateDto input)
{
var entity = await _appointScheduleTemplateRepository.GetAsync(g => g.AppointScheduleTemplateId == input.AppointScheduleTemplateId);
var sourceEntity = ObjectMapper.Map<UpdateAppointScheduleTemplateDto, AppointScheduleTemplate>(input);
await _appointScheduleTemplateManager.UpdateAsync(sourceEntity, entity);
entity = await _appointScheduleTemplateRepository.UpdateAsync(entity);
var dto = ObjectMapper.Map<AppointScheduleTemplate, AppointScheduleTemplateDto>(entity);
dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId);
dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId);
return dto;
}
//插入时间段
foreach (var appointScheduleTemplateTime in appointScheduleTemplate.AppointScheduleTemplateTimes)
{
Guid appointScheduleTemplateTimeId = GuidGenerator.Create();
var createAppointScheduleTemplateTime = new AppointScheduleTemplateTime
{
AppointScheduleTemplateId = appointScheduleTemplateId,
AppointScheduleTemplateTimeId = appointScheduleTemplateTimeId,
NumberLimit = appointScheduleTemplateTime.NumberLimit,
StartTime = DataHelper.ConvertStringToTimeOnly(appointScheduleTemplateTime.StartTime),
StopTime = DataHelper.ConvertStringToTimeOnly(appointScheduleTemplateTime.StopTime)
};
/// <summary>
/// 删除预约计划模板
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/Delete")]
public async Task DeleteAsync(AppointScheduleTemplateIdInputDto input)
{
await _appointScheduleTemplateManager.CheckAndDeleteAsync(input.AppointScheduleTemplateId);
}
await _appointScheduleTemplateTimeRepository.InsertAsync(createAppointScheduleTemplateTime, true);
}
}
entListDto = await GetListAsync(new MedicalCenterIdInputDto
{
MedicalCenterId = input.MedicalCenterId
});
/// <summary>
/// 修改排序 置顶,置底
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/UpdateManySort")]
public async Task UpdateManySortAsync(UpdateManySortInputDto input)
{
await _appointScheduleTemplateManager.UpdateManySortAsync(input.Id, input.SortType);
return entListDto;
}
/// <summary>
/// 修改排序 拖拽
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTemplate/UpdateSortMany")]
public async Task UpdateSortManyAsync(UpdateSortManyDto input)
{
await _appointScheduleTemplateManager.UpdateSortManyAsync(input);
}
}
}

22
src/Shentun.WebPeis.Application/AppointScheduleTimes/AppointScheduleTimeAppService.cs

@ -7,6 +7,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Application.Services;
using Volo.Abp.Domain.Repositories;
@ -60,5 +61,26 @@ namespace Shentun.WebPeis.AppointScheduleTimes
}).ToList();
return entListDto;
}
/// <summary>
/// 修改预约计划明细人数限制
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointScheduleTime/UpdateAppointScheduleTimeNumberLimit")]
public async Task UpdateAppointScheduleTimeNumberLimitAsync(UpdateAppointScheduleTimeNumberLimitInputDto input)
{
var appointScheduleTimeEnt = await _appointScheduleTimeRepository.FirstOrDefaultAsync(f => f.AppointScheduleTimeId == input.AppointScheduleTimeId);
if (appointScheduleTimeEnt == null)
throw new UserFriendlyException("预约计划明细ID不正确");
if (appointScheduleTimeEnt.AppointNumber > input.NumberLimit)
throw new UserFriendlyException("人数限制不能小于当前已预约数量");
appointScheduleTimeEnt.NumberLimit = input.NumberLimit;
await _appointScheduleTimeRepository.UpdateAsync(appointScheduleTimeEnt);
}
}
}

239
src/Shentun.WebPeis.Application/AppointSchedules/AppointScheduleAppService.cs

@ -1,5 +1,6 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Nito.AsyncEx.Synchronous;
using Shentun.WebPeis.AppointScheduleTimes;
using Shentun.WebPeis.Models;
using Shentun.WebPeis.OrganizationUnits;
@ -22,6 +23,7 @@ namespace Shentun.WebPeis.AppointSchedules
{
private readonly IRepository<AppointSchedule> _appointScheduleRepository;
private readonly IRepository<AppointScheduleTemplate> _appointScheduleTemplateRepository;
private readonly IRepository<AppointScheduleTemplateTime> _appointScheduleTemplateTimeRepository;
private readonly IRepository<AppointScheduleTime> _appointScheduleTimeRepository;
private readonly CacheService _cacheService;
private readonly AppointScheduleManager _appointScheduleManager;
@ -36,7 +38,8 @@ namespace Shentun.WebPeis.AppointSchedules
IRepository<AppointScheduleTime> appointScheduleTimeRepository,
AppointScheduleTimeManager appointScheduleTimeManager,
SysParmValueManager sysParmValueManager,
WebPeisOrganizationUnitManager webPeisOrganizationUnitManager)
WebPeisOrganizationUnitManager webPeisOrganizationUnitManager,
IRepository<AppointScheduleTemplateTime> appointScheduleTemplateTimeRepository)
{
_appointScheduleRepository = appointScheduleRepository;
_cacheService = cacheService;
@ -46,6 +49,7 @@ namespace Shentun.WebPeis.AppointSchedules
_appointScheduleTimeManager = appointScheduleTimeManager;
_sysParmValueManager = sysParmValueManager;
_webPeisOrganizationUnitManager = webPeisOrganizationUnitManager;
_appointScheduleTemplateTimeRepository = appointScheduleTemplateTimeRepository;
}
/// <summary>
@ -124,6 +128,22 @@ namespace Shentun.WebPeis.AppointSchedules
}
/// <summary>
/// 修改预约计划表是否上班状态
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointSchedule/UpdateAppointScheduleIsWork")]
public async Task UpdateAppointScheduleIsWorkAsync(UpdateAppointScheduleIsWorkInputDto input)
{
var appointScheduleEnt = await _appointScheduleRepository.FirstOrDefaultAsync(f => f.AppointScheduleId == input.AppointScheduleId);
if (appointScheduleEnt == null)
throw new UserFriendlyException("预约计划ID不正确");
appointScheduleEnt.IsWork = input.IsWork;
await _appointScheduleRepository.UpdateAsync(appointScheduleEnt);
}
@ -149,15 +169,15 @@ namespace Shentun.WebPeis.AppointSchedules
var appointScheduleTemplate = appointScheduleTemplateList.Where(m => m.WeekId == weekId).FirstOrDefault();
if (appointScheduleTemplate != null)
{
Guid appointScheduleId = GuidGenerator.Create();
//有设置模板
Guid appointScheduleId = GuidGenerator.Create();
var createEntity = new AppointSchedule
{
AmNumberLimit = appointScheduleTemplate.AmNumberLimit,
AppointDate = dateTime,
AppointScheduleId = appointScheduleId,
PmNumberLimit = appointScheduleTemplate.PmNumberLimit,
MedicalCenterId = input.MedicalCenterId,
IsWork = appointScheduleTemplate.IsWork,
SingleNumberLimit = appointScheduleTemplate.SingleNumberLimit
};
@ -192,213 +212,52 @@ namespace Shentun.WebPeis.AppointSchedules
{
//增加明细计划
//获取系统参数 间隔时间
var appointScheduleAm = await _sysParmValueManager.GetSysParmValueAsync(Guid.Parse("150da355-dfbf-466b-9697-355836a862c4"), "appoint_schedule_am");
var appointSchedulePm = await _sysParmValueManager.GetSysParmValueAsync(Guid.Parse("150da355-dfbf-466b-9697-355836a862c4"), "appoint_schedule_pm");
//获取当前模板 时间段
var appointScheduleTemplateTimeList = await _appointScheduleTemplateTimeRepository.GetListAsync(m => m.AppointScheduleTemplateId == appointScheduleTemplate.AppointScheduleTemplateId);
if (appointScheduleTemplate.AmStartTime != null
&& appointScheduleTemplate.AmStopTime != null
&& appointScheduleTemplate.AmNumberLimit != 0)
if (appointScheduleTemplateTimeList.Any())
{
List<AppointScheduleTime> insertAppointScheduleTimeList = new List<AppointScheduleTime>();
//上午计划
for (var date = appointScheduleTemplate.AmStartTime.Value;
date < appointScheduleTemplate.AmStopTime.Value;
date = date.AddMinutes(Convert.ToInt32(appointScheduleAm)))
foreach (var appointScheduleTemplateTime in appointScheduleTemplateTimeList)
{
var appointScheduleTimeStopTime = date.AddMinutes(Convert.ToInt32(appointScheduleAm));
if (appointScheduleTimeStopTime > appointScheduleTemplate.AmStopTime.Value)
appointScheduleTimeStopTime = appointScheduleTemplate.AmStopTime.Value;
var appointScheduleTimeEntity = new AppointScheduleTime
if (appointScheduleTemplateTime.StartTime != null
&& appointScheduleTemplateTime.StopTime != null
&& appointScheduleTemplateTime.NumberLimit > 0)
{
AppointNumber = 0,
StopTime = appointScheduleTimeStopTime,
AppointScheduleId = createEntity.AppointScheduleId,
AppointScheduleTimeId = GuidGenerator.Create(),
NumberLimit = 0,
StartTime = date
};
appointScheduleTimeEntity = _appointScheduleTimeManager.CreateAsync(appointScheduleTimeEntity);
insertAppointScheduleTimeList.Add(appointScheduleTimeEntity);
}
int numberLimit = appointScheduleTemplate.AmNumberLimit / insertAppointScheduleTimeList.Count;
insertAppointScheduleTimeList.ForEach(f => f.NumberLimit = numberLimit);
await _appointScheduleTimeRepository.InsertManyAsync(insertAppointScheduleTimeList);
}
if (appointScheduleTemplate.PmStartTime != null && appointScheduleTemplate.PmStopTime != null)
{
//下午计划
List<AppointScheduleTime> insertAppointScheduleTimeList = new List<AppointScheduleTime>();
//上午计划
for (var date = appointScheduleTemplate.PmStartTime.Value;
date < appointScheduleTemplate.PmStopTime.Value;
date = date.AddMinutes(Convert.ToInt32(appointSchedulePm)))
{
var appointScheduleTimeEntity = new AppointScheduleTime
{
AppointNumber = 0,
StopTime = appointScheduleTemplateTime.StopTime.Value,
AppointScheduleId = createEntity.AppointScheduleId,
AppointScheduleTimeId = GuidGenerator.Create(),
NumberLimit = appointScheduleTemplateTime.NumberLimit,
StartTime = appointScheduleTemplateTime.StartTime.Value
};
var appointScheduleTimeStopTime = date.AddMinutes(Convert.ToInt32(appointSchedulePm));
if (appointScheduleTimeStopTime > appointScheduleTemplate.PmStopTime.Value)
appointScheduleTimeStopTime = appointScheduleTemplate.PmStopTime.Value;
var appointScheduleTimeEntity = new AppointScheduleTime
{
AppointNumber = 0,
StopTime = appointScheduleTimeStopTime,
AppointScheduleId = createEntity.AppointScheduleId,
AppointScheduleTimeId = GuidGenerator.Create(),
NumberLimit = 0,
StartTime = date
};
appointScheduleTimeEntity = _appointScheduleTimeManager.CreateAsync(appointScheduleTimeEntity);
appointScheduleTimeEntity = _appointScheduleTimeManager.CreateAsync(appointScheduleTimeEntity);
insertAppointScheduleTimeList.Add(appointScheduleTimeEntity);
insertAppointScheduleTimeList.Add(appointScheduleTimeEntity);
}
}
int numberLimit = appointScheduleTemplate.PmNumberLimit / insertAppointScheduleTimeList.Count;
insertAppointScheduleTimeList.ForEach(f => f.NumberLimit = numberLimit);
await _appointScheduleTimeRepository.InsertManyAsync(insertAppointScheduleTimeList);
}
}
}
}
}
/// <summary>
/// 修改某天计划的限制人数
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/AppointSchedule/UpdateAppointScheduleNumberLimit")]
public async Task UpdateAppointScheduleNumberLimitAsync(UpdateAppointScheduleNumberLimitInputDto input)
{
var appointScheduleEnt = await _appointScheduleRepository.GetAsync(g => g.AppointScheduleId == input.AppointScheduleId);
//上午截止时间
var weekId = (int)appointScheduleEnt.AppointDate.DayOfWeek;
var amStopTime = (await _appointScheduleTemplateRepository.GetAsync(g => g.WeekId == weekId)).AmStopTime.Value;
if (input.AmNumberLimit != null && appointScheduleEnt.AmNumberLimit != input.AmNumberLimit)
{
//修改上午计划
int addNumberLimit = input.AmNumberLimit.Value - appointScheduleEnt.AmNumberLimit;
//增加人数
var appointScheduleTimeList = await _appointScheduleTimeRepository.GetListAsync(m => m.AppointScheduleId == appointScheduleEnt.AppointScheduleId
&& new DateTime(appointScheduleEnt.AppointDate.Year,
appointScheduleEnt.AppointDate.Month,
appointScheduleEnt.AppointDate.Day,
m.StartTime.Hour,
m.StartTime.Minute,
m.StartTime.Second) > DateTime.Now
&& m.StartTime < amStopTime);
if (addNumberLimit > 0)
{
//增加
var numberLimit = addNumberLimit / appointScheduleTimeList.Count;
if (numberLimit > 0)
{
appointScheduleTimeList.ForEach(f => f.NumberLimit += numberLimit);
await _appointScheduleTimeRepository.UpdateManyAsync(appointScheduleTimeList);
}
}
else
{
//增加
var numberLimit = -addNumberLimit / appointScheduleTimeList.Count;
if (numberLimit > 0)
{
appointScheduleTimeList.ForEach(f => f.NumberLimit -= numberLimit);
await _appointScheduleTimeRepository.UpdateManyAsync(appointScheduleTimeList);
}
}
}
if (input.PmNumberLimit != null && appointScheduleEnt.PmNumberLimit != input.PmNumberLimit)
{
//修改下午计划
int addNumberLimit = input.PmNumberLimit.Value - appointScheduleEnt.PmNumberLimit;
//增加人数
var appointScheduleTimeList = await _appointScheduleTimeRepository.GetListAsync(m => m.AppointScheduleId == appointScheduleEnt.AppointScheduleId
&& new DateTime(appointScheduleEnt.AppointDate.Year,
appointScheduleEnt.AppointDate.Month,
appointScheduleEnt.AppointDate.Day,
m.StartTime.Hour,
m.StartTime.Minute,
m.StartTime.Second) > DateTime.Now
&& m.StartTime > amStopTime);
if (addNumberLimit > 0)
{
//增加
var numberLimit = addNumberLimit / appointScheduleTimeList.Count;
if (numberLimit > 0)
{
appointScheduleTimeList.ForEach(f => f.NumberLimit += numberLimit);
}
await _appointScheduleTimeRepository.UpdateManyAsync(appointScheduleTimeList);
}
}
else
{
//增加
var numberLimit = -addNumberLimit / appointScheduleTimeList.Count;
if (numberLimit > 0)
{
appointScheduleTimeList.ForEach(f => f.NumberLimit -= numberLimit);
await _appointScheduleTimeRepository.UpdateManyAsync(appointScheduleTimeList);
}
}
}
if (input.AmNumberLimit != null)
{
appointScheduleEnt.AmNumberLimit = input.AmNumberLimit.Value;
}
if (input.PmNumberLimit != null)
{
appointScheduleEnt.PmNumberLimit = input.PmNumberLimit.Value;
}
if (input.SingleNumberLimit != null)
{
appointScheduleEnt.SingleNumberLimit = input.SingleNumberLimit.Value;
}
await _appointScheduleRepository.UpdateAsync(appointScheduleEnt);
}
/// <summary>
/// 获取预约计划
@ -410,7 +269,6 @@ namespace Shentun.WebPeis.AppointSchedules
var entList = (await _appointScheduleRepository.GetQueryableAsync()).Where(m => m.MedicalCenterId == input.MedicalCenterId);
var entListDto = entList.Select(s => new AppointScheduleDto
{
AmNumberLimit = s.AmNumberLimit,
AppointDate = DataHelper.ConversionDateShortToString(s.AppointDate),
AppointScheduleId = s.AppointScheduleId,
CreationTime = s.CreationTime,
@ -419,8 +277,9 @@ namespace Shentun.WebPeis.AppointSchedules
LastModifierId = s.LastModifierId,
CreatorName = _cacheService.GetSurnameAsync(s.CreatorId).Result,
LastModifierName = _cacheService.GetSurnameAsync(s.LastModifierId).Result,
PmNumberLimit = s.PmNumberLimit,
SingleNumberLimit = s.SingleNumberLimit
SingleNumberLimit = s.SingleNumberLimit,
IsWork = s.IsWork,
MedicalCenterId = s.MedicalCenterId
}).OrderBy(o => o.AppointDate).ToList();
return entListDto;
}

20
src/Shentun.WebPeis.Application/WebPeisApplicationAutoMapperProfile.cs

@ -68,16 +68,16 @@ public class WebPeisApplicationAutoMapperProfile : Profile
CreateMap<AppointScheduleTemplate, AppointScheduleTemplateDto>();
CreateMap<CreateAppointScheduleTemplateDto, AppointScheduleTemplate>()
.ForMember(d => d.AmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStartTime)))
.ForMember(d => d.AmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStopTime)))
.ForMember(d => d.PmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStartTime)))
.ForMember(d => d.PmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStopTime)));
CreateMap<UpdateAppointScheduleTemplateDto, AppointScheduleTemplate>()
.ForMember(d => d.AmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStartTime)))
.ForMember(d => d.AmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStopTime)))
.ForMember(d => d.PmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStartTime)))
.ForMember(d => d.PmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStopTime)));
//CreateMap<CreateAppointScheduleTemplateDto, AppointScheduleTemplate>()
// .ForMember(d => d.AmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStartTime)))
// .ForMember(d => d.AmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStopTime)))
// .ForMember(d => d.PmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStartTime)))
// .ForMember(d => d.PmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStopTime)));
//CreateMap<UpdateAppointScheduleTemplateDto, AppointScheduleTemplate>()
// .ForMember(d => d.AmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStartTime)))
// .ForMember(d => d.AmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.AmStopTime)))
// .ForMember(d => d.PmStartTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStartTime)))
// .ForMember(d => d.PmStopTime, opt => opt.MapFrom(src => DataHelper.ConvertStringToTimeOnly(src.PmStopTime)));
CreateMap<ThirdInterface, ThirdInterfaceDto>();
CreateMap<CreateThirdInterfaceDto, ThirdInterface>();

26
src/Shentun.WebPeis.Domain/AppointScheduleTemplates/AppointScheduleTemplateManager.cs

@ -38,19 +38,16 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
{
DataHelper.CheckEntityIsNull(entity);
var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.WeekId == entity.WeekId && f.MedicalCenterId == entity.MedicalCenterId);
var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.MedicalCenterId == entity.MedicalCenterId
&& f.WeekId == entity.WeekId && f.MedicalCenterId == entity.MedicalCenterId);
if (isWeekId != null)
throw new UserFriendlyException($"WeekId数据已存在,不能重复");
return new AppointScheduleTemplate
{
AppointScheduleTemplateId = entity.AppointScheduleTemplateId,
DisplayOrder = await EntityHelper.CreateMaxDisplayOrder<AppointScheduleTemplate>(_appointScheduleTemplateRepository),
AmNumberLimit = entity.AmNumberLimit,
AmStartTime = entity.AmStartTime,
AmStopTime = entity.AmStopTime,
PmNumberLimit = entity.PmNumberLimit,
PmStartTime = entity.PmStartTime,
PmStopTime = entity.PmStopTime,
DisplayOrder = entity.DisplayOrder,
MedicalCenterId = entity.MedicalCenterId,
IsWork = entity.IsWork,
SingleNumberLimit = entity.SingleNumberLimit,
WeekId = entity.WeekId
};
@ -70,17 +67,16 @@ namespace Shentun.WebPeis.AppointScheduleTemplates
DataHelper.CheckEntityIsNull(sourceEntity);
DataHelper.CheckEntityIsNull(targetEntity);
var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.WeekId == sourceEntity.WeekId
var isWeekId = await _appointScheduleTemplateRepository.FirstOrDefaultAsync(f => f.MedicalCenterId == sourceEntity.MedicalCenterId
&& f.WeekId == sourceEntity.WeekId
&& f.AppointScheduleTemplateId != targetEntity.AppointScheduleTemplateId);
if (isWeekId != null)
throw new UserFriendlyException($"WeekId数据已存在,不能重复");
targetEntity.AmNumberLimit = sourceEntity.AmNumberLimit;
targetEntity.AmStartTime = sourceEntity.AmStartTime;
targetEntity.AmStopTime = sourceEntity.AmStopTime;
targetEntity.PmNumberLimit = sourceEntity.PmNumberLimit;
targetEntity.PmStartTime = sourceEntity.PmStartTime;
targetEntity.PmStopTime = sourceEntity.PmStopTime;
targetEntity.AppointScheduleTemplateId = sourceEntity.AppointScheduleTemplateId;
targetEntity.DisplayOrder = sourceEntity.DisplayOrder;
targetEntity.MedicalCenterId = sourceEntity.MedicalCenterId;
targetEntity.IsWork = sourceEntity.IsWork;
targetEntity.SingleNumberLimit = sourceEntity.SingleNumberLimit;
targetEntity.WeekId = sourceEntity.WeekId;
}

12
src/Shentun.WebPeis.Domain/AppointSchedules/AppointScheduleManager.cs

@ -39,20 +39,20 @@ namespace Shentun.WebPeis.AppointSchedules
{
return new AppointSchedule
{
AmNumberLimit = entity.AmNumberLimit,
AppointDate = entity.AppointDate,
AppointScheduleId = entity.AppointScheduleId,
AppointScheduleTimes = entity.AppointScheduleTimes,
PmNumberLimit = entity.PmNumberLimit,
SingleNumberLimit = entity.SingleNumberLimit
SingleNumberLimit = entity.SingleNumberLimit,
IsWork = entity.IsWork,
MedicalCenterId = entity.MedicalCenterId
};
}
else
{
isAppointDate.AmNumberLimit = entity.AmNumberLimit;
isAppointDate.IsWork = entity.IsWork;
isAppointDate.AppointDate = entity.AppointDate;
isAppointDate.AppointScheduleTimes = entity.AppointScheduleTimes;
isAppointDate.PmNumberLimit = entity.PmNumberLimit;
isAppointDate.MedicalCenterId = entity.MedicalCenterId;
isAppointDate.SingleNumberLimit = entity.SingleNumberLimit;
return isAppointDate;
@ -70,7 +70,7 @@ namespace Shentun.WebPeis.AppointSchedules
{
//先删除明细
await _appointScheduleTimeRepository.DeleteAsync(m => m.AppointScheduleId == appointScheduleId);
await _appointScheduleTimeRepository.DeleteAsync(m => m.AppointScheduleId == appointScheduleId);
await _appointScheduleRepository.DeleteAsync(d => d.AppointScheduleId == appointScheduleId);

16
src/Shentun.WebPeis.Domain/Models/AppointSchedule.cs

@ -15,14 +15,14 @@ public partial class AppointSchedule : AuditedEntity, IHasConcurrencyStamp
/// </summary>
public DateTime AppointDate { get; set; }
/// <summary>
/// 上午数量限制
/// </summary>
public int AmNumberLimit { get; set; }
/// <summary>
/// 下午数量限制
/// </summary>
public int PmNumberLimit { get; set; }
///// <summary>
///// 上午数量限制
///// </summary>
//public int AmNumberLimit { get; set; }
///// <summary>
///// 下午数量限制
///// </summary>
//public int PmNumberLimit { get; set; }
/// <summary>
/// 个人体检数量限制

58
src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplate.cs

@ -8,7 +8,7 @@ namespace Shentun.WebPeis.Models;
/// <summary>
/// 预约计划模板
/// </summary>
public class AppointScheduleTemplate : AuditedEntity, IHasConcurrencyStamp, IDisplayOrder
public class AppointScheduleTemplate : AuditedEntity, IHasConcurrencyStamp, IDisplayOrder
{
/// <summary>
@ -20,40 +20,40 @@ public class AppointScheduleTemplate : AuditedEntity, IHasConcurrencyStamp, ID
/// </summary>
public int WeekId { get; set; }
/// <summary>
/// 上午数量限制
/// </summary>
///// <summary>
///// 上午数量限制
///// </summary>
public int AmNumberLimit { get; set; }
/// <summary>
/// 下午数量限制
/// </summary>
//public int AmNumberLimit { get; set; }
///// <summary>
///// 下午数量限制
///// </summary>
public int PmNumberLimit { get; set; }
//public int PmNumberLimit { get; set; }
/// <summary>
/// 个人体检数量限制
/// </summary>
public int SingleNumberLimit { get; set; }
/// <summary>
/// 上午上班时间
/// </summary>
public TimeOnly? AmStartTime { get; set; }
/// <summary>
/// 上午下班时间
/// </summary>
public TimeOnly? AmStopTime { get; set; }
/// <summary>
/// 下午上班时间
/// </summary>
public TimeOnly? PmStartTime { get; set; }
/// <summary>
/// 下午下班时间
/// </summary>
public TimeOnly? PmStopTime { get; set; }
///// <summary>
///// 上午上班时间
///// </summary>
//public TimeOnly? AmStartTime { get; set; }
///// <summary>
///// 上午下班时间
///// </summary>
//public TimeOnly? AmStopTime { get; set; }
///// <summary>
///// 下午上班时间
///// </summary>
//public TimeOnly? PmStartTime { get; set; }
///// <summary>
///// 下午下班时间
///// </summary>
//public TimeOnly? PmStopTime { get; set; }
/// <summary>
/// 是否上班
/// </summary>

5
src/Shentun.WebPeis.Domain/Models/AppointScheduleTemplateTime.cs

@ -14,6 +14,7 @@ namespace Shentun.WebPeis.Models
/// 主键
/// </summary>
public Guid AppointScheduleTemplateTimeId { get; set; }
public Guid AppointScheduleTemplateId { get; set; }
/// <summary>
/// 数量限制
@ -26,12 +27,12 @@ namespace Shentun.WebPeis.Models
/// 开始时间
/// </summary>
public TimeOnly StartTime { get; set; }
public TimeOnly? StartTime { get; set; }
/// <summary>
/// 结束时间
/// </summary>
public TimeOnly StopTime { get; set; }
public TimeOnly? StopTime { get; set; }
public string? ConcurrencyStamp { get; set; }

4
src/Shentun.WebPeis.EntityFrameworkCore/Configures/AppointScheduleConfigure.cs

@ -37,8 +37,8 @@ namespace Shentun.WebPeis.Configures
.HasColumnType("timestamp without time zone")
.HasColumnName("last_modification_time");
entity.Property(e => e.LastModifierId).HasColumnName("last_modifier_id");
entity.Property(e => e.AmNumberLimit).IsRequired().HasColumnName("am_number_limit");
entity.Property(e => e.PmNumberLimit).IsRequired().HasColumnName("pm_number_limit");
//entity.Property(e => e.AmNumberLimit).IsRequired().HasColumnName("am_number_limit");
//entity.Property(e => e.PmNumberLimit).IsRequired().HasColumnName("pm_number_limit");
entity.Property(e => e.SingleNumberLimit).IsRequired().HasColumnName("single_number_limit");
entity.Property(e => e.MedicalCenterId).IsRequired().HasColumnName("medical_center_id");
entity.Property(e => e.IsWork).IsRequired().HasColumnName("is_work");

12
src/Shentun.WebPeis.EntityFrameworkCore/Configures/AppointScheduleTemplateConfigure.cs

@ -23,8 +23,8 @@ namespace Shentun.WebPeis.Configures
entity.Property(e => e.AppointScheduleTemplateId)
.ValueGeneratedNever()
.HasColumnName("appoint_schedule_template_id");
entity.Property(e => e.AmStartTime).HasColumnName("am_start_time");
entity.Property(e => e.AmStopTime).HasColumnName("am_stop_time");
//entity.Property(e => e.AmStartTime).HasColumnName("am_start_time");
//entity.Property(e => e.AmStopTime).HasColumnName("am_stop_time");
entity.Property(e => e.ConcurrencyStamp)
.HasMaxLength(40)
.HasColumnName("concurrency_stamp");
@ -37,10 +37,10 @@ namespace Shentun.WebPeis.Configures
.HasColumnType("timestamp without time zone")
.HasColumnName("last_modification_time");
entity.Property(e => e.LastModifierId).HasColumnName("last_modifier_id");
entity.Property(e => e.AmNumberLimit).IsRequired().HasColumnName("am_number_limit");
entity.Property(e => e.PmNumberLimit).IsRequired().HasColumnName("pm_number_limit");
entity.Property(e => e.PmStartTime).HasColumnName("pm_start_time");
entity.Property(e => e.PmStopTime).HasColumnName("pm_stop_time");
//entity.Property(e => e.AmNumberLimit).IsRequired().HasColumnName("am_number_limit");
//entity.Property(e => e.PmNumberLimit).IsRequired().HasColumnName("pm_number_limit");
//entity.Property(e => e.PmStartTime).HasColumnName("pm_start_time");
//entity.Property(e => e.PmStopTime).HasColumnName("pm_stop_time");
entity.Property(e => e.WeekId).IsRequired().HasColumnName("week_id");
entity.Property(e => e.SingleNumberLimit).IsRequired().HasColumnName("single_number_limit");
entity.Property(e => e.MedicalCenterId).IsRequired().HasColumnName("medical_center_id");

Loading…
Cancel
Save