示例#1
0
        internal IndloggetMedlemBO(int arkID)
        {
            using (ARK.Website.EntityFramework.Main.ArkDatabase db = new EntityFramework.Main.ArkDatabase())
            {
                Data = db.Medlems.FirstOrDefault(medlemItem => medlemItem.ArkID == arkID);
                if (Data == null)
                {
                    LogindStatus = MedlemLogindStatusEnum.UkendtMedlem;
                }
                else
                {
                    KendtRegnskabsmedlem = db.Regnskabsmedlems.First(medlemItem => medlemItem.ArkID == arkID);
                    Regnskabsmedlem      = KomponentManager.RegnskabsmedlemsManager.HentRegnskabsmedlem(arkID);
                    if (Regnskabsmedlem == null ||
                        Regnskabsmedlem.Status == MedlemsstatusEnum.Gammel)
                    {
                        LogindStatus = MedlemLogindStatusEnum.RegnskabsmedlemstatusGammel;
                    }
                    else
                    {
                        switch (Data.Status)
                        {
                        case MedlemsstatusEnum.Inaktiv:
                        case MedlemsstatusEnum.Aktiv:
                        {
                            ErRegnskabsdataOpdateret = MedlemmerManager.HarRegnskabsmedlemOgKendtRegnskabsmedlemSammeData(Regnskabsmedlem, KendtRegnskabsmedlem);
                            LogindStatus             = MedlemLogindStatusEnum.Succes;
                        } break;

                        case MedlemsstatusEnum.Gammel:
                        case MedlemsstatusEnum.IkkeAktiveret:
                        {
                            MedlemmerManager.OverskrivMedRegnskabsmedlemsdata(Regnskabsmedlem, KendtRegnskabsmedlem);
                            MedlemmerManager.OverskrivMedRegnskabsmedlemsdata(Regnskabsmedlem, Data);
                            Data.Status = Regnskabsmedlem.Status;
                            ErRegnskabsdataOpdateret = true;
                            LogindStatus             = MedlemLogindStatusEnum.Aktivering;
                        } break;

                        default:
                        {
                            throw new NotImplementedException("Data.Status = " + Data.Status);
                        }
                        }
                    }
                }
            }
        }