public async Task AddTeacher(AddTeacherInput input) { var user = await _userRepository.FirstOrDefaultAsync(x => x.UserName == input.LoginId); if (user != null) { throw new UserFriendlyException($"登陆账号{input.LoginId}已存在!"); } var role = await _roleManager.GetRoleByNameAsync(StaticRoleNames.CourseSelecting.Teacher); if (role == null) { throw new UserFriendlyException("系统未初始化!"); } var teacher = new Teacher { TenantId = AbpSession.TenantId, Password = new PasswordHasher().HashPassword(Teacher.DefaultTeacherPassword), UserName = input.LoginId, Name = input.TeacherName, Surname = input.TeacherName, EmailAddress = "*****@*****.**", Department = input.Department, TeacherNo = input.TeacherNo, Gender = input.Gender ?? 0, Major = input.Major, Diploma = input.Diploma, Degree = input.Degree, PositionalTitle = input.PositionalTitle, YearsOfWorking = input.YearsOfWorking, YearsOfTeaching = input.YearsOfTeaching, IsFullTime = input.IsFullTime ?? true, Tel = input.Tel }; teacher = await _teacherRepository.InsertAsync(teacher); var userRole = new UserRole { TenantId = AbpSession.TenantId, RoleId = role.Id, UserId = teacher.Id }; await _userRoleRepository.InsertAsync(userRole); }
public async Task <TeacherProfile> AddAsync([Required] AddTeacherInput input) { // 判断账号是否存在 var isExist = await _teacherRepository.AnyAsync(u => u.TeacherName.ToLower() == input.TeacherName.Trim().ToLower()); if (isExist) { throw Oops.Oh(SystemErrorCodes.u1003); } var addTeacher = input.Adapt <Teacher>(); var entryEntity = await _teacherRepository.InsertNowAsync(addTeacher); return(entryEntity.Entity.Adapt <TeacherProfile>()); }