Пример #1
0
        public bool EditPwd(ref ValidationErrors errors, SysUserEditModel model)
        {
            try
            {
                SysUser entity = m_Rep.GetById(model.Id);
                if (entity == null)
                {
                    errors.Add(Resource.Disable);
                    return(false);
                }

                entity.Password = model.Password;

                if (m_Rep.Edit(entity))
                {
                    return(true);
                }
                else
                {
                    errors.Add(Resource.NoDataChange);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                errors.Add(ex.Message);
                ExceptionHander.WriteException(ex);
                return(false);
            }
        }
Пример #2
0
        public JsonResult EditPwd(string oldPwd, string newPwd)
        {
            SysUser user = accountBLL.Login(GetUserId(), ValueConvert.MD5(oldPwd));

            if (user == null)
            {
                return(Json(JsonHandler.CreateMessage(0, "旧密码不匹配!"), JsonRequestBehavior.AllowGet));
            }
            SysUserEditModel editModel = new SysUserEditModel();

            editModel.Id       = GetUserId();
            editModel.Password = ValueConvert.MD5(newPwd);

            if (userBLL.EditPwd(ref errors, editModel))
            {
                LogHandler.WriteServiceLog(GetUserId(), "Id:" + GetUserId() + ",密码:********", "成功", "初始化密码", "用户设置");
                return(Json(JsonHandler.CreateMessage(1, Resource.EditSucceed), JsonRequestBehavior.AllowGet));
            }
            else
            {
                string ErrorCol = errors.Error;
                LogHandler.WriteServiceLog(GetUserId(), "Id:" + GetUserId() + ",,密码:********" + ErrorCol, "失败", "初始化密码", "用户设置");
                return(Json(JsonHandler.CreateMessage(0, Resource.EditFail + ":" + ErrorCol), JsonRequestBehavior.AllowGet));
            }
        }
Пример #3
0
        public ActionResult Details(string id)
        {
            ViewBag.Perm = GetPermission();

            SysUser entity = new SysUser(); // userBLL.GetById(id);
            //防止读取错误
            string CityName, ProvinceName, VillageName, DepName, PosName;

            CityName     = "";
            ProvinceName = "";
            VillageName  = "";
            DepName      = "";
            PosName      = "";

            SysUserEditModel info = new SysUserEditModel()
            {
                Id           = entity.Id,
                UserName     = entity.UserName,
                TrueName     = entity.TrueName,
                Card         = entity.Card,
                MobileNumber = entity.MobileNumber,
                PhoneNumber  = entity.PhoneNumber,
                QQ           = entity.QQ,
                EmailAddress = entity.EmailAddress,
                OtherContact = entity.OtherContact,
                Province     = entity.Province,
                City         = entity.City,
                Village      = entity.Village,
                Address      = entity.Address,
                State        = entity.State,
                CreateTime   = entity.CreateTime,
                CreatePerson = entity.CreatePerson,
                Sex          = entity.Sex,
                Birthday     = ResultHelper.DateTimeConvertString(entity.Birthday),
                JoinDate     = ResultHelper.DateTimeConvertString(entity.JoinDate),
                Marital      = entity.Marital,
                Political    = entity.Political,
                Nationality  = entity.Nationality,
                Native       = entity.Native,
                School       = entity.School,
                Professional = entity.Professional,
                Degree       = entity.Degree,
                DepId        = entity.DepId,
                PosId        = entity.PosId,
                Expertise    = entity.Expertise,
                JobState     = entity.JobState,
                Photo        = entity.Photo,
                Attach       = entity.Attach,
                RoleName     = "",// userBLL.GetRefSysRole(id),
                CityName     = CityName,
                ProvinceName = ProvinceName,
                VillageName  = VillageName,
                DepName      = DepName,
                PosName      = PosName
            };

            return(View(info));
        }
Пример #4
0
        public ActionResult Info()
        {
            SysUserModel entity = sysUserBLL.GetById(GetUserId());
            //防止读取错误

            SysUserEditModel info = new SysUserEditModel()
            {
                Id           = entity.Id,
                UserName     = entity.UserName,
                TrueName     = entity.TrueName,
                Card         = entity.Card,
                MobileNumber = entity.MobileNumber,
                PhoneNumber  = entity.PhoneNumber,
                QQ           = entity.QQ,
                EmailAddress = entity.EmailAddress,
                OtherContact = entity.OtherContact,
                Province     = entity.Province,
                City         = entity.City,
                Village      = entity.Village,
                Address      = entity.Address,
                State        = entity.State,
                CreateTime   = entity.CreateTime,
                CreatePerson = entity.CreatePerson,
                Sex          = entity.Sex,
                Birthday     = ResultHelper.DateTimeConvertString(entity.Birthday),
                JoinDate     = ResultHelper.DateTimeConvertString(entity.JoinDate),
                Marital      = entity.Marital,
                Political    = entity.Political,
                Nationality  = entity.Nationality,
                Native       = entity.Native,
                School       = entity.School,
                Professional = entity.Professional,
                Degree       = entity.Degree,
                DepId        = entity.DepId,
                PosId        = entity.PosId,
                Expertise    = entity.Expertise,
                JobState     = entity.JobState,
                Photo        = entity.Photo,
                Attach       = entity.Attach,
                RoleName     = userBLL.GetRefSysRole(GetUserId()),
                CityName     = entity.City,
                ProvinceName = entity.Province,
                VillageName  = entity.Village,
                DepName      = entity.DepName,
                PosName      = entity.PosName
            };

            return(View(info));
        }
        public JsonResult ReSet(string Id, string Pwd)
        {
            SysUserEditModel editModel = new SysUserEditModel();

            editModel.Id       = Id;
            editModel.Password = ValueConvert.MD5(Pwd);
            if (m_BLL.EditPwd(ref errors, editModel))
            {
                LogHandler.WriteServiceLog(GetUserId(), "Id:" + Id + ",密码:********", "成功", "初始化密码", "用户设置");
                return(Json(JsonHandler.CreateMessage(1, Resource.EditSucceed), JsonRequestBehavior.AllowGet));
            }
            else
            {
                string ErrorCol = errors.Error;
                LogHandler.WriteServiceLog(GetUserId(), "Id:" + Id + ",,密码:********" + ErrorCol, "失败", "初始化密码", "用户设置");
                return(Json(JsonHandler.CreateMessage(0, Resource.EditFail + ":" + ErrorCol), JsonRequestBehavior.AllowGet));
            }
        }
 public JsonResult Edit(SysUserEditModel info)
 {
     if (info != null && ModelState.IsValid)
     {
         if (m_BLL.Edit(ref errors, info))
         {
             LogHandler.WriteServiceLog(GetUserId(), "Id:" + info.Id + ",Name:" + info.UserName, "成功", "修改", "用户设置");
             return(Json(JsonHandler.CreateMessage(1, Resource.EditSucceed), JsonRequestBehavior.AllowGet));
         }
         else
         {
             string ErrorCol = errors.Error;
             LogHandler.WriteServiceLog(GetUserId(), "Id:" + info.Id + ",Name:" + info.UserName + "," + ErrorCol, "失败", "修改", "用户设置");
             return(Json(JsonHandler.CreateMessage(0, Resource.EditFail + ":" + ErrorCol)));
         }
     }
     else
     {
         return(Json(JsonHandler.CreateMessage(0, Resource.EditFail), JsonRequestBehavior.AllowGet));
     }
 }
Пример #7
0
        public bool Edit(ref ValidationErrors errors, SysUserEditModel model)
        {
            try
            {
                SysUser entity = m_Rep.GetById(model.Id);
                if (entity == null)
                {
                    errors.Add(Resource.Disable);
                    return(false);
                }
                entity.TrueName         = model.TrueName;
                entity.Card             = model.Card;
                entity.MobileNumber     = model.MobileNumber;
                entity.PhoneNumber      = model.PhoneNumber;
                entity.QQ               = model.QQ;
                entity.EmailAddress     = model.EmailAddress;
                entity.OtherContact     = model.OtherContact;
                entity.Province         = model.Province;
                entity.City             = model.City;
                entity.Village          = model.Village;
                entity.Address          = model.Address;
                entity.State            = model.State;
                entity.CreateTime       = model.CreateTime;
                entity.CreatePerson     = model.CreatePerson;
                entity.Sex              = model.Sex;
                entity.Birthday         = ResultHelper.StringConvertDatetime(model.Birthday);
                entity.JoinDate         = ResultHelper.StringConvertDatetime(model.JoinDate);
                entity.Marital          = model.Marital;
                entity.Political        = model.Political;
                entity.Nationality      = model.Nationality;
                entity.Native           = model.Native;
                entity.School           = model.School;
                entity.Professional     = model.Professional;
                entity.Degree           = model.Degree;
                entity.DepId            = model.DepId;
                entity.PosId            = model.PosId;
                entity.Expertise        = model.Expertise;
                entity.JobState         = model.JobState;
                entity.Photo            = model.Photo;
                entity.Attach           = model.Attach;
                entity.Lead             = model.Lead;
                entity.LeadName         = model.LeadName;
                entity.IsSelLead        = model.IsSelLead;
                entity.IsReportCalendar = model.IsReportCalendar;
                entity.IsSecretary      = model.IsSecretary;

                if (m_Rep.Edit(entity))
                {
                    return(true);
                }
                else
                {
                    errors.Add(Resource.NoDataChange);
                    return(false);
                }
            }
            catch (Exception ex)
            {
                errors.Add(ex.Message);
                ExceptionHander.WriteException(ex);
                return(false);
            }
        }
Пример #8
0
        public async Task <ActionResult> Edit(string id, SysUserEditModel collection)
        {
            if (!ModelState.IsValid)
            {
                Edit(id);
                ViewBag.SysEnterprisesId =
                    new MultiSelectList(
                        _iSysEnterpriseService.GetAll(
                            a => a.SysEnterpriseSysUsers.Any(b => b.SysUserId == _iUserInfo.UserId)), "Id",
                        "EnterpriseName", collection.SysEnterprisesId);
                ViewBag.SysRolesId = new MultiSelectList(_sysRoleService.GetAll(), "Id", "RoleName",
                                                         collection.SysRolesId);

                ViewBag.DepartmentId = _iDepartmentService.GetAll().ToSystemIdSelectList(collection.DepartmentId);
                return(View(collection));
            }

            var config = new MapperConfiguration(a => a.CreateMap <SysUserEditModel, SysUser>());

            //config.AssertConfigurationIsValid();

            var mapper = config.CreateMapper();

            if (!string.IsNullOrEmpty(id))
            {
                //更新用户信息
                var item = _sysUserService.GetById(id);

                item.UpdatedDateTime = DateTimeOffset.Now;

                mapper.Map(collection, item);

                //处理角色
                //item.Roles.Clear();


                foreach (var role in _sysRoleService.GetAll().ToList())
                {
                    await UserManager.RemoveFromRoleAsync(item.Id, role.Name);
                }

                foreach (var roleId in collection.SysRolesId)
                {
                    item.Roles.Add(new IdentityUserRole {
                        RoleId = roleId, UserId = item.Id
                    });
                }

                _iSysDepartmentSysUserService.Delete(
                    a => a.SysUserId == item.Id && a.SysDepartment.EnterpriseId == _iUserInfo.EnterpriseId);

                _iSysDepartmentSysUserService.Save(null,
                                                   new SysDepartmentSysUser {
                    SysDepartmentId = collection.DepartmentId, SysUserId = item.Id
                });

                //处理关联企业
                //限制编辑自己的关联企业
                if (item.Id != _iUserInfo.UserId)
                {
                    foreach (
                        var ent in _iSysEnterpriseSysUserService.GetAll(a => a.SysUserId == _iUserInfo.UserId).ToList())
                    {
                        _iSysEnterpriseSysUserService.Delete(
                            a => a.SysEnterpriseId == ent.SysEnterpriseId && a.SysUserId == item.Id);
                    }

                    foreach (var entId in collection.SysEnterprisesId)
                    {
                        item.SysEnterpriseSysUsers.Add(new SysEnterpriseSysUser
                        {
                            SysEnterpriseId = entId,
                            SysUserId       = item.Id
                        });
                    }
                }

                await _unitOfWork.CommitAsync();

                if (!string.IsNullOrEmpty(collection.Password))
                {
                    UserManager.RemovePassword(id);
                    var re = UserManager.AddPassword(id, collection.Password);

                    if (!re.Succeeded)
                    {
                        foreach (var error in re.Errors)
                        {
                            ModelState.AddModelError("", error);
                        }
                    }
                }
            }
            else
            {
                collection.Id = Guid.NewGuid().ToString();
                var item = mapper.Map <SysUserEditModel, SysUser>(collection);

                item.SysDepartmentSysUsers.Add(new SysDepartmentSysUser
                {
                    SysUserId       = item.Id,
                    SysDepartmentId = collection.DepartmentId
                });

                foreach (var roleId in collection.SysRolesId)
                {
                    item.Roles.Add(new IdentityUserRole {
                        RoleId = roleId, UserId = item.Id
                    });
                }

                foreach (var entId in collection.SysEnterprisesId)
                {
                    item.SysEnterpriseSysUsers.Add(new SysEnterpriseSysUser
                    {
                        SysEnterpriseId = entId,
                        SysUserId       = item.Id
                    });
                }

                //创建用户
                var re = await UserManager.CreateAsync(item, collection.Password);

                if (!re.Succeeded)
                {
                    foreach (var error in re.Errors)
                    {
                        ModelState.AddModelError("", error);
                    }
                }
            }

            if (!ModelState.IsValid)
            {
                Edit(id);
                ViewBag.SysRolesId = new MultiSelectList(_sysRoleService.GetAll(), "Id", "Name", collection.SysRolesId);

                ViewBag.DepartmentId = _iDepartmentService.GetAll().ToSystemIdSelectList(collection.DepartmentId);
                return(View(collection));
            }

            return(new EditSuccessResult(id));
        }
Пример #9
0
        public async Task <ActionResult> EditAsync(string id, SysUserEditModel collection)
        {
            if (!ModelState.IsValid)
            {
                await EditAsync(id);

                ViewBag.SysRolesId = new MultiSelectList(_sysRoleService.Roles.Select(a => new { a.Id, a.Name }), "Id", "Name", collection.SysRolesId);

                ViewBag.DepartmentId = new MultiSelectList(_iDepartmentService.GetAll().Select(a => new { id = a.Id, Name = a.SystemId + a.Name }), "Id", "Name", collection.DepartmentId);

                return(View(collection));
            }

            if (string.IsNullOrEmpty(id))
            {
                //新建用户

                var config = new MapperConfiguration(a => a.CreateMap <SysUserEditModel, IdentityUser>());

                var user = config.CreateMapper().Map <IdentityUser>(collection);

                var identityResult = await _userManager.CreateAsync(user, collection.Password);

                if (!identityResult.Succeeded)
                {
                    foreach (var error in identityResult.Errors)
                    {
                        throw new Exception(error.Description);
                    }
                }

                id = user.Id;
            }
            else
            {
                //更新用户
                var user = await _userManager.FindByIdAsync(id);

                var config = new MapperConfiguration(a => a.CreateMap <SysUserEditModel, IdentityUser>());

                config.CreateMapper().Map(collection, user);

                var identityResult = await _userManager.UpdateAsync(user);

                if (!identityResult.Succeeded)
                {
                    foreach (var error in identityResult.Errors)
                    {
                        throw new Exception(error.Description);
                    }
                }

                if (!string.IsNullOrEmpty(collection.Password))
                {
                    var token = await _userManager.GeneratePasswordResetTokenAsync(user);

                    identityResult = await _userManager.ResetPasswordAsync(user, token, collection.Password);

                    if (!identityResult.Succeeded)
                    {
                        foreach (var error in identityResult.Errors)
                        {
                            throw new Exception(error.Description);
                        }
                    }
                }
            }

            //部门
            await _iSysDepartmentSysUserService.Delete(a => a.SysUserId == id);

            foreach (var DepartmentId in collection.DepartmentId)
            {
                await _iSysDepartmentSysUserService.SaveAsync(null, new SysDepartmentSysUser { SysDepartmentId = DepartmentId, SysUserId = id });
            }

            //删除角色
            await _iSysUserRoleService.Delete(a => a.UserId.Equals(id) && !collection.SysRolesId.Any(b => b == a.RoleId));

            //添加角色
            foreach (var s in collection.SysRolesId.Where(a => !_iSysUserRoleService.GetAll(b => b.UserId.Equals(id)).Any(c => c.RoleId == a)))
            {
                await _iSysUserRoleService.AddAsync(new IdentityUserRole <string>() { RoleId = s, UserId = id });
            }

            await _unitOfWork.CommitAsync();

            return(new EditSuccessResult(id));
        }