fix 结构变更

This commit is contained in:
2024-09-05 16:53:09 +08:00
parent 8330cb7095
commit 5ff07e61ef
5 changed files with 142 additions and 153 deletions

View File

@@ -26,20 +26,7 @@ public class AppointmentService : IAppointmentService
var exists = await _dbContext.Queryable<VisitorAppointmentEntity>().Where(x => x.No == request.No).AnyAsync();
exists.ThrowIfTrue("已经存在申请");
var existsDoorArea = await _dbContext.Queryable<AppointmentAreaEntity>()
.Where(x => x.TenantId == request.Factory)
.Where(x => x.Name == request.ApplyDoorArea)
.AnyAsync();
var existsWorkplace = true;
if (request.IsEnterWorkplace)
{
var count = await _dbContext.Queryable<AppointmentAreaEntity>().Where(x => x.TenantId == request.Factory)
.Where(x => request.ApplyWorkplaceAreas.Contains(x.Name))
.CountAsync();
existsWorkplace = request.ApplyWorkplaceAreas.Count == count;
}
var areas = await _dbContext.Queryable<AppointmentAreaEntity>().Where(x => x.TenantId == request.Factory).ToListAsync();
var mst = new VisitorAppointmentEntity
{
@@ -53,21 +40,10 @@ public class AppointmentService : IAppointmentService
Code = request.Code,
Source = request.Source,
Date = request.Date,
ApplyDoorArea = request.ApplyDoorArea,
Factory = request.Factory,
Reason = request.Reason,
DoorStart = request.DoorStart,
DoorEnd = request.DoorEnd,
Remark = request.Remark,
IsEnterWorkplace = request.IsEnterWorkplace,
ApplyWorkplaceAreas = request.ApplyWorkplaceAreas,
WorkplaceStart = request.WorkplaceStart,
WorkplaceEnd = request.WorkplaceEnd
};
if (!existsDoorArea || !existsWorkplace)
{
mst.Status = VisitorAppointmentStatusEnumType.Obsolete;
}
await _dbContext.InsertAsync(mst);
@@ -100,7 +76,7 @@ public class AppointmentService : IAppointmentService
}
}
(gainfo.Type == GainfoUserTypeEnumType.External && request.IsEnterWorkplace && item.ImageUrl.IsEmpty()).ThrowIfTrue($"{item.Name}的社保照片不可为空");
(gainfo.Type == GainfoUserTypeEnumType.External && item.IsEnterWorkplace && item.ImageUrl.IsEmpty()).ThrowIfTrue($"{item.Name}的社保照片不可为空");
var detail = new VisitorAppointmentDetailEntity
{
@@ -111,10 +87,26 @@ public class AppointmentService : IAppointmentService
Name = item.Name,
Phone = item.Phone,
Remark = item.Remark,
Status = mst.Status == VisitorAppointmentStatusEnumType.Valid
DoorStatus = areas.Where(x => x.Type == AppointmentAreaEnumType.Door)
.Select(x => x.Name)
.Contains(item.ApplyDoorArea)
? VisitorAppointmentDetailStatusEnumType.Wait
: VisitorAppointmentDetailStatusEnumType.Obsolete,
LicensePlate = item.LicensePlate
LicensePlate = item.LicensePlate,
ApplyDoorArea = item.ApplyDoorArea,
DoorStart = item.DoorStart,
DoorEnd = item.DoorEnd,
IsEnterWorkplace = item.IsEnterWorkplace,
WorkplaceStatus = item.IsEnterWorkplace &&
item.ApplyWorkplaceAreas.All(p => areas.Where(x => x.Type == AppointmentAreaEnumType.Workplace)
.Select(x => x.Name)
.Contains(p))
? VisitorAppointmentDetailStatusEnumType.Wait
: VisitorAppointmentDetailStatusEnumType.Obsolete,
ApplyWorkplaceAreas = item.ApplyWorkplaceAreas,
WorkplaceStart = item.WorkplaceStart,
WorkplaceEnd = item.WorkplaceEnd,
ImageUrl = item.ImageUrl
};
await _dbContext.InsertAsync(detail);