Exemple #1
0
 public void UpdateUser(EditUserModel viewModel)
 {
     var userInContext = NpcContext.CurrentUser;
     if (viewModel.Id == null)
         throw new ArgumentException("id不能为空");
     var user = _userRepository.Find(viewModel.Id.Value);
     FillUser(user, viewModel);
     if (user.PhoneBookRecord == null)
     {
         var phoneBookService = new PhoneBookService();
         var phoneBook = phoneBookService.CreateOrGetDefaultPhoneBook(userInContext.Unit);
         var phoneBookRecord = new PhoneBookRecord();
         phoneBookRecord.Mobile = viewModel.FormData.Mobile;
         phoneBookRecord.Name = viewModel.FormData.Name;
         phoneBookRecord.User = user;
         phoneBookRecord.PhoneBook = phoneBook;
         phoneBookRecord.RecordDescription.CreateBy(userInContext);
         _phoneBookRecordRepository.Save(phoneBookRecord);
         user.PhoneBookRecord = phoneBookRecord;
     }
     else
     {
         user.PhoneBookRecord.Name = viewModel.FormData.Name;
         user.PhoneBookRecord.RecordDescription.UpdateBy(userInContext);
         _phoneBookRecordRepository.Save(user.PhoneBookRecord);
     }
     _userRepository.Save(user);
     if (!string.IsNullOrEmpty(viewModel.FormData.RoleNames))
         SaveOrUpdateRoleUser(user.Id, viewModel.FormData.RoleNames.Split(new[] { ',' }));
 }
Exemple #2
0
 public void NewUser(EditUserModel viewModel)
 {
     var userInContext = NpcContext.CurrentUser;
     if (_userRepository.IsRepeatAccount(viewModel.FormData.Mobile.Trim(), userInContext.Unit.Id))
     {
         throw new ArgumentException(string.Format("手机{0}已被使用,请选择其它的手机号码", viewModel.FormData.Mobile));
     }
     var user = new User();
     user.Account = viewModel.FormData.Mobile;
     FillUser(user, viewModel);
     user.Unit = userInContext.Unit;
     user.RecordDescription.CreateBy(userInContext);
     _userRepository.Save(user);
     var phoneBookService = new PhoneBookService();
     var phoneBook = phoneBookService.CreateOrGetDefaultPhoneBook(userInContext.Unit);
     var phoneBookRecord = new PhoneBookRecord();
     phoneBookRecord.Mobile = viewModel.FormData.Mobile;
     phoneBookRecord.Name = viewModel.FormData.Name;
     phoneBookRecord.User = user;
     phoneBookRecord.PhoneBook = phoneBook;
     phoneBookRecord.RecordDescription.CreateBy(userInContext);
     _phoneBookRecordRepository.Save(phoneBookRecord);
     user.PhoneBookRecord = phoneBookRecord;
     _userRepository.Save(user);
     if (!string.IsNullOrEmpty(viewModel.FormData.RoleNames))
         SaveOrUpdateRoleUser(user.Id, viewModel.FormData.RoleNames.Split(new[] { ',' }));
 }