コード例 #1
0
        public async Task <IList <ContributionGroupDto> > ListAllContributionGroupsAsync()
        {
            var cc = await this._ContributionGroupRepository.GetAllAsync();

            IList <ContributionGroupDto> ContributionGroupDtos = new List <ContributionGroupDto>();

            foreach (ContributionGroup cg in cc)
            {
                var d = new ContributionGroupDto();
                d.Id   = cg.Id;
                d.Name = cg.Name;
                ContributionGroupDtos.Add(d);
            }
            return(ContributionGroupDtos);
        }
コード例 #2
0
        public async Task <EmployeeDto> GetEmplyeeByIdAsync(Guid Id)
        {
            EmployeeDto res = new EmployeeDto();
            var         e   = await this.employeeRepository.GetById(Id);

            res.Id    = e.Id;
            res.Name  = e.Name;
            res.Email = e.Email;
            foreach (EmployeeSkill es in e.Skills)
            {
                res.Skills.Add(new EmployeeSkillDto()
                {
                    Id = es.Id, Name = es.Name, Maturity = (int)es.Maturity
                });
            }

            // foreach(AvailabilityEntry a in e.Availability)
            // {
            //     res.Availability.Add(new AvailabilityEntryDto() { Year = a.Year, Month = a.Month, Precentage = a.Precentage} );
            // }

            res.Availability = Make6entiries(DateTime.Now);
            // update the entries which exist in db
            foreach (AvailabilityEntry a in e.Availability)
            {
                AvailabilityEntryDto entry = res.Availability.ToList().Find(i => i.Year == a.Year && i.Month == a.Month);
                if (entry != null)
                {
                    entry.Precentage = a.Precentage;
                }
            }

            foreach (EmployeeRole r in e.Roles)
            {
                var cg = new ContributionGroupDto();
                cg.Id   = r.ContributionGroup.Id;
                cg.Name = r.ContributionGroup.Name;

                res.Roles.Add(new EmployeeRoleDto()
                {
                    RoleId = r.Id, Name = r.Name, ContributionGroup = cg
                });
            }

            if (e.WorkPlace != null)
            {
                res.WorkPlace         = new WorkPlaceDto();
                res.WorkPlace.Id      = e.WorkPlace.Id;
                res.WorkPlace.Country = e.WorkPlace.Country;
                res.WorkPlace.City    = e.WorkPlace.City;
                res.WorkPlace.Name    = e.WorkPlace.Name;
            }

            if (e.Manager != null)
            {
                res.Manager = new ManagerDto()
                {
                    Id = e.Manager.Id, Name = e.Manager.Name
                };
            }

            return(res);
        }