public IHttpActionResult PutDepartmentUser(int id, DepartmentUser departmentUser) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != departmentUser.departmentId) { return BadRequest(); } db.Entry(departmentUser).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!DepartmentUserExists(id)) { return NotFound(); } else { throw; } } return StatusCode(HttpStatusCode.NoContent); }
public IHttpActionResult PostDepartmentUser(DepartmentUser departmentUser) { if (!ModelState.IsValid) { return BadRequest(ModelState); } db.DepartmentUsers.Add(departmentUser); try { db.SaveChanges(); } catch (DbUpdateException) { if (DepartmentUserExists(departmentUser.departmentId)) { return Conflict(); } else { throw; } } return CreatedAtRoute("DefaultApi", new { id = departmentUser.departmentId }, departmentUser); }
protected void btn_Sumbit_Click(object sender, EventArgs e) { try { if (string.IsNullOrEmpty(this.txt_SysID.Text.ToString())) { ShowMessage("请至少选择一名人员!!"); return; } using (IFMPDBContext db = new IFMPDBContext()) { int depid = Convert.ToInt32(ddl_UserType.SelectedValue); foreach (string userid in this.txt_SysID.Text.ToString().TrimEnd(',').Split(',')) { int selid = Convert.ToInt32(userid); DepartmentUser DepartmentUser = db.DepartmentUser.FirstOrDefault(t => t.UserID == selid && t.DepartmentID == depid); if (DepartmentUser == null) { DepartmentUser = new DepartmentUser(); DepartmentUser.DepartmentID = depid; DepartmentUser.UserID = selid; db.DepartmentUser.Add(DepartmentUser); db.SaveChanges(); } } ShowMessage(); } } catch (Exception error) { ShowMessage(error.Message); } }
public DepartmentUser GetSingle(Int32 Id) { DepartmentUser obj = new DepartmentUser(); try { string query = "select * from department_users where ID = " + Id + ""; SqlCommand cmd = new SqlCommand(query, mySQLDBConnect.connection); mySQLDBConnect.OpenConnection(); DataTable dt = new DataTable(); SqlDataAdapter dA = new SqlDataAdapter(cmd); dA.Fill(dt); dA.Dispose(); obj = (from x in dt.AsEnumerable() select new DepartmentUser { Id = x.Field <Int32>("id"), DepartmentId = x.Field <Int32>("department_id"), UserId = x.Field <Int32>("user_id"), CreatedBy = x.Field <Int32>("created_by"), CreatedDate = x.Field <DateTime>("created_date"), UpdatedBy = x.Field <Int32?>("updated_by") == null ? 0 : x.Field <Int32>("updated_by"), UpdatedDate = x.Field <DateTime?>("updated_date"), Status = x.Field <Int32>("status"), }).ToList().FirstOrDefault(); mySQLDBConnect.CloseConnection(); } catch (Exception ex) { Console.Write(ex.ToString()); } return(obj); }
public IHttpActionResult GetDepartmentUser(int id) { DepartmentUser departmentUser = db.DepartmentUsers.Find(id); if (departmentUser == null) { return NotFound(); } return Ok(departmentUser); }
public DepartmentUser UpdateData(DepartmentUser obj) { try { obj = IDepartmentUserRepo.UpdateData(obj); } catch (Exception ex) { Console.Write(ex.ToString()); } return(obj); }
public IHttpActionResult DeleteDepartmentUser(int id) { DepartmentUser departmentUser = db.DepartmentUsers.Find(id); if (departmentUser == null) { return NotFound(); } db.DepartmentUsers.Remove(departmentUser); db.SaveChanges(); return Ok(departmentUser); }
public DepartmentUser DeleteData(Int32 Id) { DepartmentUser obj = new DepartmentUser(); try { obj = IDepartmentUserRepo.DeleteData(Id); } catch (Exception ex) { Console.Write(ex.ToString()); } return(obj); }
public void BindInfo() { using (IFMPDBContext db = new IFMPDBContext()) { DepartmentUser DepartmentUser = db.DepartmentUser.FirstOrDefault(t => t.ID == DepartmentUserID); if (DepartmentUser != null) { this.ddl_UserType.SelectedValue = DepartmentUser.DepartmentID.ToString(); this.txt_SysID.Text = DepartmentUser.UserID.ToString(); //txt_SysID.Text = db.User.FirstOrDefault(t => t.ID == DepartmentUser.UserID).RealName; //hf_CID.Value = db.User.FirstOrDefault(t => t.ID == DepartmentUser.UserID).ID.ToString(); //btn_plancom.s } } }
public DepartmentUser UpdateData(DepartmentUser obj) { try { string query = obj.ObjectToQuery <DepartmentUser>("update"); SqlCommand cmd = new SqlCommand(query, mySQLDBConnect.connection); mySQLDBConnect.OpenConnection(); cmd.ExecuteNonQuery(); mySQLDBConnect.CloseConnection(); } catch (Exception ex) { Console.Write(ex.ToString()); } return(obj); }
public DepartmentUser PostData(DepartmentUser obj) { try { string query = obj.ObjectToQuery <DepartmentUser>("insert") + "SELECT SCOPE_IDENTITY()"; SqlCommand cmd = new SqlCommand(query, mySQLDBConnect.connection); mySQLDBConnect.OpenConnection(); // cmd.ExecuteNonQuery(); obj.Id = Convert.ToInt32(cmd.ExecuteScalar()); mySQLDBConnect.CloseConnection(); } catch (Exception ex) { Console.Write(ex.ToString()); } return(obj); }
/// <summary> /// 删除事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btn_Delete_Click(object sender, EventArgs e) { string ids = hf_CheckIDS.Value.ToString().TrimEnd(',').TrimStart(','); try { using (IFMPDBContext db = new IFMPDBContext()) { try { foreach (string id in ids.Split('.')) { int selid = Convert.ToInt32(id); DepartmentUser DepartmentUser = db.DepartmentUser.FirstOrDefault(t => t.ID == selid); if (DepartmentUser != null) { db.DepartmentUser.Remove(DepartmentUser); } } db.SaveChanges(); new SysLogDAO().AddLog(LogType.操作日志_删除, "删除人员部门信息", UserID); ShowMessage("删除成功"); DataBindList(); this.hf_CheckIDS.Value = ""; } catch { ShowMessage("删除失败"); return; } } } catch (Exception ex) { new SysLogDAO().AddLog(LogType.系统日志, ex.Message, UserID); ShowMessage(ex.Message); return; } }
public Int32 DeleteBulkData(List <Int32> Ids) { Int32 result = 0; try { string query = ""; Ids.ForEach(Id => { DepartmentUser obj = GetSingle(Id); query += obj.ObjectToQuery <DepartmentUser>("update"); }); SqlCommand cmd = new SqlCommand(query, mySQLDBConnect.connection); mySQLDBConnect.OpenConnection(); result = cmd.ExecuteNonQuery(); mySQLDBConnect.CloseConnection(); } catch (Exception ex) { Console.Write(ex.ToString()); } return(result); }
public static object UpdateDepartments(List <IdDepartments> allObjs) { Int32 LoginUserId = 0; if (HttpContext.Current.Session["UserId"] != null) { LoginUserId = Convert.ToInt32(HttpContext.Current.Session["UserId"].ToString()); } foreach (IdDepartments bds in allObjs) { int userId = bds.Id; User user = IUserService.GetSingle(userId); UserRole userRole = IUserRoleService.GetSingle(user.UserRoleId); if (bds.isSelectAll) { user.IsAll = 1; user.UpdatedOn = DateTime.Now; user.UpdatedBy = LoginUserId; IUserService.UpdateData(user); if (userRole.Name == "Branch Admin") { List <DepartmentUser> userDepartments = IDepartmentUserService.GetDataByPropertyName(nameof(DepartmentUser.UserId), userId.ToString(), true, 0, 0, false); userDepartments.ForEach(x => { x.UpdatedBy = LoginUserId; x.UpdatedDate = DateTime.Now; x.Status = 0; }); IDepartmentUserService.UpdateBulkData(userDepartments); } else if (userRole.Name == "Regional Admin") { List <BranchUser> userBranches = IBranchUserService.GetDataByPropertyName(nameof(BranchUser.UserId), userId.ToString(), true, 0, 0, false); userBranches.ForEach(x => { x.UpdatedBy = LoginUserId; x.UpdatedDate = DateTime.Now; x.Status = 0; }); IBranchUserService.UpdateBulkData(userBranches); } } else { if (userRole.Name == "Branch Admin") { //List<Department> departments = IDepartmentService.GetData(0, 0, false); List <DepartmentUser> userDepartments = IDepartmentUserService.GetDataByPropertyName(nameof(DepartmentUser.UserId), userId.ToString(), true, 0, 0, false); foreach (DepartmentUser bd in userDepartments) { int?deptId = bds.DepartmentIds.Where(x => x == bd.DepartmentId).FirstOrDefault(); if (deptId == 0) { DepartmentUser bdNew = bd; bd.Status = 0; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IDepartmentUserService.UpdateData(bd); } else { DepartmentUser bdNew = bd; bd.Status = 1; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IDepartmentUserService.UpdateData(bd); } } foreach (int departmentId in bds.DepartmentIds) { DepartmentUser bd = userDepartments.Where(x => x.DepartmentId == departmentId).FirstOrDefault(); if (bd == null) { bd = new DepartmentUser { UserId = userId, DepartmentId = departmentId, CreatedBy = LoginUserId, CreatedDate = DateTime.Now, UpdatedBy = LoginUserId, UpdatedDate = DateTime.Now, Status = 1 }; IDepartmentUserService.PostData(bd); } else { if (bd.Status == 0) { bd.Status = 1; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IDepartmentUserService.UpdateData(bd); } } } } else if (userRole.Name == "Regional Admin") { List <BranchUser> userBranches = IBranchUserService.GetDataByPropertyName(nameof(BranchUser.UserId), userId.ToString(), true, 0, 0, false); foreach (BranchUser bd in userBranches) { int?deptId = bds.DepartmentIds.Where(x => x == bd.BranchId).FirstOrDefault(); if (deptId == 0) { BranchUser bdNew = bd; bd.Status = 0; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IBranchUserService.UpdateData(bd); } else { BranchUser bdNew = bd; bd.Status = 1; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IBranchUserService.UpdateData(bd); } } foreach (int departmentId in bds.DepartmentIds) { BranchUser bd = userBranches.Where(x => x.BranchId == departmentId).FirstOrDefault(); if (bd == null) { bd = new BranchUser { UserId = userId, BranchId = departmentId, CreatedBy = LoginUserId, CreatedDate = DateTime.Now, UpdatedBy = LoginUserId, UpdatedDate = DateTime.Now, Status = 1 }; IBranchUserService.PostData(bd); } else { if (bd.Status == 0) { bd.Status = 1; bd.UpdatedBy = LoginUserId; bd.UpdatedDate = DateTime.Now; IBranchUserService.UpdateData(bd); } } } } user.IsAll = 0; user.UpdatedOn = DateTime.Now; user.UpdatedBy = LoginUserId; IUserService.UpdateData(user); } } return(true); }
public ActionResult Index(int?clientId, int?productId) { try { ViewBag.Error = ""; #region Client Product productItem Session Check var userClientSession = (AppSession)Session["_UserClientSession_"]; if (userClientSession == null || userClientSession.ClientId < 1 || userClientSession.ProductId < 1 || userClientSession.ProductItemId < 1) { return(RedirectToAction("Index", "Dashboard")); } var ClientId = clientId ?? userClientSession.ClientId; var ProductId = productId ?? userClientSession.ProductId; var ProductItemId = userClientSession.ProductItemId; #endregion #region Current User Session Check var userData = MvcApplication.GetUserData(User.Identity.Name); if (userData == null || userData.UserId < 1) { ViewBag.Error = "Session Has Expired! Please Re-Login"; return(View(new List <DepartmentUserObj>())); } #endregion #region Check if Department User Session is null esle return to list if (Session["_DepartmentUserList_"] is List <DepartmentUserObj> DepartmentUser && DepartmentUser.Any()) { if (Session["_DepartmentList_"] is List <DepartmentObj> DepartmentList) { Session["_DepartmentList_"] = DepartmentList; } if (Session["_UsersList_"] is List <UserItemObj> UserList) { Session["_UsersList_"] = UserList; } var depList = DepartmentUser.Where(m => m.ClientId == ClientId && m.ProductId == ProductId).ToList(); return(View(depList)); } #endregion #region Request Response and Validation of responses var searchObj2 = new UserSearchObj { AdminUserId = userData.UserId, Status = -1000, StopDate = "", StartDate = "", UserId = 0, }; var retValForUsers = new PortalUserManager().LoadUsers(searchObj2, userData.Username); if (retValForUsers?.Status == null) { ViewBag.Error = "Error Occurred!"; return(View(new List <DepartmentUserObj>())); } if (retValForUsers.Users == null || !retValForUsers.Users.Any()) { ViewBag.Error = "Error Occurred!"; return(View(new List <DepartmentUserObj>())); } var searchObj3 = new DepartmentSearchObj { AdminUserId = userData.UserId, DepartmentId = 0, Status = -1000, StopDate = "", StartDate = "" }; var retValForDepartment = ExpenseLookUpServices.LoadDepartments(searchObj3, userData.Username); if (retValForDepartment?.Status == null) { ViewBag.Error = "Error Occurred!"; return(View(new List <DepartmentUserObj>())); } if (retValForDepartment.Departments == null || !retValForDepartment.Departments.Any()) { ViewBag.Error = "Error Occurred!"; return(View(new List <DepartmentUserObj>())); } var searchObj = new DepartmentUserSearchObj { AdminUserId = userData.UserId, DepartmentUserId = 0, }; var retVal = DepartmentUserServices.LoadDepartmentUsers(searchObj, userData.Username); if (retVal?.Status == null) { ViewBag.Error = " DepartmentUser list is empty!"; return(View(new List <DepartmentUserObj>())); } if (!retVal.Status.IsSuccessful) { ViewBag.Error = string.IsNullOrEmpty(retVal.Status.Message.FriendlyMessage) ? " DepartmentUser list is empty!" : retVal.Status.Message.FriendlyMessage; return(View(new List <DepartmentUserObj>())); } if (retVal.DepartmentUsers == null || !retVal.DepartmentUsers.Any()) { ViewBag.Error = " DepartmentUser list is empty!"; return(View(new List <DepartmentUserObj>())); } #endregion #region Initialization of Responses into Sessions var Users = retValForUsers.Users.OrderBy(m => m.UserId).ToList(); var Depts = retValForDepartment.Departments.OrderBy(m => m.DepartmentId).ToList(); var DepartmentUsers = retVal.DepartmentUsers.OrderBy(m => m.DepartmentUserId).Where(m => m.ClientId == ClientId && m.ProductId == ProductId).ToList(); Session["_DepartmentUserList_"] = DepartmentUsers; Session["_DepartmentList_"] = Depts.ToList(); Session["_UsersList_"] = Users.ToList(); #endregion return(View(DepartmentUsers)); } catch (Exception ex) { ViewBag.Error = ex.Message; UtilTools.LogE(ex.StackTrace, ex.Source, ex.Message); return(View(new List <DepartmentUserObj>())); } }
private void Init(T context) { User user = context.Set <User>().FirstOrDefault(t => t.UserName == "admin"); if (user == null) { context.Set <User>().AddOrUpdate(t => t.UserName, new User() { UserName = "******", UserNumber = "000000", Password = new BaseUtils().BuildPW("admin", "1"), RealName = "系统管理员", Cellphone = "18895353426", CreateDate = DateTime.Now, IsDel = false, UserState = UserState.其他, UserLeaveType = UserLeaveType.后勤人员 }); context.SaveChanges(); user = context.Set <User>().FirstOrDefault(t => t.UserName == "admin"); context.Set <UserDetails>().AddOrUpdate(t => t.UserID, new UserDetails() { UserID = user.ID, Sex = Sex.男, Nationality = Nationality.汉族, Polity = Polity.群众, BirthDate = DateTime.Now, Address = "", Job = "", HireDate = DateTime.Now, ProbationDays = 0, QualifiedDate = DateTime.Now, UserType = UserType.合同制, HeaderUrl = "", CreateDate = DateTime.Now, IsDel = false, }); context.SaveChanges(); } List <Department> DepartmentList = context.Set <Department>().ToList(); if (DepartmentList == null || DepartmentList.Count == 0) { Department Department = new Department(); Department.Name = "综合办公室"; Department.CreateDate = DateTime.Now; Department.CreateUserID = user.ID; Department.IsDel = false; Department.MasterUserID = user.ID; Department.Order = 0; Department.ParentID = -1; Department.IsAdmin = true; DepartmentList.Add(Department); Department = new Department(); Department.Name = "全公司组"; Department.CreateDate = DateTime.Now; Department.CreateUserID = user.ID; Department.IsDel = false; Department.MasterUserID = user.ID; Department.Order = 0; Department.ParentID = -1; Department.IsAdmin = false; DepartmentList.Add(Department); Department = new Department(); Department.Name = "男子组"; Department.CreateDate = DateTime.Now; Department.CreateUserID = user.ID; Department.IsDel = false; Department.MasterUserID = user.ID; Department.Order = 0; Department.ParentID = -1; Department.IsAdmin = false; DepartmentList.Add(Department); Department = new Department(); Department.Name = "女子组"; Department.CreateDate = DateTime.Now; Department.CreateUserID = user.ID; Department.IsDel = false; Department.MasterUserID = user.ID; Department.Order = 0; Department.ParentID = -1; Department.IsAdmin = false; DepartmentList.Add(Department); context.Set <Department>().AddOrUpdate(t => t.Name, DepartmentList.ToArray()); context.SaveChanges(); DepartmentUser DepartmentUser = new DepartmentUser(); DepartmentUser.DepartmentID = context.Set <Department>().FirstOrDefault(t => t.Name == "综合办公室").ID; DepartmentUser.UserID = user.ID; context.Set <DepartmentUser>().Add(DepartmentUser); context.SaveChanges(); } List <Dictionary> dictionaryList = context.Set <Dictionary>().ToList(); if (dictionaryList == null || dictionaryList.Count == 0) { Dictionary dictionary = new Dictionary(); dictionary.Name = "身份证号码"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.身份证号码; dictionaryList.Add(dictionary); dictionary = new Dictionary(); dictionary.Name = "手机号"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.手机号; dictionaryList.Add(dictionary); dictionary = new Dictionary(); dictionary.Name = "邮箱"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.邮箱; dictionaryList.Add(dictionary); dictionary = new Dictionary(); dictionary.Name = "邮政编码"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.邮政编码; dictionaryList.Add(dictionary); dictionary = new Dictionary(); dictionary.Name = "整数"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.整数; dictionaryList.Add(dictionary); dictionary = new Dictionary(); dictionary.Name = "英文字母"; dictionary.CreateDate = DateTime.Now; dictionary.CreateUserID = user.ID; dictionary.IsDel = false; dictionary.DisplayType = DictionaryTypeEnums.填写; dictionary.RegexData = ""; dictionary.RegexType = RegexType.英文字母; dictionaryList.Add(dictionary); context.Set <Dictionary>().AddOrUpdate(t => t.Name, dictionaryList.ToArray()); context.SaveChanges(); } List <Post> PostList = context.Set <Post>().ToList(); if (PostList == null || PostList.Count == 0) { Post Post = new Post(); Post.Name = "公司总经理"; Post.CreateDate = DateTime.Now; Post.CreateUserID = user.ID; Post.IsDel = false; Post.Order = 0; PostList.Add(Post); Post = new Post(); Post.Name = "财务副总经理"; Post.CreateDate = DateTime.Now; Post.CreateUserID = user.ID; Post.IsDel = false; Post.Order = 0; PostList.Add(Post); Post = new Post(); Post.Name = "生产副总经理"; Post.CreateDate = DateTime.Now; Post.CreateUserID = user.ID; Post.IsDel = false; Post.Order = 0; PostList.Add(Post); Post = new Post(); Post.Name = "系统管理员"; Post.CreateDate = DateTime.Now; Post.CreateUserID = user.ID; Post.IsDel = false; Post.Order = 0; PostList.Add(Post); context.Set <Post>().AddOrUpdate(t => t.Name, PostList.ToArray()); context.SaveChanges(); PostUser PostUser = new PostUser(); PostUser.PostID = context.Set <Post>().FirstOrDefault(t => t.Name == "系统管理员").ID; PostUser.UserID = user.ID; context.Set <PostUser>().Add(PostUser); context.SaveChanges(); } List <ScoreEventType> ScoreEventTypeList = context.Set <ScoreEventType>().ToList(); if (ScoreEventTypeList == null || ScoreEventTypeList.Count == 0) { ScoreEventType ScoreEventType = new ScoreEventType(); ScoreEventType.Name = "工作类事件"; ScoreEventType.IsDel = false; ScoreEventType.CreateDate = DateTime.Now; ScoreEventType.ParentID = 0; ScoreEventTypeList.Add(ScoreEventType); ScoreEventType = new ScoreEventType(); ScoreEventType.Name = "行为类事件"; ScoreEventType.IsDel = false; ScoreEventType.CreateDate = DateTime.Now; ScoreEventType.ParentID = 0; ScoreEventTypeList.Add(ScoreEventType); ScoreEventType = new ScoreEventType(); ScoreEventType.Name = "其他类事件"; ScoreEventType.IsDel = false; ScoreEventType.CreateDate = DateTime.Now; ScoreEventType.ParentID = 0; ScoreEventTypeList.Add(ScoreEventType); context.Set <ScoreEventType>().AddOrUpdate(t => t.Name, ScoreEventTypeList.ToArray()); context.SaveChanges(); } List <Role> RoleList = context.Set <Role>().ToList(); if (RoleList == null || RoleList.Count == 0) { foreach (int item in Enum.GetValues(typeof(RoleEnums))) { Role Role = new Role(); Role.Name = Enum.GetName(typeof(RoleEnums), item); Role.CreateDate = DateTime.Now; Role.IsBase = true; Role.IsDel = false; RoleList.Add(Role); } context.Set <Role>().AddOrUpdate(t => t.Name, RoleList.ToArray()); context.SaveChanges(); UserRole UserRole = new UserRole(); UserRole.RoleID = context.Set <Role>().FirstOrDefault(t => t.Name == "系统管理员").ID; UserRole.UserID = user.ID; context.Set <UserRole>().Add(UserRole); //context.Set<Role>().AddOrUpdate(t => t.Name, RoleList.ToArray()); context.SaveChanges(); } }
protected void btn_Submit_Click(object sender, EventArgs e) { try { using (IFMPDBContext db = new IFMPDBContext()) { //这里应该有权限,很重要 User user = db.User.FirstOrDefault(t => t.ID == UID); string message = ""; UserDetails udetail = db.UserDetails.FirstOrDefault(t => t.IsDel != true && t.UserID == user.ID); udetail.Sex = (Sex)Convert.ToInt32(this.ddl_Sex.SelectedValue.ToString()); udetail.Nationality = (Nationality)Convert.ToInt32(this.ddl_Nationality.SelectedValue.ToString()); udetail.Polity = (Polity)Convert.ToInt32(this.ddl_Polity.SelectedValue.ToString()); if (!string.IsNullOrEmpty(this.txt_BirthDate.Text.Trim())) { udetail.BirthDate = Convert.ToDateTime(this.txt_BirthDate.Text.ToString()); } udetail.Address = this.txt_Address.Text.ToString().Trim(); udetail.Job = this.txt_JobName.Text.ToString(); udetail.HireDate = Convert.ToDateTime(this.txt_HireDate.Text.ToString()); if (new BaseUtils().GetRegex(this.txt_ProbationDays.Text.ToString(), RegexType.非负整数) == false) { ShowMessage("请输入大于等于0的整数"); return; } udetail.ProbationDays = this.txt_ProbationDays.Text == "" ? 0 : Convert.ToInt32(this.txt_ProbationDays.Text.ToString()); if (!string.IsNullOrEmpty(this.txt_QualifiedDate.Text.Trim())) { udetail.QualifiedDate = Convert.ToDateTime(this.txt_QualifiedDate.Text); } udetail.UserType = (UserType)Convert.ToInt32(this.ddl_UserType.SelectedValue.ToString()); #region 图片 if (this.fl_UpFile.HasFile) { int upsize = 4000000; try { upsize = Convert.ToInt32(ConfigurationManager.AppSettings["upsize"].ToString()); } catch (Exception) { } string attaurl = ""; string pname = "/userphoto/"; string path = System.Web.HttpContext.Current.Server.MapPath(pname); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string name = this.fl_UpFile.PostedFile.FileName.ToString(); string[] filename = name[name.Length - 1].ToString().Split('.'); string filepath = path + name; if (this.fl_UpFile.PostedFile.ContentLength < upsize) { this.fl_UpFile.SaveAs(filepath); int j = filepath.IndexOf("userphoto"); attaurl = filepath.Substring(j - 1); } udetail.HeaderUrl = attaurl; } else { udetail.HeaderUrl = this.hf_UpFile.Value; } #endregion db.SaveChanges(); DepartmentUser DepartmentUser = db.DepartmentUser.FirstOrDefault(t => t.UserID == user.ID && db.Department.Where(m => m.IsDel != true && m.IsAdmin).Select(m => m.ID).Contains(t.DepartmentID)); DepartmentUser.DepartmentID = Convert.ToInt32(this.ddl_DepID.SelectedValue); DepartmentUser.UserID = user.ID; db.SaveChanges(); PostUser postuser = db.PostUser.FirstOrDefault(t => t.UserID == user.ID && db.Post.Where(m => m.IsDel != true).Select(m => m.ID).Contains(t.PostID)); postuser.PostID = Convert.ToInt32(this.ddl_PostID.SelectedValue); postuser.UserID = user.ID; db.SaveChanges(); if (db.User.FirstOrDefault(t => t.UserName == user.UserName && t.ID != user.ID) != null) { ShowMessage("用户名已存在,请修改后重新添加"); return; } message = "修改用户名为【" + user.UserName + "】的用户信息"; ShowMessage(); new SysLogDAO().AddLog(LogType.操作日志_添加, message, UserID); } } catch (Exception ex) { ShowMessage(ex.Message); new SysLogDAO().AddLog(LogType.系统日志, ex.Message, UserID); return; } }
/// <summary> /// 新增 /// </summary> /// <param name="model">实体</param> /// <returns>主键值</returns> public object Add(DepartmentUser model) { return(dal.Add <DepartmentUser>(model)); }
protected void Page_Load(object sender, EventArgs e) { Int32 LoginUserId = 0; if (HttpContext.Current.Session["UserId"] != null) { LoginUserId = Convert.ToInt32(HttpContext.Current.Session["UserId"].ToString()); } User user = IUserService.GetSingle(LoginUserId); UserRole userRole = IUserRoleService.GetSingle(user.UserRoleId); if (Request.QueryString["hdnNumberPerPage"] != "" && Request.QueryString["hdnNumberPerPage"] != null) { hdnNumberPerPage.Value = Request.QueryString["hdnNumberPerPage"].ToString(); } if (Request.QueryString["hdnCurrentPageNo"] != "" && Request.QueryString["hdnCurrentPageNo"] != null) { hdnCurrentPageNo.Value = Request.QueryString["hdnCurrentPageNo"].ToString(); } if (Request.QueryString["hdnTotalRecordsCount"] != "" && Request.QueryString["hdnTotalRecordsCount"] != null) { hdnTotalRecordsCount.Value = Request.QueryString["hdnTotalRecordsCount"].ToString(); } StringBuilder filter = new StringBuilder(); filter.Append(" 1=1 "); if (Request.QueryString["IsNewSearch"] != "" && Request.QueryString["IsNewSearch"] != null) { IsNewSearch.Value = Request.QueryString["IsNewSearch"].ToString(); } if (IsNewSearch.Value == "1") { hdnCurrentPageNo.Value = ""; } if (Request.QueryString["Search"] != "" && Request.QueryString["Search"] != null) { Search.Value = Request.QueryString["Search"].ToString(); string columnNameUsername = Converter.GetColumnNameByPropertyName <User>(nameof(Silverlake.Utility.User.Username)); filter.Append(" and " + columnNameUsername + " like '%" + Search.Value + "%'"); string columnNameEmail = Converter.GetColumnNameByPropertyName <User>(nameof(Silverlake.Utility.User.EmailId)); filter.Append(" or " + columnNameEmail + " like '%" + Search.Value + "%'"); string columnNameMobile = Converter.GetColumnNameByPropertyName <User>(nameof(Silverlake.Utility.User.MobileNumber)); filter.Append(" or " + columnNameMobile + " like '%" + Search.Value + "%'"); } string userRoleId = Converter.GetColumnNameByPropertyName <User>(nameof(Silverlake.Utility.User.UserRoleId)); List <string> adminroleids = IUserRoleService.GetDataByPropertyName(nameof(UserRole.UserTypeId), "6", true, 0, 0, false).Select(x => x.Id.ToString()).ToList(); filter.Append(" and " + userRoleId + " in (" + String.Join(",", adminroleids.ToArray()) + ")"); if (userRole.Name == "HQ Admin") { filter.Append(" and " + userRoleId + " > " + userRole.Id + ""); } else if (userRole.Name == "Regional Admin") { filter.Append(" and " + userRoleId + " > " + userRole.Id + ""); List <Branch> Branches = new List <Branch>(); if (user.IsAll == 0) { List <BranchUser> userBranches = IBranchUserService.GetDataByFilter(" user_id = '" + user.Id + "' and status='1'", 0, 0, false); Branches = IBranchService.GetDataByFilter(" ID not in (" + String.Join(",", userBranches.Select(x => x.BranchId).ToArray()) + ")", 0, 0, false); } else { Branches = IBranchService.GetDataByFilter(" status='1'", 0, 0, false); } filter.Append(" and " + userRoleId + " > " + userRole.Id + " and branch_id in (" + String.Join(",", Branches.Select(x => x.Id).ToArray()) + ")"); } else if (userRole.Name == "Branch Admin") { filter.Append(" and " + userRoleId + " > " + userRole.Id + ""); filter.Append(" and " + userRoleId + " > " + userRole.Id + " and branch_id in (" + user.BranchId + ")"); } int skip = 0, take = 10; if (hdnCurrentPageNo.Value == "") { skip = 0; take = 10; hdnNumberPerPage.Value = "10"; hdnCurrentPageNo.Value = "1"; hdnTotalRecordsCount.Value = IUserService.GetCountByFilter(filter.ToString()).ToString(); } else { skip = (Convert.ToInt32(hdnCurrentPageNo.Value) - 1) * 10; take = 10; } List <User> users = IUserService.GetDataByFilter(filter.ToString(), skip, take, true); StringBuilder asb = new StringBuilder(); int index = 1; List <Branch> branches = IBranchService.GetData(0, 0, false); List <Department> departments = IDepartmentService.GetData(0, 0, false); foreach (User u in users) { userRole = IUserRoleService.GetSingle(u.UserRoleId); Branch b = IBranchService.GetSingle(u.BranchId); StringBuilder departmentsHTML = new StringBuilder(); if (userRole.Name == "Branch Admin") { List <BranchDepartment> branchDepartments = IBranchDepartmentService.GetDataByFilter(" branch_id = '" + u.BranchId + "' and status='1'", 0, 0, false); if (b.IsAll == 0) { departments = departments.Where(x => !(branchDepartments.Select(y => y.DepartmentId).ToList().Contains(x.Id))).ToList(); } List <DepartmentUser> userDepartments = IDepartmentUserService.GetDataByPropertyName(nameof(DepartmentUser.UserId), u.Id.ToString(), true, 0, 0, false); bool isSelectAllChecked = u.IsAll == 1 ? true : false; departmentsHTML.Append(@" <label class='icheck'> <div class='flat-blue single-row'> <div class='checkbox'> <input type='checkbox' name='checkRow' class='checkRow selectAll' value='' " + (isSelectAllChecked ? "checked" : "") + @"/> <label>Select All</label><br/> </div> </div> </label> "); foreach (Department d in departments) { bool isChecked = false; if (isSelectAllChecked) { isChecked = true; } else if (userDepartments.Count > 0) { DepartmentUser bd = userDepartments.Where(x => x.DepartmentId == d.Id && x.Status == 1).FirstOrDefault(); if (bd == null) { isChecked = true; } } departmentsHTML.Append(@" <label class='icheck'> <div class='flat-green single-row'> <div class='checkbox'> <input type='checkbox' name='checkRow' class='checkRow' value='" + d.Id + @"' " + (isChecked ? "checked" : "") + @"/> <label>" + d.Code + @"</label><br/> </div> </div> </label> "); } } StringBuilder branchesHTML = new StringBuilder(); if (userRole.Name == "Regional Admin") { List <BranchUser> userBranches = IBranchUserService.GetDataByFilter(" user_id = '" + u.Id + "' and status='1'", 0, 0, false); bool isSelectAllChecked = u.IsAll == 1 ? true : false; branchesHTML.Append(@" <label class='icheck'> <div class='flat-blue single-row'> <div class='checkbox'> <input type='checkbox' name='checkRow' class='checkRow selectAll' value='' " + (isSelectAllChecked ? "checked" : "") + @"/> <label>Select All</label><br/> </div> </div> </label> "); foreach (Branch br in branches) { bool isChecked = false; if (isSelectAllChecked) { isChecked = true; } else if (userBranches.Count > 0) { BranchUser bd = userBranches.Where(x => x.BranchId == br.Id && x.Status == 1).FirstOrDefault(); if (bd == null) { isChecked = true; } } branchesHTML.Append(@" <label class='icheck'> <div class='flat-green single-row'> <div class='checkbox'> <input type='checkbox' name='checkRow' class='checkRow' value='" + br.Id + @"' " + (isChecked ? "checked" : "") + @"/> <label>" + br.Code + @"</label><br/> </div> </div> </label> "); } } asb.Append(@"<tr> <td class='icheck'> <div class='square single-row'> <div class='checkbox'> <input type='checkbox' name='checkRow' class='checkRow' value='" + u.Id + @"' /> <label>" + index + @"</label><br/> </div> </div> <span class='row-status'>" + (u.Status == 1 ? "<span class='label label-success'>Active</span>" : "<span class='label label-danger'>Inactive</span>") + @"</span> </td> <td> Username: <strong>" + u.Username + @"</strong><br /> Email: <strong>" + u.EmailId + @"</strong><br /> Mobile: <strong>" + u.MobileNumber + @"</strong><br /> Role: <strong>" + userRole.Name + @"</strong><br />"); if (userRole.Name == "Branch Admin") { asb.Append(@"API Auth Token: <a href='javascript:;' class='btn btn-sm btn-primary view_batch_log'>View</a> <div class='div_batch_log hide draggableDiv'> <span class='log_close'>X</span> <table class='table mb-0'> <tr><td><strong>Api Auth Token</strong></td><td class='text-right'>User: <strong>" + u.Username + @"</strong></td></tr> </table> <div class='mini-stat clearfix text-left'>" + u.ApiAuthToken + @"</div> </div>"); } asb.Append(@"</td> <td style='width: 600px;'> " + (u.BranchId == 0 ? "<strong>Branches</strong><br />" + branchesHTML.ToString() : "<strong>Branch: " + b.Code + "</strong><br />") + @" " + (userRole.Name == "Branch Admin" ? "<strong>Departments</strong><br />" + departmentsHTML.ToString() : "") + @" </td> </tr>"); index++; } adminsTbody.InnerHtml = asb.ToString(); }
/// <summary> /// 更新 /// </summary> /// <param name="model">实体</param> public void Update(DepartmentUser model) { dal.Update <DepartmentUser>(model); }
/// <summary> /// 删除 /// </summary> /// <param name="model">实体</param> public void Delete(DepartmentUser model) { dal.Delete <DepartmentUser>(model); }
protected void btn_Submit_Click(object sender, EventArgs e) { using (TransactionScope ts = new TransactionScope()) { try { using (IFMPDBContext db = new IFMPDBContext()) { //这里应该有权限,很重要 User user = db.User.FirstOrDefault(t => t.ID == UID && t.IsDel != true); string message = ""; if (user == null) { user = new User(); if (!string.IsNullOrEmpty(this.txt_CellPhone.Text.Trim()) && new BaseUtils().GetRegex(this.txt_CellPhone.Text.ToString(), RegexType.手机号) == false) { ShowMessage("请输入正确的手机号"); return; } user.Cellphone = this.txt_CellPhone.Text; user.UserNumber = this.txt_EmpCode.Text; user.CreateDate = DateTime.Now; user.CreateUserID = UserID; user.IsDel = false; user.UserName = this.txt_SysUserName.Text; user.RealName = this.txt_RealName.Text; user.Password = new BaseUtils().BuildPW(user.UserName, "888888"); user.UserState = (UserState)Convert.ToInt32(this.ddl_UserState.SelectedValue); user.UserLeaveType = (UserLeaveType)Convert.ToInt32(this.ddl_UserLeaveType.SelectedValue); if (db.User.FirstOrDefault(t => t.UserName == user.UserName && t.IsDel != true) != null) { ShowMessage("用户名已存在,请修改后重新添加"); return; } if (db.User.FirstOrDefault(t => t.UserNumber == user.UserNumber && t.IsDel != true) != null) { ShowMessage("员工编号已存在,请检查后重新提交"); return; } message = "添加用户名为【" + user.UserName + "】的用户信息"; db.User.Add(user); db.SaveChanges(); //用户添加到部门 DepartmentUser DepartmentUser = new DepartmentUser(); DepartmentUser.DepartmentID = Convert.ToInt32(this.ddl_DepID.SelectedValue); DepartmentUser.UserID = user.ID; db.DepartmentUser.Add(DepartmentUser); db.SaveChanges(); //用户添加到岗位 PostUser postuser = new PostUser(); postuser.PostID = Convert.ToInt32(this.ddl_PostID.SelectedValue); postuser.UserID = user.ID; db.PostUser.Add(postuser); db.SaveChanges(); //这个先写一个默认的 UserDetails userDetails = new UserDetails(); userDetails.UserID = user.ID; int sexint = Convert.ToInt32(this.ddl_Sex.SelectedValue.ToString()); Sex sex = (Sex)sexint; userDetails.Sex = sex; //userDetails.Sex = (Sex)Convert.ToInt32(this.ddl_Sex.SelectedValue.ToString()); userDetails.Nationality = (Nationality)Convert.ToInt32(this.ddl_Nationality.SelectedValue.ToString()); userDetails.Polity = (Polity)Convert.ToInt32(this.ddl_Polity.SelectedValue.ToString()); userDetails.Identity = this.txt_Identity.Text; if (string.IsNullOrEmpty(userDetails.Identity)) { ShowMessage("请输入身份证号"); return; } if (db.UserDetails.FirstOrDefault(t => t.Identity == userDetails.Identity) != null) { ShowMessage("身份证号重复"); return; } if (!string.IsNullOrEmpty(this.txt_BirthDate.Text.Trim())) { userDetails.BirthDate = Convert.ToDateTime(this.txt_BirthDate.Text.ToString()); } userDetails.Address = this.txt_Address.Text.ToString().Trim(); if (string.IsNullOrEmpty(userDetails.Address)) { ShowMessage("请输入家庭住址"); return; } userDetails.Job = this.txt_JobName.Text.ToString(); if (!string.IsNullOrEmpty(this.txt_HireDate.Text.Trim())) { userDetails.HireDate = Convert.ToDateTime(this.txt_HireDate.Text.ToString()); } if (new BaseUtils().GetRegex(this.txt_ProbationDays.Text.ToString(), RegexType.非负整数) == false) { ShowMessage("请输入大于等于0的整数"); return; } userDetails.ProbationDays = this.txt_ProbationDays.Text == "" ? 0 : Convert.ToInt32(this.txt_ProbationDays.Text.ToString()); if (!string.IsNullOrEmpty(this.txt_QualifiedDate.Text.Trim())) { userDetails.QualifiedDate = Convert.ToDateTime(this.txt_QualifiedDate.Text); } userDetails.UserType = (UserType)Convert.ToInt32(this.ddl_UserType.SelectedValue.ToString()); #region 图片 if (this.fl_UpFile.HasFile) { int upsize = 4000000; try { upsize = Convert.ToInt32(ConfigurationManager.AppSettings["upsize"].ToString()); } catch (Exception) { } string attaurl = ""; string pname = "/userphoto/"; string path = System.Web.HttpContext.Current.Server.MapPath(pname); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string name = this.fl_UpFile.PostedFile.FileName.ToString(); string[] filename = name[name.Length - 1].ToString().Split('.'); string filepath = path + name; if (this.fl_UpFile.PostedFile.ContentLength < upsize) { this.fl_UpFile.SaveAs(filepath); int j = filepath.IndexOf("userphoto"); attaurl = filepath.Substring(j - 1); } userDetails.HeaderUrl = attaurl; } else { userDetails.HeaderUrl = ""; } #endregion userDetails.CreateDate = DateTime.Now; userDetails.CreateUserID = UserID; userDetails.IsDel = false; db.UserDetails.Add(userDetails); db.SaveChanges(); foreach (ListItem li in this.cbl_Role.Items) { UserRole userRoles = new UserRole(); userRoles.UserID = user.ID; if (li.Selected) { userRoles.RoleID = Convert.ToInt32(li.Value); } db.UserRole.Add(userRoles); db.SaveChanges(); } //需要添加用户到钉钉 string accesstoken = new DDUtils().GetAccessToken(); user.DDID = new DDUtils().AddUser(user, accesstoken); db.SaveChanges(); } else { user.UserNumber = this.txt_EmpCode.Text.ToString(); user.Cellphone = this.txt_CellPhone.Text.ToString(); if (string.IsNullOrEmpty(user.Cellphone)) { ShowMessage("请输入手机号"); return; } if (db.User.FirstOrDefault(t => t.ID != user.ID && t.Cellphone == user.Cellphone) != null) { ShowMessage("手机号重复"); return; } user.UserState = (UserState)Convert.ToInt32(this.ddl_UserState.SelectedValue); user.RealName = this.txt_RealName.Text.ToString(); user.UserLeaveType = (UserLeaveType)Convert.ToInt32(this.ddl_UserLeaveType.SelectedValue); if (db.User.FirstOrDefault(t => t.UserNumber == user.UserNumber && t.IsDel != true && user.ID != UID) != null) { ShowMessage("员工编号已存在,请检查后重新提交"); return; } db.SaveChanges(); UserDetails udetail = db.UserDetails.FirstOrDefault(t => t.IsDel != true && t.UserID == user.ID); int sexint = Convert.ToInt32(this.ddl_Sex.SelectedValue.ToString()); Sex sex = (Sex)sexint; udetail.Sex = sex; udetail.Nationality = (Nationality)Convert.ToInt32(this.ddl_Nationality.SelectedValue.ToString()); udetail.Polity = (Polity)Convert.ToInt32(this.ddl_Polity.SelectedValue.ToString()); udetail.Identity = this.txt_Identity.Text; if (string.IsNullOrEmpty(udetail.Identity)) { ShowMessage("请输入身份证号"); return; } if (db.UserDetails.FirstOrDefault(t => t.Identity == udetail.Identity && t.ID != udetail.ID) != null) { ShowMessage("身份证号重复"); return; } if (!string.IsNullOrEmpty(this.txt_BirthDate.Text.Trim())) { udetail.BirthDate = Convert.ToDateTime(this.txt_BirthDate.Text.ToString()); } udetail.Address = this.txt_Address.Text.ToString().Trim(); if (string.IsNullOrEmpty(udetail.Address)) { ShowMessage("请输入家庭住址"); return; } udetail.Job = this.txt_JobName.Text.ToString(); if (!string.IsNullOrEmpty(this.txt_HireDate.Text.Trim())) { udetail.HireDate = Convert.ToDateTime(this.txt_HireDate.Text.ToString()); } udetail.ProbationDays = this.txt_ProbationDays.Text == "" ? 0 : Convert.ToInt32(this.txt_ProbationDays.Text.ToString()); if (!string.IsNullOrEmpty(this.txt_QualifiedDate.Text.Trim())) { udetail.QualifiedDate = Convert.ToDateTime(this.txt_QualifiedDate.Text.ToString()); } udetail.UserType = (UserType)Convert.ToInt32(this.ddl_UserType.SelectedValue.ToString()); #region 图片 if (this.fl_UpFile.HasFile) { int upsize = 4000000; try { upsize = Convert.ToInt32(ConfigurationManager.AppSettings["upsize"].ToString()); } catch (Exception) { } string attaurl = ""; string pname = "/userphoto/"; string path = System.Web.HttpContext.Current.Server.MapPath(pname); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string name = this.fl_UpFile.PostedFile.FileName.ToString(); string[] filename = name[name.Length - 1].ToString().Split('.'); string filepath = path + name; if (this.fl_UpFile.PostedFile.ContentLength < upsize) { this.fl_UpFile.SaveAs(filepath); int j = filepath.IndexOf("userphoto"); attaurl = filepath.Substring(j - 1); } udetail.HeaderUrl = attaurl; } else { udetail.HeaderUrl = this.hf_Photo.Value; } #endregion db.SaveChanges(); DepartmentUser DepartmentUser = db.DepartmentUser.FirstOrDefault(t => t.UserID == user.ID && db.Department.Where(m => m.IsDel != true && m.IsAdmin).Select(m => m.ID).Contains(t.DepartmentID)); DepartmentUser.DepartmentID = Convert.ToInt32(this.ddl_DepID.SelectedValue); DepartmentUser.UserID = user.ID; db.SaveChanges(); PostUser postuser = db.PostUser.FirstOrDefault(t => t.UserID == user.ID && db.Post.Where(m => m.IsDel != true).Select(m => m.ID).Contains(t.PostID)); postuser.PostID = Convert.ToInt32(this.ddl_PostID.SelectedValue); postuser.UserID = user.ID; db.SaveChanges(); List <UserRole> userrolelist = db.UserRole.Where(t => t.UserID == UID).ToList(); if (userrolelist.Count > 0) { for (int i = 0; i < userrolelist.Count; i++) { int urid = Convert.ToInt32(userrolelist[i].ID); UserRole roleuser = db.UserRole.FirstOrDefault(t => t.ID == urid); db.UserRole.Remove(roleuser); db.SaveChanges(); } } foreach (ListItem li in this.cbl_Role.Items) { UserRole userRoles = new UserRole(); userRoles.UserID = user.ID; if (li.Selected) { userRoles.RoleID = Convert.ToInt32(li.Value); db.UserRole.Add(userRoles); db.SaveChanges(); } } if (db.User.FirstOrDefault(t => t.UserName == user.UserName && t.IsDel != true && t.ID != user.ID) != null) { ShowMessage("用户名已存在,请修改后重新添加"); return; } message = "修改用户名为【" + user.UserName + "】的用户信息"; } ShowMessage(); new SysLogDAO().AddLog(LogType.操作日志_添加, message, UserID); ts.Complete(); } } catch (Exception ex) { ShowMessage(ex.Message); new SysLogDAO().AddLog(LogType.系统日志, ex.Message, UserID); ts.Dispose(); return; } } }
protected void btn_Sumbit_Click(object sender, EventArgs e) { string path = up(); if (path != "") { DataTable dt = ReadExcel(path); if (dt != null) { List <User> UserList = db.User.Where(t => t.IsDel != true).ToList(); List <UserDetails> UserDetailsList = db.UserDetails.Where(t => t.IsDel != true).ToList(); string colname = ""; foreach (DataColumn dc in dt.Columns) { colname += dc.ColumnName + ","; } string[] needcol = { "用户名", "员工编号", "姓名", "性别", "身份证", "手机号码", "职务", "部门", "岗位", "政治面貌", "民族", "出生日期", "入职日期", "转正日期", "员工分类", "岗位类型", "状态", "家庭住址" }; int count = 0; for (int i = 0; i < needcol.Length; i++) { count += colname.IndexOf(needcol[i]) == -1 ? -1 : 1; } if (count >= needcol.Length) { try { using (TransactionScope ts = new TransactionScope()) { int result = 0; string message = ""; for (int i = 0; i < dt.Rows.Count; i++) { if (dt.Rows[i]["用户名"].ToString().Trim() == "" || dt.Rows[i]["员工编号"].ToString().Trim() == "" || dt.Rows[i]["姓名"].ToString().Trim() == "" || dt.Rows[i]["性别"].ToString().Trim() == "" || dt.Rows[i]["部门"].ToString().Trim() == "" || dt.Rows[i]["岗位"].ToString().Trim() == "" || dt.Rows[i]["政治面貌"].ToString().Trim() == "" || dt.Rows[i]["民族"].ToString().Trim() == "" || dt.Rows[i]["员工分类"].ToString().Trim() == "" || dt.Rows[i]["岗位类型"].ToString().Trim() == "" || dt.Rows[i]["状态"].ToString().Trim() == "") { result = -1; message = "第【" + (i + 2) + "】行有不可为空项为空,请检查后重新导入"; break; } //用身份证判断是不是有了该用户 string Identity = dt.Rows[i]["身份证"].ToString().Trim(); UserDetails userdetails = db.UserDetails.FirstOrDefault(t => t.Identity == Identity); if (userdetails == null) { User user = new User(); userdetails = new UserDetails(); user.UserNumber = dt.Rows[i]["员工编号"].ToString().Trim(); user.UserName = dt.Rows[i]["用户名"].ToString().Replace(" ", "").Trim(); user.Cellphone = dt.Rows[i]["手机号码"].ToString().Trim(); if (!string.IsNullOrEmpty(user.Cellphone) && new BaseUtils().GetRegex(user.Cellphone, RegexType.手机号) == false) { result = -1; message = "第【" + (i + 2) + "】行手机号码不正确,请检查后重新导入"; break; } user.RealName = dt.Rows[i]["姓名"].ToString().Trim(); user.Password = new BaseUtils().BuildPW(user.UserName, "888888"); user.CreateDate = DateTime.Now; user.CreateUserID = UserID; user.IsDel = false; try { user.UserState = (UserState)Enum.Parse(typeof(UserState), dt.Rows[i]["状态"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行状态信息有误,请检查后重新提交"; break; } try { user.UserLeaveType = (UserLeaveType)Enum.Parse(typeof(UserLeaveType), dt.Rows[i]["岗位类型"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行岗位类型信息有误,请检查后重新提交"; break; } if (db.User.FirstOrDefault(t => t.UserName == user.UserName && t.IsDel != true) != null) { result = -1; message = "第【" + (i + 2) + "】行用户名已存在,请检查后重新提交"; break; } if (db.User.FirstOrDefault(t => t.UserNumber == user.UserNumber && t.IsDel != true) != null) { result = -1; message = "第【" + (i + 2) + "】行员工编号已存在,请检查后重新提交"; break; } db.User.Add(user); db.SaveChanges(); //用户添加到部门 string depname = dt.Rows[i]["部门"].ToString().Trim(); Department dep = db.Department.FirstOrDefault(t => t.Name.Contains(depname) && t.IsDel != true); if (dep != null) { DepartmentUser DepartmentUser = new DepartmentUser(); DepartmentUser.DepartmentID = dep.ID; DepartmentUser.UserID = user.ID; db.DepartmentUser.Add(DepartmentUser); //db.SaveChanges(); } else { result = -1; message = "第【" + (i + 2) + "】行部门名称不存在,请检查后重新提交"; break; } //用户添加到岗位 string postname = dt.Rows[i]["岗位"].ToString().Trim(); Post post = db.Post.FirstOrDefault(t => t.Name.Contains(postname) && t.IsDel != true); if (post != null) { PostUser postuser = new PostUser(); postuser.PostID = post.ID; postuser.UserID = user.ID; db.PostUser.Add(postuser); //db.SaveChanges(); } else { result = -1; message = "第【" + (i + 2) + "】行岗位名称不存在,请检查后重新提交"; break; } db.SaveChanges(); userdetails.UserID = user.ID; try { userdetails.Sex = (Sex)Enum.Parse(typeof(Sex), dt.Rows[i]["性别"].ToString()); } catch { result = -1; message = "第【" + (i + 2) + "】行性别信息有误,请检查后重新提交"; break; } try { userdetails.Nationality = (Nationality)Enum.Parse(typeof(Nationality), dt.Rows[i]["民族"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行民族信息有误,请检查后重新提交"; break; } try { userdetails.Polity = (Polity)Enum.Parse(typeof(Polity), dt.Rows[i]["政治面貌"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行政治面貌信息有误,请检查后重新提交"; break; } if (!string.IsNullOrEmpty(dt.Rows[i]["出生日期"].ToString().Trim())) { userdetails.BirthDate = Convert.ToDateTime(dt.Rows[i]["出生日期"].ToString().Trim()); } userdetails.Address = dt.Rows[i]["家庭住址"].ToString().Trim(); userdetails.Job = dt.Rows[i]["职务"].ToString().Trim(); try { userdetails.HireDate = Convert.ToDateTime(dt.Rows[i]["入职日期"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行入职日期信息有误,请检查后重新提交"; break; } userdetails.ProbationDays = 0; if (!string.IsNullOrEmpty(dt.Rows[i]["转正日期"].ToString().Trim())) { userdetails.QualifiedDate = Convert.ToDateTime(dt.Rows[i]["转正日期"].ToString().Trim()); } try { userdetails.UserType = (UserType)Enum.Parse(typeof(UserType), dt.Rows[i]["员工分类"].ToString()); } catch { result = -1; message = "第【" + (i + 2) + "】行员工分类信息有误,请检查后重新提交"; break; } userdetails.Identity = dt.Rows[i]["身份证"].ToString().Trim(); if (!string.IsNullOrEmpty(userdetails.Identity) && new BaseUtils().GetRegex(userdetails.Identity, RegexType.身份证号码) == false) { result = -1; message = "第【" + (i + 2) + "】行身份证号码不正确,请检查后重新导入"; break; } userdetails.HeaderUrl = ""; userdetails.CreateDate = DateTime.Now; userdetails.CreateUserID = UserID; userdetails.IsDel = false; db.UserDetails.Add(userdetails); string accesstoken = new DDUtils().GetAccessToken(); user.DDID = new DDUtils().AddUser(user, accesstoken); db.SaveChanges(); } else { User user = db.User.FirstOrDefault(t => t.ID == userdetails.UserID); user.UserNumber = dt.Rows[i]["员工编号"].ToString().Trim(); user.UserName = dt.Rows[i]["用户名"].ToString().Replace(" ", "").Trim(); user.Cellphone = dt.Rows[i]["手机号码"].ToString().Trim(); if (!string.IsNullOrEmpty(user.Cellphone) && new BaseUtils().GetRegex(user.Cellphone, RegexType.手机号) == false) { result = -1; message = "第【" + (i + 2) + "】行手机号码不正确,请检查后重新导入"; break; } user.RealName = dt.Rows[i]["姓名"].ToString().Trim(); user.Password = new BaseUtils().BuildPW(user.UserName, "888888"); user.CreateDate = DateTime.Now; user.CreateUserID = UserID; user.IsDel = false; try { user.UserState = (UserState)Enum.Parse(typeof(UserState), dt.Rows[i]["状态"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行状态信息有误,请检查后重新提交"; break; } try { user.UserLeaveType = (UserLeaveType)Enum.Parse(typeof(UserLeaveType), dt.Rows[i]["岗位类型"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行岗位类型信息有误,请检查后重新提交"; break; } if (db.User.FirstOrDefault(t => t.UserName == user.UserName && t.IsDel != true) != null) { result = -1; message = "第【" + (i + 2) + "】行用户名已存在,请检查后重新提交"; break; } if (db.User.FirstOrDefault(t => t.UserNumber == user.UserNumber && t.IsDel != true) != null) { result = -1; message = "第【" + (i + 2) + "】行员工编号已存在,请检查后重新提交"; break; } //db.User.Add(user); db.SaveChanges(); //用户添加到部门 db.DepartmentUser.RemoveRange(db.DepartmentUser.Where(t => t.UserID == user.ID).ToList()); string depname = dt.Rows[i]["部门"].ToString().Trim(); Department dep = db.Department.FirstOrDefault(t => t.Name.Contains(depname) && t.IsDel != true); if (dep != null) { DepartmentUser DepartmentUser = new DepartmentUser(); DepartmentUser.DepartmentID = dep.ID; DepartmentUser.UserID = user.ID; db.DepartmentUser.Add(DepartmentUser); //db.SaveChanges(); } else { result = -1; message = "第【" + (i + 2) + "】行部门名称不存在,请检查后重新提交"; break; } //用户添加到岗位 db.PostUser.RemoveRange(db.PostUser.Where(t => t.UserID == user.ID).ToList()); string postname = dt.Rows[i]["岗位"].ToString().Trim(); Post post = db.Post.FirstOrDefault(t => t.Name.Contains(postname) && t.IsDel != true); if (post != null) { PostUser postuser = new PostUser(); postuser.PostID = post.ID; postuser.UserID = user.ID; db.PostUser.Add(postuser); //db.SaveChanges(); } else { result = -1; message = "第【" + (i + 2) + "】行岗位名称不存在,请检查后重新提交"; break; } db.SaveChanges(); userdetails.UserID = user.ID; try { userdetails.Sex = (Sex)Enum.Parse(typeof(Sex), dt.Rows[i]["性别"].ToString()); } catch { result = -1; message = "第【" + (i + 2) + "】行性别信息有误,请检查后重新提交"; break; } try { userdetails.Nationality = (Nationality)Enum.Parse(typeof(Nationality), dt.Rows[i]["民族"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行民族信息有误,请检查后重新提交"; break; } try { userdetails.Polity = (Polity)Enum.Parse(typeof(Polity), dt.Rows[i]["政治面貌"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行政治面貌信息有误,请检查后重新提交"; break; } if (!string.IsNullOrEmpty(dt.Rows[i]["出生日期"].ToString().Trim())) { userdetails.BirthDate = Convert.ToDateTime(dt.Rows[i]["出生日期"].ToString().Trim()); } userdetails.Address = dt.Rows[i]["家庭住址"].ToString().Trim(); userdetails.Job = dt.Rows[i]["职务"].ToString().Trim(); try { userdetails.HireDate = Convert.ToDateTime(dt.Rows[i]["入职日期"].ToString().Trim()); } catch { result = -1; message = "第【" + (i + 2) + "】行入职日期信息有误,请检查后重新提交"; break; } userdetails.ProbationDays = 0; if (!string.IsNullOrEmpty(dt.Rows[i]["转正日期"].ToString().Trim())) { userdetails.QualifiedDate = Convert.ToDateTime(dt.Rows[i]["转正日期"].ToString().Trim()); } try { userdetails.UserType = (UserType)Enum.Parse(typeof(UserType), dt.Rows[i]["员工分类"].ToString()); } catch { result = -1; message = "第【" + (i + 2) + "】行员工分类信息有误,请检查后重新提交"; break; } userdetails.Identity = dt.Rows[i]["身份证"].ToString().Trim(); if (!string.IsNullOrEmpty(userdetails.Identity) && new BaseUtils().GetRegex(userdetails.Identity, RegexType.身份证号码) == false) { result = -1; message = "第【" + (i + 2) + "】行身份证号码不正确,请检查后重新导入"; break; } userdetails.HeaderUrl = ""; userdetails.CreateDate = DateTime.Now; userdetails.CreateUserID = UserID; userdetails.IsDel = false; //db.UserDetails.Add(userdetails); //string accesstoken = new DDUtils().GetAccessToken(); //user.DDID = new DDUtils().AddUser(user, accesstoken); db.SaveChanges(); } } if (result != 0) { ShowMessage(message); new SysLogDAO().AddLog(LogType.系统日志, message, UserID); ts.Dispose(); } else { ShowMessage(); new SysLogDAO().AddLog(LogType.操作日志_导入, "成功导入用户及档案信息", UserID); ts.Complete(); } } } catch (Exception ex) { ShowMessage(ex.Message); new SysLogDAO().AddLog(LogType.系统日志, ex.Message, UserID); } } else { ShowMessage("文件中缺少必要的信息,请检查后重新导入"); return; } } else { ShowMessage("文件读取失败,请检查文件是否已损坏"); return; } } else { ShowMessage("文件导入失败"); return; } }