diff --git a/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs b/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs index 5f26d944..56f10e8c 100644 --- a/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs +++ b/Src/Dlhis.Basic/Appointment/Services/Implements/AppointmentService.cs @@ -186,14 +186,16 @@ public class AppointmentService : IAppointmentService detail.ThrowIfNull("数据不存在"); if (detail.IsEnterDoorArea && detail.DoorStatus == VisitorAppointmentDetailStatusEnumType.Arrived) - { detail.DoorStatus = VisitorAppointmentDetailStatusEnumType.FocusLeave; - } + + if (detail.IsEnterDoorArea && detail.DoorStatus == VisitorAppointmentDetailStatusEnumType.Wait) + detail.DoorStatus = VisitorAppointmentDetailStatusEnumType.Obsolete; if (detail.IsEnterWorkplace && detail.WorkplaceStatus == VisitorAppointmentDetailStatusEnumType.Arrived) - { detail.WorkplaceStatus = VisitorAppointmentDetailStatusEnumType.FocusLeave; - } + + if (detail.IsEnterWorkplace && detail.WorkplaceStatus == VisitorAppointmentDetailStatusEnumType.Wait) + detail.WorkplaceStatus = VisitorAppointmentDetailStatusEnumType.Obsolete; detail.FocusLeaveDateTime = DateTime.Now; detail.Remark += "强制离场原因:" + reason; @@ -401,7 +403,7 @@ public class AppointmentService : IAppointmentService { var gainfo = await _dbContext.Queryable().Where(x => x.IdNo == detail.IdNo || x.Code == detail.IdNo).SingleAsync(); gainfo.ThrowIfNull("人员信息不存在"); - + var areaCodes = GetValidAreaCodes(detail, withWorkplace).ToList(); if (areaCodes.IsEmpty()) return; diff --git a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs index 7725311b..3f8874e6 100644 --- a/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs +++ b/Src/Dlhis.Basic/Organization/Services/Implements/GainfoService.cs @@ -269,7 +269,10 @@ public class GainfoService : IGainfoService { var visitorAppointmentDetails = await _dbContext.Queryable() .Where(x => x.UserNo == gainfo.No) - .Where(x => x.DoorStatus == VisitorAppointmentDetailStatusEnumType.Wait || x.WorkplaceStatus == VisitorAppointmentDetailStatusEnumType.Wait) + .Where(x => x.DoorStatus == VisitorAppointmentDetailStatusEnumType.Wait + || x.WorkplaceStatus == VisitorAppointmentDetailStatusEnumType.Wait + || x.DoorStatus == VisitorAppointmentDetailStatusEnumType.Arrived + || x.WorkplaceStatus == VisitorAppointmentDetailStatusEnumType.Arrived) .ToListAsync();