public IHttpActionResult Save(Employee employee) { try { if (employee == null) { return(BadRequest(ActionMessage.NullOrEmptyMessage)); } if (string.IsNullOrEmpty(employee.EmployeeId) || string.IsNullOrEmpty(employee.EmployeeName) || employee.SectionId == Guid.Empty || string.IsNullOrEmpty(employee.ReportTo)) { return(BadRequest(ActionMessage.NullOrEmptyMessage)); } if (employee.SectionId == null || employee.DesignationId == null) { return(BadRequest("Section or Department can't be empty!")); } EmployeesActivities employees = new EmployeesActivities(new UnitOfWork()); employees.CreatedBy = User.Identity.GetUserName(); employees.Save(employee); return(Ok(ActionMessage.SaveMessage)); } catch (Exception exception) { return(BadRequest(exception.Message)); } }
public async Task <IHttpActionResult> Register(RegisterBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var user = new ApplicationUser() { UserName = model.EmployeeId, Email = model.Email, EmailConfirmed = true }; string password = UniqueNumbers.GeneratePassword(); try { IdentityResult result = await UserManager.CreateAsync(user, password); if (result.Succeeded) { var res = await UserManager.AddToRoleAsync(user.Id, model.RoleName); EmployeesActivities employees = new EmployeesActivities(new UnitOfWork()); employees.CreatedBy = User.Identity.GetUserName(); employees.Save(new Employee { EmployeeId = model.EmployeeId, EmployeeName = model.EmployeeName, DesignationId = model.DesignationId, SectionId = model.SectionId, Location = model.Location, ReportTo = model.ReportTo, JoiningDate = model.JoiningDate, Email = model.Email, groups = model.groups }); } var reportTo = await UserManager.FindByNameAsync(model.ReportTo); if (reportTo?.Email != null) { var url = "/#/othersObjectives?id=" + user.UserName; await UserManager.SendEmailAsync(reportTo.Id, "Confirm Job Description", "Mr/s " + model.EmployeeName + " submit a job Description.Please Approve the job description. To view the Job description please click <a href=\"" + new Uri(url) + "\">here</a>"); } return(Ok("The Employee Password is " + password + " and Role is " + UserManager.GetRoles(user.Id).SingleOrDefault())); } catch (Exception e) { return(BadRequest(e.Message)); } }
public async Task <IHttpActionResult> Register(RegisterBindingModel model) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var user = new ApplicationUser() { UserName = model.EmployeeId, Email = model.Email, EmailConfirmed = true }; string password = UniqueNumbers.GeneratePassword(); try { IdentityResult result = await UserManager.CreateAsync(user, password); if (result.Succeeded) { var res = await UserManager.AddToRoleAsync(user.Id, model.RoleName); EmployeesActivities employees = new EmployeesActivities(new UnitOfWork()); employees.CreatedBy = User.Identity.GetUserName(); employees.Save(new Employee { EmployeeId = model.EmployeeId, EmployeeName = model.EmployeeName, DesignationId = model.DesignationId, SectionId = model.SectionId, Location = model.Location, ReportTo = model.ReportTo, JoiningDate = model.JoiningDate, Email = model.Email, groups = model.groups }); } var employee = await UserManager.FindByNameAsync(model.EmployeeId); if (employee?.Email != null) { var url = clientside + "/#/login"; await UserManager.SendEmailAsync(employee.Id, "Regisatration Confirmation", "Mr/s " + model.EmployeeName + "<br/> Your Registration is complete. Your password is: " + password + ". please click <a href=\"" + new Uri(url) + "\">here</a> to login"); } return(Ok("The Employee Password is " + password + " and Role is " + UserManager.GetRoles(user.Id).SingleOrDefault())); } catch (Exception e) { return(BadRequest(e.Message)); } }