public ActionResult AssignToNetwork(RegisterAndAssignUserToNetWork userViewModel) { if (ModelState.IsValid) { var member = new MemberLogic().Find(s => s.Id.Equals(User.Identity.GetUserId())); var notification = (new PermissionAndAuthorization()).Add(userViewModel); if (!notification.Success || string.IsNullOrEmpty(notification.Id)) { //AddErrors(notification); } else { var applicationUser = new ApplicationUser { UserName = userViewModel.Email.ToLower(), Email = userViewModel.Email.ToLower(), PersonId = notification.Id, PhoneNumber = userViewModel.Phone }; var identityResult = UserManager.Create(applicationUser, userViewModel.Password); if (identityResult.Succeeded) { if (userViewModel.Function != null) { var profileuserfunction = GroupManager.SetUserGroups(applicationUser.Id, userViewModel.Function); if (profileuserfunction.Succeeded) { var getPersonId = UserManager.FindByEmail(userViewModel.Email); var addUseToThierNetwork = new AssignUsersToTheirAgentNetwork { UserId = getPersonId.Id, NetworkId = member.AgencyId }; var results = new MemberLogic().AssignMemberToNetwork(addUseToThierNetwork); if (results.Success) { var userPositionHeldInOrganogramm = new UserPositionHeldInOrganogramm { UserId = addUseToThierNetwork.UserId, OrggrammId = member.AgencyId }; var resultss = new MemberLogic().AddWorkArea(userPositionHeldInOrganogramm); if (resultss.Success) { return(RedirectToAction("Index")); } } } } } } // this.AddErrors(identityResult); } return(View()); }
//public Notification Add(UserPositionHeldInOrganogramm entity) //{ // var notification = new Notification(); // try // { // _ctx.UserPositionHeld.Add(entity); // _ctx.SaveChanges(); // notification.Message = "role was created successful"; // notification.Success = false; // } // catch // { // notification.Message = "fail to create role"; // notification.Success = false; // } // return notification; //} public Notification Add(UserPositionHeldInOrganogramm entity) { var notification = new Notification(); using (var trns = _ctx.Database.BeginTransaction()) { try { var checkOfUserHasWorkSpace = _ctx.UserPositionHeld.SingleOrDefault(s => s.UserId.Equals(entity.UserId)); if (checkOfUserHasWorkSpace != null) { var userspace = new UserPositionHeldInOrganogramm { UserId = checkOfUserHasWorkSpace.UserId, OrggrammId = checkOfUserHasWorkSpace.OrggrammId }; var delete = _ctx.Database.ExecuteSqlCommand("Delete FROM UserPositionHeldInOrganogramms where UserId = {0}", new object[] { userspace.UserId }); //_ctx.Entry(userspace).State = EntityState.Deleted; //_ctx.SaveChanges(); _ctx.UserPositionHeld.Add(entity); _ctx.SaveChanges(); } else { _ctx.UserPositionHeld.Add(entity); _ctx.SaveChanges(); } trns.Commit(); notification.Id = Guid.NewGuid().ToString(); notification.Message = "role was created successful"; notification.Success = true; } catch (Exception ex) { trns.Rollback(); notification.Id = Guid.NewGuid().ToString(); notification.Message = "fail to create role"; notification.Success = false; } } return(notification); }
public Notification AddWorkArea(UserPositionHeldInOrganogramm entity) => _member.Add(entity);