// Helper method public string getRoleDisplayName() { try { if (RoleTitle.Equals(EmployeeModel.EMP_ROLE_COORDINATOR)) { return("samordnare"); } if (RoleTitle.Equals(EmployeeModel.EMP_ROLE_MANAGER)) { return("avdelningschef"); } // if coordinator return("handläggare"); } catch (System.Exception) { throw new System.Exception("Error in Employee"); } }
private async Task <List <EffortUsedByRoleByDate> > CalculateACByDateByRole(string projectGid, string taskGid, DateTime date, List <TimeEntryWithRoleViewModel> timeEntriesByTask) { // 取出所有的role var roles = await _roleTitleService.GetAllInternalRoles(); var acByRoles = new List <EffortUsedByRoleByDate>(); //foreach (var role in roles) //{ // acByRoles.Add(new EffortUsedAccountingViewModel() // { // RoleId = role.Id, // TotalHours = 0, // TotalHoursRate = 0, // RoleName = role.Title, // RoleRate = role.Rate // }); //} var timeEntriesByRole = timeEntriesByTask.Where(a => a.Date.Date == date.Date).GroupBy(a => a.RoleId); foreach (var r in timeEntriesByRole) { var roleId = r.Key; var role = roles.FirstOrDefault(a => a.Id == roleId); if (role == null) { role = new RoleTitle() { Id = 0, Rate = 100, Title = "Default Title", Category = "Others Category", ShortTitle = "Default", Type = "internal", Sort = 1000 }; } var totalHours = r.Sum(a => a.TotalHours); var totalHoursRate = totalHours * role.Rate; var acRole = acByRoles.FirstOrDefault(a => a.RoleId == roleId); if (acRole == null) { acRole = new EffortUsedByRoleByDate() { RoleId = role.Id, TotalHours = 0, TotalHoursRate = 0, RoleName = role.Title, RoleRate = role.Rate, Date = date, ProjectGid = projectGid, TaskGid = taskGid, RoleCategory = role.Category, RoleShortTitle = role.ShortTitle }; acByRoles.Add(acRole); } acRole.TotalHours = totalHours; acRole.TotalHoursRate = totalHoursRate; } return(acByRoles); }
public static async Task <UserRoles> CreateUserRoleAssociation(int newUserId, RoleTitle roleId, HelpDeskContext _context) { UserRoles newUserRole = new UserRoles() { UserId = newUserId, RoleId = (int)roleId }; // Add user role to database _context.UserRoles.Add(newUserRole); await _context.SaveChangesAsync(); return(newUserRole); }