public async Task <ActionResult <Dto.ProjectForGetFull> > GetFull([FromBody] Dto.ProjectForGet Project) { if (Project == null) { return(BadRequest()); } if (Project.Id == "") { return(BadRequest()); } Models.Project projectModel = await Repo.GetFull(new Models.Project { Id = Project.Id }); if (projectModel == null) { return(BadRequest()); } List <Dto.Log> logs = new List <Dto.Log>(); foreach (Models.Log log in projectModel.Logs) { logs.Add(new Log { Id = log.Id, Start = log.Start, Stop = log.Stop, ActivityId = log.ActivityId, Description = log.Description, UserId = log.UserId }); } List <Dto.Activity> activities = new List <Activity>(); foreach (Models.Activity activity in projectModel.Activitys) { activities.Add(new Activity { Id = activity.Id, Name = activity.Name }); } List <Dto.UserForGet> users = new List <UserForGet>(); foreach (Models.ProjectUser projectUser in projectModel.Users) { users.Add(new Dto.UserForGet { Id = projectUser.User.Id, Name = projectUser.User.Name, RoleId = projectUser.User.RoleId, Email = projectUser.User.Email, ChangeHistory = projectUser.User.ChangeHistory }); } return(Ok(new Dto.ProjectForGetFull { Id = projectModel.Id, Logs = logs, Activitys = activities, UsersOnTheProject = users, InProgress = projectModel.InProgress, Billable = projectModel.Billable, Overtime = projectModel.Overtime, Name = projectModel.Name, Company = new Company { Id = projectModel.Company.Id, Name = projectModel.Company.Name } })); }
public async Task <ActionResult <Dto.ProjectForGetSmall> > GetSmall([FromBody] Dto.ProjectForGet Project) { if (Project == null) { return(BadRequest()); } if (Project.Id == "") { return(BadRequest()); } Models.Project projectModel = await Repo.GetFull(new Models.Project { Id = Project.Id }); if (projectModel == null) { return(BadRequest()); } List <string> logIds = new List <string>(); foreach (Models.Log log in projectModel.Logs) { logIds.Add(log.Id); } List <string> activitieIds = new List <string>(); foreach (Models.Activity activity in projectModel.Activitys) { activitieIds.Add(activity.Id); } List <string> userIds = new List <string>(); foreach (Models.ProjectUser user in projectModel.Users) { userIds.Add(user.UserId); } return(Ok(new Dto.ProjectForGetSmall { Id = projectModel.Id, LogsId = logIds, ActivitysId = activitieIds, UsersId = userIds, InProgress = projectModel.InProgress, Billable = projectModel.Billable, Overtime = projectModel.Overtime, Name = projectModel.Name, CompanyId = projectModel.Company.Id })); }