public ActionResult _DepartmentUserDetail(int DepartmentUserId) { try { ViewBag.Error = ""; ViewBag.SessionError = ""; var userData = MvcApplication.GetUserData(User.Identity.Name) ?? new UserData(); if (userData.UserId < 1) { ViewBag.SessionError = "Your session has expired! Please re-login"; return(View(new DepartmentUserObj())); } if (DepartmentUserId < 1) { ViewBag.Error = "Invalid selection"; return(View(new DepartmentUserObj())); } if (!(Session["_DepartmentUserList_"] is List <DepartmentUserObj> DepartmentUsers) || DepartmentUsers.Count < 1) { ViewBag.Error = "Error Occurred! Unable to process selected item"; return(View(new DepartmentUserObj())); } var thisDepartmentUser = DepartmentUsers.Find(m => m.DepartmentUserId == DepartmentUserId); if (thisDepartmentUser == null || thisDepartmentUser.DepartmentUserId < 1) { ViewBag.Error = "Error Occurred! Unable to process selected item"; return(View(new DepartmentUserObj())); } return(View(thisDepartmentUser)); } catch (Exception ex) { ViewBag.Error = "Error Occurred! Please try again later"; UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message); return(View(new DepartmentUserObj())); } }
public async Task <List <User> > GetUsersAsync(string deptName) { List <User> data = await DepartmentUsers.GetUsersAsync(deptName); return(await Task.FromResult(data)); }
public async Task <int> AddUser(UserVM user) { if (_context != null) { if (user.User_ID == 0) { /// this code for insert user, user role & departments. User userObj = new User(); userObj.User_Name = user.User_Name; userObj.Email = user.Email; userObj.Phone_Number = user.Phone_Number; userObj.First_Name = user.First_Name; userObj.Last_Name = user.Last_Name; userObj.Is_Active = true; _context.User.Add(userObj); await _context.SaveChangesAsync(); user.User_ID = userObj.User_ID; UserRole userRole = new UserRole(); userRole.User_ID = userObj.User_ID; userRole.Role_ID = user.Role_ID; userRole.Is_Active = true; _context.UserRole.Add(userRole); await _context.SaveChangesAsync(); List <DepartmentUsers> deptUserList = new List <DepartmentUsers>(); foreach (var deptIdStr in user.DepartmentIds.Split(",")) { DepartmentUsers departmentUser = new DepartmentUsers(); departmentUser.User_ID = userObj.User_ID; departmentUser.Department_ID = Convert.ToInt32(deptIdStr); departmentUser.Is_Active = true; deptUserList.Add(departmentUser); } _context.DepartmentUsers.AddRange(deptUserList); await _context.SaveChangesAsync(); } else { var userObj = _context.User.Find(user.User_ID); ///this code for delete user. if (user.Is_Active == false) { userObj.Is_Active = false; await _context.SaveChangesAsync(); } /// this code for update user details else { userObj.User_Name = user.User_Name; userObj.Email = user.Email; userObj.Phone_Number = user.Phone_Number; userObj.First_Name = user.First_Name; userObj.Last_Name = user.Last_Name; userObj.Is_Active = true; await _context.SaveChangesAsync(); UserRole userRole = _context.UserRole.Find(user.User_Role_ID); userRole.User_ID = userObj.User_ID; userRole.Role_ID = user.Role_ID; userRole.Is_Active = true; await _context.SaveChangesAsync(); var existingList = _context.DepartmentUsers.Where(x => x.User_ID == user.User_ID).ToList(); foreach (var eItem in existingList) { if (user.DepartmentIds.IndexOf(eItem.Department_ID.ToString()) == -1) { eItem.Is_Active = false; } } await _context.SaveChangesAsync(); foreach (var deptIdStr in user.DepartmentIds.Split(',')) { int deptId = Convert.ToInt32(deptIdStr); var deptItem = _context.DepartmentUsers.Where(x => x.Department_ID == deptId && x.User_ID == user.User_ID).FirstOrDefault(); if (deptItem == null) { DepartmentUsers department = new DepartmentUsers(); department.Department_ID = deptId; department.User_ID = user.User_ID; department.Is_Active = true; _context.DepartmentUsers.Add(department); await _context.SaveChangesAsync(); } else { deptItem.Is_Active = true; await _context.SaveChangesAsync(); } } } return(user.User_ID); } } return(user.User_ID); }
public ResponseDto <Users> Save([FromBody] Users request) { ResponseDto <Users> response = new ResponseDto <Users>(); var _entity = _appSystemServices.GetEntitys <Users>(); request.CompanyId = CurrentUser.CompanyId; if (string.IsNullOrEmpty(request.Id.ToStringExtension()) || request.Id.ToInt32() == 0) { var userId = _appSystemServices.Create <Users>(request); if (string.IsNullOrEmpty(request.Password)) { request.Id = userId; request.Password = ("123456".ToMD5() + userId.ToStringExtension()).ToMD5(); request.SetModifyDefault(this.CurrentUser); _appSystemServices.Modify <Users>(request); } // 加入单位用户 // 加入单位用户 CompanyUsers companyUsers = new CompanyUsers() { UserId = userId, JobStatus = JobStatus.Audit, CompanyId = CurrentUser.CompanyId }; companyUsers.SetCreateDefault(this.CurrentUser); _appSystemServices.Create <CompanyUsers>(companyUsers); if (!request.DepartmentId.IsNull() && request.DepartmentId.Count > 0) { List <DepartmentUsers> departmentUsers = new List <DepartmentUsers>(); request.DepartmentId.ForEach(p => { var departuser = new DepartmentUsers() { CompanyId = CurrentUser.CompanyId, DepartmentId = p, UserId = userId }; departuser.SetCreateDefault(this.CurrentUser); departmentUsers.Add(departuser); }); _appSystemServices.Create <DepartmentUsers>(departmentUsers.ToArray()); } if (!request.RoleId.IsNull() && request.RoleId.Count > 0) { List <RoleUsers> roleUsers = new List <RoleUsers>(); request.RoleId.ForEach(p => { var roleuser = new RoleUsers() { CompanyId = CurrentUser.CompanyId, RoleId = p, UserId = userId }; roleuser.SetCreateDefault(this.CurrentUser); roleUsers.Add(roleuser); _appSystemServices.Create <RoleUsers>(roleUsers.ToArray()); }); } } else { _appSystemServices.Modify <Users>(request); if (!request.DepartmentId.IsNull()) { _appSystemServices.GetEntitys <DepartmentUsers>().Where(x => x.UserId == request.Id && x.CompanyId == CurrentUser.CompanyId).ToDelete().ExecuteAffrows(); _appSystemServices.GetEntitys <RoleUsers>().Where(x => x.UserId == request.Id && x.CompanyId == CurrentUser.CompanyId).ToDelete().ExecuteAffrows(); if (!request.DepartmentId.IsNull() && request.DepartmentId.Count > 0) { List <DepartmentUsers> departmentUsers = new List <DepartmentUsers>(); request.DepartmentId.ForEach(p => { var departuser = new DepartmentUsers() { CompanyId = CurrentUser.CompanyId, DepartmentId = p, UserId = request.Id }; departuser.SetCreateDefault(this.CurrentUser); departmentUsers.Add(departuser); }); _appSystemServices.Create <DepartmentUsers>(departmentUsers.ToArray()); } if (!request.RoleId.IsNull() && request.RoleId.Count > 0) { List <RoleUsers> roleUsers = new List <RoleUsers>(); request.RoleId.ForEach(p => { var roleuser = new RoleUsers() { CompanyId = CurrentUser.CompanyId, RoleId = p, UserId = request.Id }; roleuser.SetCreateDefault(this.CurrentUser); roleUsers.Add(roleuser); _appSystemServices.Create <RoleUsers>(roleUsers.ToArray()); }); } } } return(response); }