public async Task <IActionResult> GetSelf()
        {
            string          id      = userManager.GetUserId(User);
            ApplicationUser appUser = await userManager.Users.Include(x => x.Employee)
                                      .Include(x => x.Employee.BenefitsEmployee)
                                      .Include(x => x.Employee.BenefitsDependents)
                                      .SingleOrDefaultAsync(x => x.Id == id);

            bool hasAddEdit = await userManager.IsInRoleAsync(appUser, "AddEdit");

            List <string> roles = hasAddEdit ? (await userManager.GetRolesAsync(appUser)).ToList() : null;

            Api.Employee emp = new Api.Employee(appUser, roles);

            return(Ok(emp));
        }
        public async Task <IActionResult> GetUserById(string id)
        {
            ApplicationUser user = await userManager.Users.Include(x => x.Employee)
                                   .Include(x => x.Employee.BenefitsEmployee)
                                   .Include(x => x.Employee.BenefitsDependents)
                                   .SingleOrDefaultAsync(x => x.Id == id);

            if (user == null)
            {
                return(NotFound(new
                {
                    Id = id,
                    Error = "User not found",
                }));
            }
            Api.Employee emp = new Api.Employee(user);

            return(Ok(emp));
        }