Ejemplo n.º 1
0
        public void HandlePractitioner(Visit visit, XCN physician, VisitPractitionerRole role)
        {
            string physicianIDNumber   = physician.IDNumber.Value;
            string physicianFamilyName = physician.FamilyName.Surname.Value;
            string physicanGivenName   = physician.GivenName.Value;
            string physicanMiddleName  = physician.SecondAndFurtherGivenNamesOrInitialsThereof.Value;

            if (physicianIDNumber == null &&
                physicianFamilyName == null &&
                physicanGivenName == null &&
                physicanMiddleName == null)
            {
                return;
            }
            var vp = new VisitPractitioner
            {
                Role         = role,
                Practitioner = GetPractitioner(physicianIDNumber)
                               ?? AddPractitioner(physicianIDNumber,
                                                  physicanGivenName,
                                                  physicianFamilyName),
                StartTime = Platform.Time
            };

            visit.Practitioners.Add(vp);
            foreach (var existing in visit.Practitioners)
            {
                if (existing != vp && existing.Role == vp.Role && existing.EndTime.HasValue == false)
                {
                    existing.EndTime = Platform.Time;
                }
            }
        }
Ejemplo n.º 2
0
        private static VisitPractitionerDetail CreateVisitPractitionerDetail(VisitPractitioner vp, IPersistenceContext context)
        {
            var detail = new VisitPractitionerDetail
            {
                Practitioner = new ExternalPractitionerAssembler().CreateExternalPractitionerSummary(vp.Practitioner, context),
                Role         = EnumUtils.GetEnumValueInfo(vp.Role, context),
                StartTime    = vp.StartTime,
                EndTime      = vp.EndTime
            };

            return(detail);
        }
Ejemplo n.º 3
0
 private void SetPhysician(PV1 pv1, VisitPractitioner practitioner)
 {
     SetPhysician(pv1, practitioner.Role.ToString(), practitioner.Practitioner);
 }