public async Task <ActionResult <EmployeeInfo> > PostEmployeeInfo(GetEmployeeForEditOutput getEmployeeForEditOutput) { getEmployeeForEditOutput.Username = getEmployeeForEditOutput.Username.ToLower(); getEmployeeForEditOutput.Email = getEmployeeForEditOutput.Email.ToLower(); if (!await _employeeInfoRepository.IsEmployeeUserNameExists(getEmployeeForEditOutput.Username)) { return(BadRequest("Username is Already Exist")); } if (!await _employeeInfoRepository.IsEmployeeEmailExists(getEmployeeForEditOutput.Email)) { return(BadRequest("Email is Already Exist")); } var userLoginToCreate = new UserLogin { Username = getEmployeeForEditOutput.Username, UserType = "E", CreatedDate = DateTime.Now, UpdatedDate = DateTime.Now }; var createdUserLogin = await _employeeInfoRepository.CreateUserLogin(userLoginToCreate, getEmployeeForEditOutput.Password); EmployeeInfo employee = null; if (createdUserLogin.Id > 0) { employee = await _employeeInfoRepository.PostEmployeeInfo(getEmployeeForEditOutput, createdUserLogin.Id); } return(employee); }
public async Task <GetEmployeeForViewDto> PutEmployeeInfo(int id, GetEmployeeForEditOutput editOutput) { EmployeeInfo emp = await _context.EmployeeInfos.FirstOrDefaultAsync(i => i.Id == id); if (emp != null) { emp.EmpName = editOutput.EmpName; emp.Email = editOutput.Email; emp.Designation = editOutput.Designation; emp.ContactNo = editOutput.ContactNo; } UserLogin userLogin = await _context.UserLogins.FirstOrDefaultAsync(x => x.Id == emp.UserId); if (userLogin != null) { userLogin.Username = editOutput.Username; } _context.UserLogins.Update(userLogin); _context.EmployeeInfos.Update(emp); await _context.SaveChangesAsync(); var updatedEmployee = await GetEmployeeInfo(emp.Id); return(updatedEmployee); }
public async Task <EmployeeInfo> PostEmployeeInfo(GetEmployeeForEditOutput getEmployeeForEditOutput, int id) { EmployeeInfo employeeInfo = new EmployeeInfo { EmpCode = "EMP" + id, EmpName = getEmployeeForEditOutput.EmpName, Designation = getEmployeeForEditOutput.Designation, ContactNo = getEmployeeForEditOutput.ContactNo, Email = getEmployeeForEditOutput.Email, UserId = id }; await _context.EmployeeInfos.AddAsync(employeeInfo); await _context.SaveChangesAsync(); return(employeeInfo); }
/// <summary> /// 导出Employee为excel表 /// </summary> /// <returns></returns> //public async Task<FileDto> GetEmployeesToExcel(){ //var users = await UserManager.Users.ToListAsync(); //var userListDtos = ObjectMapper.Map<List<UserListDto>>(users); //await FillRoleNames(userListDtos); //return _userListExcelExporter.ExportToFile(userListDtos); //} /// <summary> /// MPA版本才会用到的方法 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <GetEmployeeForEditOutput> GetEmployeeForEdit(NullableIdDto <Guid> input) { var output = new GetEmployeeForEditOutput(); EmployeeEditDto employeeEditDto; if (input.Id.HasValue) { var entity = await _employeeRepository.GetAsync(input.Id.Value); employeeEditDto = entity.MapTo <EmployeeEditDto>(); //employeeEditDto = ObjectMapper.Map<List <employeeEditDto>>(entity); } else { employeeEditDto = new EmployeeEditDto(); } output.Employee = employeeEditDto; return(output); }
public async Task <ActionResult <GetEmployeeForViewDto> > PutEmployeeInfo(int id, GetEmployeeForEditOutput editOutput) { if (_employeeInfoRepository.IsEmployeeExists(id) == null) { return(BadRequest()); } var empInfo = await _employeeInfoRepository.PutEmployeeInfo(id, editOutput); return(empInfo); }