Пример #1
0
 public override bool IsValidResult(CprBroker.Schemas.Part.RegistreringType1 result)
 {
     if (base.IsValidResult(result))
     {
         DateTime?d = result.Tidspunkt.ToDateTime();
         if (d.HasValue)
         {
             return(Input.DateRangeIncludes(d.Value));
         }
     }
     return(false);
 }
Пример #2
0
        public RegistreringType1 Read(PersonIdentifier uuid, LaesInputType input, Func <string, Guid> cpr2uuidFunc, out QualityLevel?ql)
        {
            CprBroker.Schemas.Part.RegistreringType1 ret = null;
            if (IPartPerCallDataProviderHelper.CanCallOnline(uuid.CprNumber))
            {
                EnsurePersonDataExists(uuid.CprNumber);
            }

            using (var dataContext = new DPRDataContext(this.ConnectionString))
            {
                var db = PersonInfo.GetPersonInfo(dataContext, decimal.Parse(uuid.CprNumber));
                if (db != null)
                {
                    UuidCache cache = new UuidCache();
                    cache.FillCache(db.RelatedPnrs);

                    ret = db.ToRegisteringType1(cache.GetUuid, dataContext);
                }
            }
            ql = QualityLevel.DataProvider;
            return(ret);
        }
Пример #3
0
        public static PersonRegistration FromXmlType(CprBroker.Schemas.Part.RegistreringType1 partRegistration)
        {
            PersonRegistration ret = null;

            if (partRegistration != null)
            {
                ret = new PersonRegistration()
                {
                    PersonRegistrationId = Guid.NewGuid(),

                    ActorRef          = ActorRef.FromXmlType(partRegistration.AktoerRef),
                    CommentText       = partRegistration.CommentText,
                    LifecycleStatusId = LifecycleStatus.GetCode(partRegistration.LivscyklusKode),
                    RegistrationDate  = partRegistration.Tidspunkt.ToDateTime().Value,

                    //PersonState = PersonState.FromXmlType(partRegistration.TilstandListe)
                };

                /*
                 * if (partRegistration.AttributListe != null)
                 * {
                 *  ret.PersonAttributes.AddRange(CprBroker.Data.Part.PersonAttributes.FromXmlType(partRegistration.AttributListe));
                 * }
                 *
                 * if (partRegistration.RelationListe != null)
                 * {
                 *  ret.PersonRelationships.AddRange(PersonRelationship.FromXmlType(partRegistration.RelationListe));
                 * }
                 */
                ret.SetContents(partRegistration);

                if (!string.IsNullOrEmpty(partRegistration.SourceObjectsXml))
                {
                    ret.SourceObjects = System.Xml.Linq.XElement.Parse(partRegistration.SourceObjectsXml);
                }
            }
            return(ret);
        }
Пример #4
0
        public static FiltreretOejebliksbilledeType Merge(PersonIdentifier pId, VirkningType targetVirkning, RegistreringType1[] oioRegs)
        {
            return(new FiltreretOejebliksbilledeType()
            {
                AttributListe = new AttributListeType()
                {
                    Egenskab = RegistreringType1.MergeIntervals <EgenskabType>(oioRegs, targetVirkning, oio => oio.AttributListe.Egenskab),
                    RegisterOplysning = RegistreringType1.MergeIntervals <RegisterOplysningType>(oioRegs, targetVirkning, oio => oio.AttributListe.RegisterOplysning),
                    SundhedOplysning = RegistreringType1.MergeIntervals <SundhedOplysningType>(oioRegs, targetVirkning, oio => oio.AttributListe.SundhedOplysning),
                    LokalUdvidelse = null
                },

                RelationListe = new RelationListeType()
                {
                    Aegtefaelle = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Aegtefaelle),
                    Boern = MergeIntervals <PersonFlerRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Boern),
                    Bopaelssamling = MergeIntervals <PersonFlerRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Bopaelssamling),
                    ErstatningAf = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.ErstatningAf),
                    ErstatningFor = MergeIntervals <PersonFlerRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.ErstatningFor),
                    Fader = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Fader),
                    Foraeldremyndighedsboern = MergeIntervals <PersonFlerRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Foraeldremyndighedsboern),
                    Foraeldremyndighedsindehaver = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Foraeldremyndighedsindehaver),
                    LokalUdvidelse = null,
                    Moder = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.Moder),
                    RegistreretPartner = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.RegistreretPartner),
                    RetligHandleevneVaergeForPersonen = MergeIntervals <PersonRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.RetligHandleevneVaergeForPersonen),
                    RetligHandleevneVaergemaalsindehaver = MergeIntervals <PersonFlerRelationType>(oioRegs, targetVirkning, oio => oio.RelationListe.RetligHandleevneVaergemaalsindehaver),
                },
                TilstandListe = new TilstandListeType()
                {
                },

                BrugervendtNoegleTekst = pId.CprNumber,

                UUID = pId.UUID.Value.ToString()
            });
        }