Beispiel #1
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,ArDegreeName,EnDegreeName,Indx")] AcademicDegree academicDegree)
        {
            if (id != academicDegree.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(academicDegree);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AcademicDegreeExists(academicDegree.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(academicDegree));
        }
        public async Task <IActionResult> Edit(int id, [Bind("AcademicDegreeId,AcademicDegreeName,AcademicDegreeGroupId")] AcademicDegree academicDegree)
        {
            if (id != academicDegree.AcademicDegreeId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(academicDegree);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AcademicDegreeExists(academicDegree.AcademicDegreeId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AcademicDegreeGroupId"] = new SelectList(_context.AcademicDegreeGroups, "AcademicDegreeGroupId", "AcademicDegreeGroupId", academicDegree.AcademicDegreeGroupId);
            return(View(academicDegree));
        }
        public async Task <LecturalDTO> AddLecturalAsync(LecturalDTO lecturalDTO)
        {
            MilitaryRank militaryRank = await _context.MilitaryRank.Where(c => c.name == lecturalDTO.MilitaryRank).FirstOrDefaultAsync();

            Position position = await _context.Position.Where(c => c.name == lecturalDTO.Position).FirstOrDefaultAsync();

            AcademicDegree academicDegree = await _context.AcademicDegree.Where(c => c.name == lecturalDTO.AcademicDegree).FirstOrDefaultAsync();

            AcademicTitle academicTitle = await _context.AcademicTitle.Where(c => c.name == lecturalDTO.AcademicTitle).FirstOrDefaultAsync();


            Lectural newLecture = new Lectural(lecturalDTO, militaryRank, position, academicDegree, academicTitle);

            try
            {
                _context.Lectural.Add(newLecture);

                await _context.SaveChangesAsync();

                return(lecturalDTO);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!LecturalExists(lecturalDTO.id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }
        public async Task SaveAsync(AcademicDegree entity)
        {
            try
            {
                if (entity == null)
                {
                    return;
                }

                using (var timeLineContext = _contextFactory.GetTimeLineContext())
                {
                    var entityModel = await timeLineContext
                                      .AcademicDegrees
                                      .FirstOrDefaultAsync(item => item.Id.Equals(entity.Id));

                    if (entityModel == null)
                    {
                        entityModel = new DA.AcademicDegree();
                        MapForUpdateentity(entity, entityModel);
                        await timeLineContext.AcademicDegrees.AddAsync(entityModel);
                    }
                    else
                    {
                        MapForUpdateentity(entity, entityModel);
                    }


                    timeLineContext.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Beispiel #5
0
 public static void GraduateSim(SimDescription simDesc, AcademicDegree degree)
 {
     if ((simDesc != null) && (degree != null))
     {
         IHandleUniversityGraduation graduationRabbitHole = CollegeGraduation.GetGraduationRabbitHole() as IHandleUniversityGraduation;
         if (graduationRabbitHole != null)
         {
             Annex annex = graduationRabbitHole as Annex;
             if (annex != null)
             {
                 AnnexEx.AddSimToGraduationList(annex, simDesc, degree);
             }
             else
             {
                 graduationRabbitHole.AddSimToGraduationList(simDesc, degree);
             }
         }
         else if (simDesc.CreatedSim != null)
         {
             CollegeGraduation.GraduateInPlace entry = CollegeGraduation.GraduateInPlace.Singleton.CreateInstance(simDesc.CreatedSim, simDesc.CreatedSim, new InteractionPriority(InteractionPriorityLevel.High), false, false) as CollegeGraduation.GraduateInPlace;
             simDesc.CreatedSim.InteractionQueue.AddNext(entry);
             ActiveTopic.RemoveTopicFromSim(simDesc.CreatedSim, "University Graduation");
         }
     }
 }
Beispiel #6
0
 private async void AddAcademicDegreeAsync(AcademicDegree academicDegree) => await Task.Run(() =>
 {
     AcademicDegreeName = string.Empty;
     OnPropertyChanged("AcademicDegreeName");
     NirsSystem.AddObject(academicDegree);
     SetAcademicDegreesAsync();
 });
Beispiel #7
0
        private static void InitAcademicDegrees(ApplicationDbContext context)
        {
            if (context.AcademicDegrees.Any())
            {
                return;
            }
            var academicDegrees = new AcademicDegree[]
            {
                new AcademicDegree {
                    AcademicDegreeName = "CTESP"
                },
                new AcademicDegree {
                    AcademicDegreeName = "Licenciatura"
                },
                new AcademicDegree {
                    AcademicDegreeName = "Pós-Graduação"
                },
                new AcademicDegree {
                    AcademicDegreeName = "Mestrado"
                },
                new AcademicDegree {
                    AcademicDegreeName = "Doutoramento"
                }
            };

            foreach (AcademicDegree ad in academicDegrees)
            {
                context.AcademicDegrees.Add(ad);
            }
            context.SaveChanges();
        }
Beispiel #8
0
        public async Task <IActionResult> Create([Bind("Id,ArDegreeName,EnDegreeName,Indx")] AcademicDegree academicDegree)
        {
            if (ModelState.IsValid)
            {
                _context.Add(academicDegree);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(academicDegree));
        }
        public async Task <IActionResult> Create([Bind("AcademicDegreeId,AcademicDegreeName,AcademicDegreeGroupId")] AcademicDegree academicDegree)
        {
            if (ModelState.IsValid)
            {
                _context.Add(academicDegree);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["AcademicDegreeGroupId"] = new SelectList(_context.AcademicDegreeGroups, "AcademicDegreeGroupId", "AcademicDegreeGroupName", academicDegree.AcademicDegreeGroupId);
            return(View(academicDegree));
        }
Beispiel #10
0
 public async Task <IActionResult> Put([FromBody] AcademicDegree value)
 {
     try
     {
         var entity = _mapper.Map <BL.AcademicDegree>(value);
         var id     = _service.SaveAsync(entity);
         return(Ok(id));
     }
     catch (Exception)
     {
         return(BadRequest());
     }
 }
Beispiel #11
0
        public void CreateAcademicDegree(AcademicDegreeDTO academicDegreeDTO)
        {
            if (academicDegreeDTO == null)
            {
                throw new ValidationException("Введите данные", "");
            }
            AcademicDegree academicDegree = new AcademicDegree
            {
                Title = academicDegreeDTO.Title
            };

            Database.AcademicDegrees.Create(academicDegree);
            Database.Save();
        }
Beispiel #12
0
        public string update(AcademicDegree AcademicDegree, int id)
        {
            var response =
                ApiHelper.Post(ApiEndpoint + "/academicDegree/" + id.ToString(),
                               new Dictionary <string, string>
            {
                { "degree", AcademicDegree.degree },
                { "science_field", AcademicDegree.science_field },
                { "date", AcademicDegree.date.ToString("yyyy-MM-dd") },
                { "teacher_id", AcademicDegree.teacher_id.ToString() }
            });

            return(response);
        }
        private void CreateAcademicDegree()
        {
            var defaultAcademicDegree = _context.AcademicDegrees.IgnoreQueryFilters().FirstOrDefault(e => e.Name == "ابتدایی");

            if (defaultAcademicDegree == null)
            {
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "1", Name = "ابتدایی"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "2", Name = "سیکل"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "3", Name = "دیپلم"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "4", Name = "فوق دیپلم"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "5", Name = "کارشناسی"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "6", Name = "کارشناسی ارشد"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "7", Name = "دکترا"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                defaultAcademicDegree = new AcademicDegree()
                {
                    Code = "8", Name = "حوزوی"
                };
                _context.AcademicDegrees.Add(defaultAcademicDegree);
                _context.SaveChanges();
            }
        }
Beispiel #14
0
        public static bool AddSimToGraduationList(Annex ths, SimDescription simDesc, AcademicDegree degree)
        {
            if ((simDesc == null) || (degree == null))
            {
                return(false);
            }

            if (IsAGraduationCeremonyInitializedAndIfNecessaryStartOne(ths))
            {
                ths.mGraduatingSims.Add(simDesc, degree);
                if (simDesc.CreatedSim != null)
                {
                    ActiveTopic.AddToSim(simDesc.CreatedSim, "University Graduation");
                }
            }

            return(ths.mGraduationCeremonyInitialized);
        }
Beispiel #15
0
        public static bool AddSimToGraduationList(Annex ths, SimDescription simDesc, AcademicDegree degree)
        {
            if ((simDesc == null) || (degree == null))
            {
                return false;
            }

            if (IsAGraduationCeremonyInitializedAndIfNecessaryStartOne(ths))
            {
                ths.mGraduatingSims.Add(simDesc, degree);
                if (simDesc.CreatedSim != null)
                {
                    ActiveTopic.AddToSim(simDesc.CreatedSim, "University Graduation");
                }
            }

            return ths.mGraduationCeremonyInitialized;
        }
Beispiel #16
0
        /// <inheritdoc/>
        public string ToDelimitedString()
        {
            CultureInfo culture = CultureInfo.CurrentCulture;

            return(string.Format(
                       culture,
                       StringHelper.StringFormatSequence(0, 10, Configuration.FieldSeparator),
                       Id,
                       SetIdEdu.HasValue ? SetIdEdu.Value.ToString(culture) : null,
                       AcademicDegree?.ToDelimitedString(),
                       AcademicDegreeProgramDateRange?.ToDelimitedString(),
                       AcademicDegreeProgramParticipationDateRange?.ToDelimitedString(),
                       AcademicDegreeGrantedDate.HasValue ? AcademicDegreeGrantedDate.Value.ToString(Consts.DateFormatPrecisionDay, culture) : null,
                       School?.ToDelimitedString(),
                       SchoolTypeCode?.ToDelimitedString(),
                       SchoolAddress?.ToDelimitedString(),
                       MajorFieldOfStudy != null ? string.Join(Configuration.FieldRepeatSeparator, MajorFieldOfStudy.Select(x => x.ToDelimitedString())) : null
                       ).TrimEnd(Configuration.FieldSeparator.ToCharArray()));
        }
Beispiel #17
0
        private async void academicDegreeAdd_Click(object sender, EventArgs e)
        {
            if (TeacherListView.SelectedCells.Count == 0)
            {
                return;
            }
            var teacher = ((List <Teacher>)TeacherListView.DataSource)[TeacherListView.SelectedCells[0].RowIndex];

            var academicDegree = new AcademicDegree();

            academicDegree.degree        = academicDegreeDegree.Text;
            academicDegree.science_field = academicDegreeScienceField.Text;
            academicDegree.date          = academicDegreeDate.Value;

            academicDegree.teacher_id = teacher.id;

            adRepo.add(academicDegree);

            UpdateAcademicDegreeList(teacher.id);
        }
Beispiel #18
0
        // From Career
        public static int CalculateBoostedStartingLevel(Occupation career)
        {
            int result = -1;
            int careerLevelBonusFromDegree = -1;

            if (career.OwnerDescription.CareerManager.DegreeManager != null)
            {
                AcademicDegree degreeForOccupation = career.OwnerDescription.CareerManager.DegreeManager.GetDegreeForOccupation(career.Guid);
                if ((degreeForOccupation != null) && degreeForOccupation.IsDegreeCompleted)
                {
                    switch (degreeForOccupation.CurrentGpaAsLetterGrade)
                    {
                    case AcademicsUtility.AcademicGrade.D:
                        careerLevelBonusFromDegree = Career.kCareerBonusesForDegreeWithGradeOfD.kCareerLevelBonusFromDegree;
                        break;

                    case AcademicsUtility.AcademicGrade.C:
                        careerLevelBonusFromDegree = Career.kCareerBonusesForDegreeWithGradeOfC.kCareerLevelBonusFromDegree;
                        break;

                    case AcademicsUtility.AcademicGrade.B:
                        careerLevelBonusFromDegree = Career.kCareerBonusesForDegreeWithGradeOfB.kCareerLevelBonusFromDegree;
                        break;

                    case AcademicsUtility.AcademicGrade.A:
                        careerLevelBonusFromDegree = Career.kCareerBonusesForDegreeWithGradeOfA.kCareerLevelBonusFromDegree;
                        break;
                    }
                }
            }

            result = Math.Max(careerLevelBonusFromDegree, result);
            SocialNetworkingSkill element = career.OwnerDescription.SkillManager.GetElement(SkillNames.SocialNetworking) as SocialNetworkingSkill;

            if (element != null)
            {
                careerLevelBonusFromDegree = element.GetCurrentCareerBoost();
            }

            return(Math.Max(careerLevelBonusFromDegree, result));
        }
Beispiel #19
0
        public static List <KnownInfo> GetKnownInfoList(HudModel ths, SimDescription otherSimDesc, InformationLearnedAboutSim learnedInfo)
        {
            List <KnownInfo> list = new List <KnownInfo>();

            Common.StringBuilder msg = new Common.StringBuilder("GetKnownInfoList" + Common.NewLine);

            try
            {
                if (otherSimDesc != null)
                {
                    bool   isHuman = otherSimDesc.IsHuman;
                    bool   isTeen  = (otherSimDesc.Age & CASAgeGenderFlags.Teen) != CASAgeGenderFlags.None;
                    bool   isChild = (otherSimDesc.Age & CASAgeGenderFlags.Child) != CASAgeGenderFlags.None;
                    string str     = Localization.LocalizeString("Ui/Caption/HUD/RelationshipsPanel:UnknownTrait", new object[0x0]);

                    msg += "A";

                    foreach (Trait trait in otherSimDesc.TraitManager.List)
                    {
                        if (!trait.IsVisible || !Localization.HasLocalizationString(trait.TraitNameInfo))
                        {
                            continue;
                        }
                        bool flag4 = false;
                        foreach (TraitNames names in learnedInfo.Traits)
                        {
                            if (trait.Guid == names)
                            {
                                list.Add(new KnownInfo(trait.TraitName(otherSimDesc.IsFemale), trait.IconKey, KnownInfoType.Trait));
                                flag4 = true;
                                break;
                            }
                        }
                        if (!flag4)
                        {
                            list.Add(new KnownInfo(str, ResourceKey.CreatePNGKey("trait_unknown", 0x0), KnownInfoType.TraitUnknown));
                        }
                    }

                    msg += "B";

                    if ((isHuman && learnedInfo.CareerKnown) && !isChild)
                    {
                        bool      flag5        = false;
                        WorldName currentWorld = GameUtils.GetCurrentWorld();
                        if ((otherSimDesc.HomeWorld != currentWorld) && (GameUtils.GetWorldType(currentWorld) == WorldType.Vacation))
                        {
                            MiniSimDescription description = MiniSimDescription.Find(otherSimDesc.SimDescriptionId);
                            if (description != null)
                            {
                                ResourceKey iconKey = string.IsNullOrEmpty(description.JobIcon) ? ResourceKey.kInvalidResourceKey : ResourceKey.CreatePNGKey(description.JobIcon, 0x0);
                                list.Add(new KnownInfo(Localization.LocalizeString(description.IsFemale, description.JobOrServiceName, new object[0x0]), iconKey, KnownInfoType.Career));
                                flag5 = true;
                            }
                        }

                        msg += "C";

                        if (!flag5)
                        {
                            CareerManager careerManager = otherSimDesc.CareerManager;
                            if ((careerManager != null) && (careerManager.Occupation != null))
                            {
                                msg += "C1";

                                Occupation    occupation = careerManager.Occupation;
                                string        careerIcon = occupation.CareerIcon;
                                ResourceKey   key2       = string.IsNullOrEmpty(careerIcon) ? ResourceKey.kInvalidResourceKey : ResourceKey.CreatePNGKey(careerIcon, 0x0);
                                KnownInfoType type       = occupation.IsAcademicCareer ? KnownInfoType.AcademicCareer : KnownInfoType.Career;
                                list.Add(new KnownInfo(occupation.CurLevelJobTitle, key2, type));
                            }
                            else if ((otherSimDesc.CreatedByService != null) && Sims3.Gameplay.Services.Services.IsSimDescriptionInAnyServicePool(otherSimDesc))
                            {
                                string str4 = Localization.LocalizeString(otherSimDesc.IsFemale, "Gameplay/Services/Title:" + otherSimDesc.CreatedByService.ServiceType.ToString(), new object[0x0]);
                                list.Add(new KnownInfo(str4, ResourceKey.kInvalidResourceKey, KnownInfoType.Career));
                            }
                            else if ((otherSimDesc.AssignedRole != null) && !string.IsNullOrEmpty(otherSimDesc.AssignedRole.CareerTitleKey))
                            {
                                list.Add(new KnownInfo(Localization.LocalizeString(otherSimDesc.IsFemale, otherSimDesc.AssignedRole.CareerTitleKey, new object[0x0]), ResourceKey.kInvalidResourceKey, KnownInfoType.Career));
                            }
                            else if (((careerManager != null) && (careerManager.Occupation == null)) && (careerManager.RetiredCareer != null))
                            {
                                list.Add(new KnownInfo(Localization.LocalizeString("Ui/Caption/HUD/Career:Retired", new object[0x0]), ResourceKey.CreatePNGKey(careerManager.RetiredCareer.CareerIcon, 0x0), KnownInfoType.Career));
                            }
                            else
                            {
                                list.Add(new KnownInfo(Localization.LocalizeString(otherSimDesc.IsFemale, "Ui/Caption/HUD/KnownInfoDialog:Unemployed", new object[0x0]), ResourceKey.kInvalidResourceKey, KnownInfoType.Career));
                            }
                        }
                    }

                    msg += "D";

                    if (learnedInfo.PartnerKnown)
                    {
                        string      firstName            = null;
                        ResourceKey relationshipImageKey = ResourceKey.kInvalidResourceKey;
                        if (otherSimDesc.Partner != null)
                        {
                            msg += "D1";

                            firstName = otherSimDesc.Partner.FirstName;

                            // Custom : false -> true
                            Relationship relationship = otherSimDesc.GetRelationship(otherSimDesc.Partner, true);
                            if (relationship != null)
                            {
                                relationshipImageKey = RelationshipFunctions.GetLTRRelationshipImageKey(relationship.LTR.CurrentLTR, relationship.IsPetToPetRelationship);
                            }
                        }
                        else
                        {
                            msg += "D2";

                            if (otherSimDesc.HomeWorld != GameUtils.GetCurrentWorld())
                            {
                                MiniSimDescription description2 = MiniSimDescription.Find(otherSimDesc.SimDescriptionId);
                                if ((description2 != null) && (description2.PartnerId != 0x0L))
                                {
                                    MiniSimDescription otherSim = MiniSimDescription.Find(description2.PartnerId);
                                    if (otherSim != null)
                                    {
                                        firstName = otherSim.FirstName;
                                        MiniRelationship miniRelationship = description2.GetMiniRelationship(otherSim) as MiniRelationship;
                                        if (miniRelationship != null)
                                        {
                                            relationshipImageKey = RelationshipFunctions.GetLTRRelationshipImageKey(miniRelationship.CurrentLTR, miniRelationship.IsPetToPetRelationship);
                                        }
                                    }
                                }
                            }

                            if (string.IsNullOrEmpty(firstName))
                            {
                                firstName = Localization.LocalizeString("Ui/Caption/HUD/KnownInfoDialog:None", new object[0x0]);
                            }
                        }
                        list.Add(new KnownInfo(firstName, relationshipImageKey, KnownInfoType.Partner));
                    }

                    msg += "E";

                    if ((isHuman && (isTeen || isChild)) && ((otherSimDesc.CareerManager != null) && (otherSimDesc.CareerManager.School != null)))
                    {
                        list.Add(new KnownInfo(otherSimDesc.CareerManager.School.Name, ResourceKey.CreatePNGKey(otherSimDesc.CareerManager.School.CareerIcon, 0x0), KnownInfoType.School));
                    }

                    if (learnedInfo.IsRichAndKnownToBeRich)
                    {
                        list.Add(new KnownInfo(Localization.LocalizeString(otherSimDesc.IsFemale, "Ui/Caption/HUD/KnownInfoDialog:IsRich", new object[0x0]), ResourceKey.CreatePNGKey("w_simoleon_32", 0x0), KnownInfoType.Rich));
                    }

                    if (isHuman && learnedInfo.SignKnown)
                    {
                        Zodiac zodiac = otherSimDesc.Zodiac;
                        list.Add(new KnownInfo(Localization.LocalizeString(otherSimDesc.IsFemale, "Ui/Caption/HUD/KnownInfoDialog:" + zodiac.ToString(), new object[0x0]), ResourceKey.CreatePNGKey("sign_" + zodiac.ToString() + "_sm", 0x0), KnownInfoType.Zodiac));
                    }

                    if (isHuman && learnedInfo.AlmaMaterKnown)
                    {
                        if (otherSimDesc.AlmaMater != AlmaMater.None)
                        {
                            list.Add(new KnownInfo(otherSimDesc.AlmaMaterName, ResourceKey.CreatePNGKey("w_simple_school_career_s", 0), KnownInfoType.AlmaMater));
                        }
                        if (((otherSimDesc.CareerManager != null) && (otherSimDesc.CareerManager.DegreeManager != null)) && (otherSimDesc.CareerManager.DegreeManager.GetDegreeEntries().Count > 0))
                        {
                            list.Add(new KnownInfo(Localization.LocalizeString("Ui/Caption/HUD/KnownInfoTooltip:UniversityAlmaMater", new object[0]), ResourceKey.CreatePNGKey("moodlet_just_graduated", ResourceUtils.ProductVersionToGroupId(ProductVersion.EP9)), KnownInfoType.AlmaMater));
                        }
                    }

                    msg += "G";

                    uint celebrityLevel = otherSimDesc.CelebrityLevel;
                    if (celebrityLevel > 0x0)
                    {
                        KnownInfo item = new KnownInfo(otherSimDesc.CelebrityManager.LevelName, ResourceKey.CreatePNGKey("hud_i_celebrity_page", 0x0), KnownInfoType.CelebrityLevel);
                        item.mCelebrityLevel = celebrityLevel;
                        list.Add(item);
                    }

                    msg += "H";

                    if (learnedInfo.IsSocialGroupsKnown)
                    {
                        TraitManager traitManager = otherSimDesc.TraitManager;
                        SkillManager skillManager = otherSimDesc.SkillManager;
                        if ((traitManager != null) && (skillManager != null))
                        {
                            if (traitManager.HasElement(TraitNames.InfluenceNerd))
                            {
                                InfluenceSkill skill = skillManager.GetSkill <InfluenceSkill>(SkillNames.InfluenceNerd);
                                if ((skill != null) && (skill.SkillLevel > 0))
                                {
                                    list.Add(new KnownInfo(string.Concat(new object[] { Localization.LocalizeString("Ui/Tooltips/SocialGroup:Nerd", new object[0]), "(", skill.SkillLevel, ")" }), ResourceKey.CreatePNGKey("trait_SocialGroup01_s", ResourceUtils.ProductVersionToGroupId(ProductVersion.EP9)), KnownInfoType.SocialGroup));
                                }
                            }
                            if (traitManager.HasElement(TraitNames.InfluenceSocialite))
                            {
                                InfluenceSkill skill2 = skillManager.GetSkill <InfluenceSkill>(SkillNames.InfluenceSocialite);
                                if ((skill2 != null) && (skill2.SkillLevel > 0))
                                {
                                    list.Add(new KnownInfo(string.Concat(new object[] { Localization.LocalizeString("Ui/Tooltips/SocialGroup:Jock", new object[0]), "(", skill2.SkillLevel, ")" }), ResourceKey.CreatePNGKey("trait_SocialGroup03_s", ResourceUtils.ProductVersionToGroupId(ProductVersion.EP9)), KnownInfoType.SocialGroup));
                                }
                            }
                            if (traitManager.HasElement(TraitNames.InfluenceRebel))
                            {
                                InfluenceSkill skill3 = skillManager.GetSkill <InfluenceSkill>(SkillNames.InfluenceRebel);
                                if ((skill3 != null) && (skill3.SkillLevel > 0))
                                {
                                    list.Add(new KnownInfo(string.Concat(new object[] { Localization.LocalizeString("Ui/Tooltips/SocialGroup:Rebel", new object[0]), "(", skill3.SkillLevel, ")" }), ResourceKey.CreatePNGKey("trait_SocialGroup02_s", ResourceUtils.ProductVersionToGroupId(ProductVersion.EP9)), KnownInfoType.SocialGroup));
                                }
                            }
                        }
                    }

                    msg += "I";

                    if (learnedInfo.NumDegreesKnown() > 0)
                    {
                        KnownInfo info2 = new KnownInfo("", ResourceKey.kInvalidResourceKey, KnownInfoType.Degree);
                        otherSimDesc.CareerManager.DegreeManager.GetCompletedDegreeEntries();
                        foreach (AcademicDegreeNames names2 in learnedInfo.Degrees)
                        {
                            AcademicDegree element = otherSimDesc.CareerManager.DegreeManager.GetElement(names2);
                            if ((element != null) && element.IsDegreeCompleted)
                            {
                                if (info2.mDegreeIcons.Count == 5)
                                {
                                    list.Add(info2);
                                    info2 = new KnownInfo("", ResourceKey.kInvalidResourceKey, KnownInfoType.Degree);
                                }
                                ResourceKey key4 = ResourceKey.CreatePNGKey(element.DegreeIcon, 0);
                                info2.mDegreeIcons.Add(key4);
                                info2.mIconKey = key4;
                                info2.mInfo    = element.DegreeName;
                            }
                        }
                        list.Add(info2);
                    }
                }
            }
            catch (Exception e)
            {
                Common.Exception(otherSimDesc, null, msg, e);
            }

            return(list);
        }
Beispiel #20
0
        /// <summary>
        /// Инициализация таблиц, связанных с пользователем
        /// </summary>
        /// <param name="serviceProvider"></param>
        /// <param name="configuration"></param>
        /// <returns></returns>
        public static async Task CreateUserData(IServiceProvider serviceProvider, IConfiguration configuration)
        {
            using (var serviceScope = serviceProvider.GetRequiredService <IServiceScopeFactory>().CreateScope())
            {
                AppIdentityDBContext context = serviceScope.ServiceProvider.GetService <AppIdentityDBContext>();

                #region Инициализация таблицы "Группы ученых степеней"
                if (!await context.AcademicDegreeGroups.AnyAsync())
                {
                    AcademicDegreeGroup AcademicDegreeGroup1 = new AcademicDegreeGroup
                    {
                        AcademicDegreeGroupId   = 1,
                        AcademicDegreeGroupName = "Кандидаты наук"
                    };

                    AcademicDegreeGroup AcademicDegreeGroup2 = new AcademicDegreeGroup
                    {
                        AcademicDegreeGroupId   = 2,
                        AcademicDegreeGroupName = "Доктора наук"
                    };

                    await context.AcademicDegreeGroups.AddRangeAsync(
                        AcademicDegreeGroup1,
                        AcademicDegreeGroup2
                        );

                    await context.SaveChangesAsync();
                }
                #endregion

                #region Инициализация таблицы "Ученые степени"
                if (!await context.AcademicDegrees.AnyAsync())
                {
                    AcademicDegree AcademicDegree1 = new AcademicDegree
                    {
                        AcademicDegreeId      = 1,
                        AcademicDegreeGroupId = 1,
                        AcademicDegreeName    = "Кандидат технических наук"
                    };

                    AcademicDegree AcademicDegree2 = new AcademicDegree
                    {
                        AcademicDegreeId      = 2,
                        AcademicDegreeGroupId = 1,
                        AcademicDegreeName    = "Кандидат сельскохозяйственных наук"
                    };

                    AcademicDegree AcademicDegree3 = new AcademicDegree
                    {
                        AcademicDegreeId      = 3,
                        AcademicDegreeGroupId = 2,
                        AcademicDegreeName    = "Доктор технических наук"
                    };

                    AcademicDegree AcademicDegree4 = new AcademicDegree
                    {
                        AcademicDegreeId      = 4,
                        AcademicDegreeGroupId = 2,
                        AcademicDegreeName    = "Доктор сельскохозяйственных наук"
                    };

                    await context.AcademicDegrees.AddRangeAsync(
                        AcademicDegree1,
                        AcademicDegree2,
                        AcademicDegree3,
                        AcademicDegree4
                        );

                    await context.SaveChangesAsync();
                }
                #endregion

                #region Инициализация таблицы "Ученые звания"
                if (!await context.AcademicStats.AnyAsync())
                {
                    AcademicStat AcademicStat1 = new AcademicStat
                    {
                        AcademicStatId   = 1,
                        AcademicStatName = "Доцент"
                    };

                    AcademicStat AcademicStat2 = new AcademicStat
                    {
                        AcademicStatId   = 2,
                        AcademicStatName = "Профессор"
                    };

                    await context.AcademicStats.AddRangeAsync(
                        AcademicStat1,
                        AcademicStat2
                        );

                    await context.SaveChangesAsync();
                }
                #endregion
            }
        }
Beispiel #21
0
        protected override bool Run(SimDescription me, bool singleSelection)
        {
            AcademicDegreeManager manager = me.CareerManager.DegreeManager;

            if (!ApplyAll)
            {
                List <Item> choices = new List <Item>();

                foreach (AcademicDegreeStaticData data in AcademicDegreeManager.sDictionary.Values)
                {
                    int value = 0;
                    if (manager != null)
                    {
                        AcademicDegree degree = manager.GetElement(data.AcademicDegreeName);
                        if (degree != null)
                        {
                            value = degree.NumberOfCreditsTowardDegree;
                        }
                    }

                    choices.Add(new Item(data, value));
                }

                CommonSelection <Item> .Results results = new CommonSelection <Item>(Name, choices).SelectMultiple();
                if ((results == null) || (results.Count == 0))
                {
                    return(false);
                }

                foreach (Item item in results)
                {
                    string text = StringInputDialog.Show(Name, Common.Localize(GetTitlePrefix() + ":Prompt", me.IsFemale, new object[] { me.FullName, item.Value.DegreeName, item.Value.RequiredNumberOfCredit }), item.Count.ToString());
                    if (string.IsNullOrEmpty(text))
                    {
                        continue;
                    }

                    int count;
                    if (!int.TryParse(text, out count))
                    {
                        Common.Notify(Common.Localize("Numeric:Error"));
                        continue;
                    }

                    mDegrees[item.Value.AcademicDegreeName] = count;
                }
            }

            foreach (KeyValuePair <AcademicDegreeNames, int> pair in mDegrees)
            {
                AcademicDegree degree = manager.GetElement(pair.Key);
                if (degree == null)
                {
                    if (pair.Value <= 0)
                    {
                        continue;
                    }

                    manager.AddNewDegree(pair.Key, pair.Value);
                }
                else
                {
                    if (pair.Value > 0)
                    {
                        degree.mEarnedNumberOfCreditsTowardDegree = pair.Value;
                    }
                    else
                    {
                        manager.RemoveElement((ulong)pair.Key);
                    }
                }
            }

            return(true);
        }
 private void MapForUpdateentity(AcademicDegree entity, DA.AcademicDegree daEntity)
 {
     daEntity.Id = entity.Id;
 }
Beispiel #23
0
        public ActionResult Search(string Keyword,
                                   Gender Gender,
                                   int Grade,
                                   int Subject,
                                   AcademicDegree Degree,
                                   bool?IsAccurate, int?page)
        {
            SearchTutorBindingModel SearchData = new SearchTutorBindingModel();

            SearchData.IsAccurate = IsAccurate ?? false;
            SearchData.Subject    = Subject;
            SearchData.Grade      = Grade;
            SearchData.Degree     = Degree;
            SearchData.Gender     = Gender;
            SearchData.Keyword    = Keyword;
            IList <Tutor> TutorList = null;

            if (SearchData.IsAccurate)
            {
                if (String.IsNullOrEmpty(SearchData.Keyword))
                {
                    TutorList = db.Tutors.Include(s => s.Grades).Include(s => s.Subjects)
                                .Where(t =>
                                       t.Grades.Any(g => g.Id == SearchData.Grade) &&
                                       t.Subjects.Any(s => s.Id == SearchData.Subject) &&
                                       t.Gender == SearchData.Gender &&
                                       t.Degree == SearchData.Degree
                                       )
                                .ToList();
                }
                else
                {
                    int TutorId = -1;
                    if (int.TryParse(SearchData.Keyword, out TutorId))
                    {
                        TutorId = Int32.Parse(SearchData.Keyword);
                    }
                    TutorList = db.Tutors.Include(s => s.Grades).Include(s => s.Subjects)
                                .Where(t =>
                                       t.Grades.Any(g => g.Id == SearchData.Grade) &&
                                       t.Subjects.Any(s => s.Id == SearchData.Subject) &&
                                       t.Gender == SearchData.Gender &&
                                       t.Degree == SearchData.Degree &&
                                       (t.Id == TutorId ||
                                        t.FullName.Contains(SearchData.Keyword) ||
                                        t.District.Contains(SearchData.Keyword) ||
                                        t.City.Contains(SearchData.Keyword) ||
                                        t.Street.Contains(SearchData.Keyword) ||
                                        t.Ward.Contains(SearchData.Keyword) ||
                                        t.MajorSubject.Contains(SearchData.Keyword) ||
                                        t.GraduationYear.Equals(SearchData.Keyword) ||
                                        t.PhoneNumber.Equals(SearchData.Keyword) ||
                                        t.HomeTown.Contains(SearchData.Keyword) ||
                                        t.University.Contains(SearchData.Keyword)
                                       )
                                       )
                                .ToList();
                }
            }
            else
            {
                if (String.IsNullOrEmpty(SearchData.Keyword))
                {
                    TutorList = db.Tutors.Include(s => s.Grades).Include(s => s.Subjects)
                                .Where(t =>
                                       t.Grades.Any(g => g.Id == SearchData.Grade) ||
                                       t.Subjects.Any(s => s.Id == SearchData.Subject) ||
                                       t.Gender == SearchData.Gender ||
                                       t.Degree == SearchData.Degree
                                       )
                                .ToList();
                }
                else
                {
                    int TutorId = -1;
                    if (int.TryParse(SearchData.Keyword, out TutorId))
                    {
                        TutorId = Int32.Parse(SearchData.Keyword);
                    }
                    TutorList = db.Tutors.Include(s => s.Grades).Include(s => s.Subjects)
                                .Where(t =>
                                       t.Grades.Any(g => g.Id == SearchData.Grade) ||
                                       t.Subjects.Any(s => s.Id == SearchData.Subject) ||
                                       t.Gender == SearchData.Gender ||
                                       t.Grades.Any(h => h.Name.Contains(SearchData.Keyword)) ||
                                       t.Subjects.Any(h => h.Name.Contains(SearchData.Keyword)) ||
                                       t.FullName.Contains(SearchData.Keyword) ||
                                       t.District.Contains(SearchData.Keyword) ||
                                       t.City.Contains(SearchData.Keyword) ||
                                       t.Street.Contains(SearchData.Keyword) ||
                                       t.Ward.Contains(SearchData.Keyword) ||
                                       t.MajorSubject.Contains(SearchData.Keyword) ||
                                       t.GraduationYear.Equals(SearchData.Keyword) ||
                                       t.PhoneNumber.Contains(SearchData.Keyword) ||
                                       t.HomeTown.Contains(SearchData.Keyword) ||
                                       t.University.Contains(SearchData.Keyword) ||
                                       t.Degree == SearchData.Degree ||
                                       t.Id == TutorId

                                       )
                                .ToList();
                }
            }

            return(View("ExistingTutorList", new PrivateTutorOnline.Models.ViewModels.ExistingTutorListViewModel()
            {
                Tutors = TutorList.ToPagedList(page.HasValue ? page.Value : 1, 2),
                Subjects = db.Subjects.ToList(),
                Grades = db.Grades.ToList(),
                searchResult = SearchData,
                IsSearchBySubjects = false,
                IsSearchByGrades = false
            }));
        }
        public async Task <LecturalDTO> UpdateLecturalAsync(Guid id, LecturalDTO lecturalDTO)
        {
            var lectural = await _context.Lectural.Where(c => c.id == id)
                           .Include(c => c.Position)
                           .Include(c => c.MilitaryRank)
                           .Include(c => c.AcademicTitle)
                           .Include(c => c.AcademicDegree)
                           .FirstOrDefaultAsync();

            if (lectural == null || lectural.id != id)
            {
                return(null);
            }

            lectural.id         = lecturalDTO.id;
            lectural.firstName  = lecturalDTO.firstName;
            lectural.lastName   = lecturalDTO.lastName;
            lectural.middleName = lecturalDTO.middleName;

            lectural.birthDay       = lecturalDTO.birthDay;
            lectural.pathPhotoSmall = lecturalDTO.pathPhotoSmall;
            lectural.pathPhotoBig   = lecturalDTO.pathPhotoBig;
            lectural.serialAndNumderMilitaryDocs = lecturalDTO.serialAndNumderMilitaryDocs;
            lectural.serialAndNumderCivilyDocs   = lecturalDTO.serialAndNumderCivilyDocs;
            lectural.dateOfStartService          = lecturalDTO.dateOfStartService;
            lectural.isMarried       = lecturalDTO.isMarried;
            lectural.countOfChildren = lecturalDTO.countOfChildren;
            lectural.info            = lecturalDTO.info;

            if (lectural.AcademicDegree != null)
            {
                if (lectural.AcademicDegree.name != lecturalDTO.AcademicDegree)
                {
                    AcademicDegree academicDegree = _context.AcademicDegree.Where(c => c.name == lecturalDTO.AcademicDegree).FirstOrDefault();
                    lectural.AcademicDegree = academicDegree;
                }
            }
            else
            {
                AcademicDegree academicDegree = _context.AcademicDegree.Where(c => c.name == lecturalDTO.AcademicDegree).FirstOrDefault();
                lectural.AcademicDegree = academicDegree;
            }
            if (lectural.AcademicTitle != null)
            {
                if (lectural.AcademicTitle.name != lecturalDTO.AcademicTitle)
                {
                    AcademicTitle academicTitle = _context.AcademicTitle.Where(c => c.name == lecturalDTO.AcademicTitle).FirstOrDefault();
                    lectural.AcademicTitle = academicTitle;
                }
            }
            else
            {
                AcademicTitle academicTitle = _context.AcademicTitle.Where(c => c.name == lecturalDTO.AcademicTitle).FirstOrDefault();
                lectural.AcademicTitle = academicTitle;
            }

            if (lectural.Position != null)
            {
                if (lectural.Position.name != lecturalDTO.Position)
                {
                    Position position = _context.Position.Where(c => c.name == lecturalDTO.Position).FirstOrDefault();
                    lectural.Position = position;
                }
            }
            else
            {
                Position position = _context.Position.Where(c => c.name == lecturalDTO.Position).FirstOrDefault();
                lectural.Position = position;
            }
            if (lectural.MilitaryRank != null)
            {
                if (lectural.MilitaryRank.name != lecturalDTO.MilitaryRank)
                {
                    MilitaryRank militaryRank = _context.MilitaryRank.Where(c => c.name == lecturalDTO.MilitaryRank).FirstOrDefault();
                    lectural.MilitaryRank = militaryRank;
                }
            }
            else
            {
                MilitaryRank militaryRank = _context.MilitaryRank.Where(c => c.name == lecturalDTO.MilitaryRank).FirstOrDefault();
                lectural.MilitaryRank = militaryRank;
            }


            _context.Entry(lectural).State = EntityState.Modified;
            try
            {
                await _context.SaveChangesAsync();

                return(lecturalDTO);
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!LecturalExists(id))
                {
                    return(null);
                }
                else
                {
                    throw;
                }
            }
        }
        public static string GetDegreeName(this AcademicDegree degreeEnum)
        {
            switch (degreeEnum)
            {
            case AcademicDegree.Student:
            {
                return("Sinh viên");

                break;
            }

            case AcademicDegree.Teacher:
            {
                return("Giáo viên");

                break;
            }

            case AcademicDegree.Lecturer:
            {
                return("Giảng viên");

                break;
            }

            case AcademicDegree.Bachelor:
            {
                return("Cử nhân");

                break;
            }

            case AcademicDegree.Engineer:
            {
                return("Kĩ sư");

                break;
            }

            case AcademicDegree.Master:
            {
                return("Thạc sĩ");

                break;
            }

            case AcademicDegree.Doctor:
            {
                return("Tiến sĩ");

                break;
            }

            default:
            {
                return("Khác");

                break;
            }
            }
        }
Beispiel #26
0
 private async void DeleteAcademicDegreeAsync(AcademicDegree academicDegree) => await Task.Run(() =>
 {
     NirsSystem.DeleteObject(academicDegree);
     SetAcademicDegreesAsync();
 });
Beispiel #27
0
        private void importAccessData_Click(object sender, EventArgs e)
        {
            // Person
            var PersonList  = new List <Person>();
            var personsData = new PersonsTableAdapter().GetData().Rows;

            foreach (var person in personsData)
            {
                var row = (PersonsRow)person;
                PersonList.Add(new Person {
                    Person_ID  = row.Person_ID,
                    Person_FIO = row.Person_FIO
                });
            }

            // Dolgnost
            var DolgnostList = new List <Dolgnost>();
            var dolgnostData = new DolgnostTableAdapter().GetData().Rows;

            foreach (var dolgnost in dolgnostData)
            {
                var row = (DolgnostRow)dolgnost;
                DolgnostList.Add(new Dolgnost
                {
                    Dolg_Person_ID = row.Dolg_Person_ID,
                    DolgnostName   = row.Dolgnost,
                    Uslovie_ID     = row.Uslovie,
                    Prikaz         = row.Prikaz,
                    Pokonkursu     = row.Pokonkursu.ToString(),
                    Konkurs        = row.Konkurs,
                    KafID          = row.KafID
                });
            }

            // DolgnostUsl
            var DolgUslList = new List <DolgUsl>();
            var duData      = new DolgUslTableAdapter().GetData().Rows;

            foreach (var du in duData)
            {
                var row = (DolgUslRow)du;
                DolgUslList.Add(new DolgUsl
                {
                    DolgUsl_ID    = row.DolgUslovija_ID,
                    DolgUsl_Desc  = row.DolgUslovija_Desc,
                    DolgUsl_Desc2 = row.DolgUslovija_Desc2
                });
            }

            // Education
            var EducationList = new List <AccessPps.AccessClasses.Education>();
            var edData        = new EducationTableAdapter().GetData().Rows;

            foreach (var ed in edData)
            {
                var row = (EducationRow)ed;
                EducationList.Add(new AccessPps.AccessClasses.Education
                {
                    Edu_Person_ID = row.Edu_Person_ID,
                    Edu_Counter   = row.Edu_Counter,
                    Edu_Level     = row.Edu_Level,
                    Edu_Year      = row.Edu_Year,
                    Edu_Kval      = row.Edu_Kval,
                    Edu_Spec      = row.Edu_Spec
                });
            }

            // EduLevel
            var EduLevelList = new List <AccessPps.AccessClasses.EduLevel>();
            var elData       = new EduLevelsTableAdapter().GetData().Rows;

            foreach (var el in elData)
            {
                var row = (EduLevelsRow)el;
                EduLevelList.Add(new EduLevel
                {
                    Edu_Level_ID   = row.Edu_Level_ID,
                    Edu_Level_Desc = row.Edu_Level_Disc
                });
            }

            // Stage
            var StageList = new List <Stage>();
            var stData    = new StageTableAdapter().GetData().Rows;

            foreach (var st in stData)
            {
                var row = (StageRow)st;
                StageList.Add(new Stage
                {
                    Stage_Person_ID = row.Stage_Person_ID,
                    Stage_Typ_ID    = row.Stage_Typ,
                    Stage_Years     = row.Stage_Years,
                    Stage_Months    = row.Stage_Months
                });
            }

            // StageTyp
            var StageTypList = new List <StageTyp>();
            var sttData      = new StageTypsTableAdapter().GetData().Rows;

            foreach (var stt in sttData)
            {
                var row = (StageTypsRow)stt;
                StageTypList.Add(new StageTyp
                {
                    StageTyp_ID   = row.StageTyp_ID,
                    StageTyp_Desc = row.StageTyp_Desc
                });
            }

            // Zvanije
            var ZvanijeList = new List <Zvanije>();
            var zData       = new ZvanijaTableAdapter().GetData().Rows;

            foreach (var z in zData)
            {
                var row = (ZvanijaRow)z;
                ZvanijeList.Add(new Zvanije
                {
                    Zvanije_Person_ID = row.Zvan_Person_ID,
                    Zvanije_Counter   = row.ZvanCounter,
                    Zvanije_Typ_ID    = row.Zvan_ZvanID
                });
            }

            // ZvanTyp
            var ZvanijeTypList = new List <ZvanijeTyp>();
            var ztData         = new ZvanTypsTableAdapter().GetData().Rows;

            foreach (var zt in ztData)
            {
                var row = (ZvanTypsRow)zt;
                ZvanijeTypList.Add(new ZvanijeTyp
                {
                    ZvanijeTyp_ID   = row.ZvanTyp_ID,
                    ZvanijeTyp_Desc = row.ZvanTyp_Desc
                });
            }

            // Stepeni
            var StepenList = new List <Stepen>();
            var sData      = new StepeniTableAdapter().GetData().Rows;

            foreach (var s in sData)
            {
                var row = (StepeniRow)s;
                StepenList.Add(new Stepen
                {
                    Step_Person_ID = row.Step_Person_ID,
                    Step_Counter   = row.Step_Counter,
                    Step_TypID     = row.Step_TypID,
                    Step_Nayk      = row.Step_Nauk
                });
            }

            // StepTyps
            var StepTypList = new List <StepTyp>();
            var stypsData   = new StepTypsTableAdapter().GetData().Rows;

            foreach (var styp in stypsData)
            {
                var row = (StepTypsRow)styp;
                StepTypList.Add(new StepTyp
                {
                    StepTyp_ID   = row.StepTyp_ID,
                    StepTyp_Desc = row.StepTyp_Desc
                });
            }

            // StepNauki
            var StepNaukiList = new List <StepNauki>();
            var snData        = new StepNaukiTableAdapter().GetData().Rows;

            foreach (var sn in snData)
            {
                var row = (StepNaukiRow)sn;
                StepNaukiList.Add(new StepNauki
                {
                    StepNayki_ID    = row.StepNauki_ID,
                    StepNayki_Full  = row.StepNauki_Full,
                    StepNayki_Short = row.StepNauki_Short
                });
            }

            // Kaf
            var KafList = new List <Kaf>();
            var kData   = new KafTableAdapter().GetData().Rows;

            foreach (var k in kData)
            {
                var row = (KafRow)k;
                KafList.Add(new Kaf
                {
                    Kaf_ID  = row.Kaf_ID,
                    Kaf_Im  = row.Kaf_Im,
                    Kaf_Rd  = row.Kaf_Rd,
                    Kaf_Src = row.Kaf_Src
                });
            }

            var teachers = tRepo.all()
                           .OrderBy(t => t.f)
                           .ThenBy(t => t.i)
                           .ThenBy(t => t.o)
                           .ThenBy(t => t.birth_date)
                           .ToList();

            var personTeacherIdDict = new Dictionary <int, int>();

            for (int i = 0; i < teachers.Count; i++)
            {
                var teacher = teachers[i];

                var p = PersonList.FirstOrDefault(per => per.Person_FIO == teacher.f + " " + teacher.i + " " + teacher.o);
                if (p != null)
                {
                    personTeacherIdDict.Add(p.Person_ID, teacher.id);

                    // Dolgnost
                    var dolList = DolgnostList
                                  .Where(d => d.Dolg_Person_ID == p.Person_ID)
                                  .ToList();
                    var positions = Position.FromAccessList(dolList, DolgUslList, KafList, teacher.id);
                    foreach (var pos in positions)
                    {
                        pRepo.add(pos);
                    }

                    // Education
                    var eduList = EducationList
                                  .Where(ed => ed.Edu_Person_ID == p.Person_ID)
                                  .ToList();
                    var educations = DomainClasses.Main.Education.FromAccessList(eduList, EduLevelList, teacher.id);
                    foreach (var education in educations)
                    {
                        eduRepo.add(education);
                    }

                    // Stage
                    var stList = StageList
                                 .Where(st => st.Stage_Person_ID == p.Person_ID)
                                 .ToList();
                    var experiences = Experience.FromAccessList(stList, StageTypList, teacher.id);
                    foreach (var experience in experiences)
                    {
                        expRepo.add(experience);
                    }

                    // Zavinija
                    var ZvanList = ZvanijeList
                                   .Where(zv => zv.Zvanije_Person_ID == p.Person_ID)
                                   .ToList();
                    var academicRanks = AcademicRank.FromAccessList(ZvanList, ZvanijeTypList, teacher.id);
                    foreach (var academicRank in academicRanks)
                    {
                        arRepo.add(academicRank);
                    }

                    //Steneni
                    var StepList = StepenList
                                   .Where(st => st.Step_Person_ID == p.Person_ID)
                                   .ToList();
                    var academicDegrees = AcademicDegree.FromAccessList(StepList, StepTypList, StepNaukiList, teacher.id);
                    foreach (var academicDegree in academicDegrees)
                    {
                        adRepo.add(academicDegree);
                    }
                }
            }
        }