/// <summary> /// Сохраняет в базе модель создания элемента. /// </summary> /// <param name="token">Токен безопасности.</param> /// <param name="model">Модель создания сущности для сохранения.</param> /// <param name="result">Результат выполнения..</param> public override UserGridItemModel SaveCreateModel(SecurityToken token, UserCreateModel model, JGridSaveModelResult result) { var currentUser = RemontinkaServer.Instance.DataStore.GetUser(model.Login); if (currentUser != null) { result.ModelErrors.Add(new PairItem <string, string>(string.Empty, string.Format("Логин {0} существует уже в системе, введите другой", model.Login))); result.ModelErrors.Add(new PairItem <string, string>("Login", "Необходимо ввести новое значение")); return(null); } var entity = new Romontinka.Server.DataLayer.Entities.User(); entity.PasswordHash = model.Password; entity.LastName = model.LastName; entity.MiddleName = model.MiddleName; entity.Phone = model.Phone; entity.Email = model.Email; entity.FirstName = model.FirstName; entity.LoginName = model.Login; entity.ProjectRoleID = model.ProjectRoleID; RemontinkaServer.Instance.SecurityService.CreateUser(token, entity); foreach (var branchId in model.BranchIds) { RemontinkaServer.Instance.DataStore.SaveUserBranchMapItem(new UserBranchMapItem { EventDate = DateTime.Now, BranchID = branchId, UserID = entity.UserID }); } return(CreateItemModel(entity)); }
/// <summary> /// Создает модель строки грида по конкретной сущности. /// </summary> /// <param name="entity">Сущность.</param> /// <returns>Созданная модель.</returns> private UserGridItemModel CreateItemModel(Romontinka.Server.DataLayer.Entities.User entity) { return(new UserGridItemModel { Contacts = string.Format("{0} {1}", entity.Phone, entity.Email), FullName = string.Format("{0} {1} {2}", entity.LastName, entity.FirstName, entity.MiddleName), Id = entity.UserID, Login = entity.LoginName, ProjectRoleTitle = ProjectRoleSet.GetKindByID(entity.ProjectRoleID).Title, }); }