public JsonResult ChangePwd(string account, string oldPwd, string newPwd) { if (account.IsNullOrEmpty() || oldPwd.IsNullOrEmpty() || newPwd.IsNullOrEmpty()) { return(Json(ErrorModel.InputError)); } if (oldPwd == newPwd) { return(Json(ErrorModel.OperateSuccess)); } var userBll = new SystemUserBll(); var user = userBll.QuerySingle($"[Account]='{account}' AND IsDelete=0"); if (user == null) { return(Json(ErrorModel.InputError)); } // 确保只有在旧密码输入正确的情况下才允许修改密码 if (oldPwd.GetMd5() != user.Password) { return(Json(ErrorModel.WrongPassword)); } user.Password = newPwd.GetMd5(); var success = userBll.ExecuteTransation( () => userBll.Update(user), () => new OperateLogBll().Add(nameof(SystemUser), user.Id, DataUpdateType.Update, 0, $"修改了账户[{user.Account}]的密码") ); return(Json(success ? ErrorModel.OperateSuccess : ErrorModel.OperateFailed)); }
public JsonResult AddOrUpdate(SystemUser user, int[] menus) { if (user != null && menus != null) { var bll = new SystemUserBll(); var loginUserId = LoginStatus.GetLoginId(); if (user.Id == 0) { user.CreatorId = loginUserId; // 验证账户是否重复 if (bll.Exists($"[Account]='{user.Account}' AND IsDelete=0")) { return(Json(ErrorModel.ExistSameItem)); } } user.Password = user.Password.GetMd5(); var log = user.Id == 0 ? $"添加了新账户:{user.Name}-{user.Account}" : $"修改了账户:{user.Name}-{user.Account}"; var operateType = user.Id == 0 ? DataUpdateType.Insert : DataUpdateType.Update; bool DoAddOrUpdate() { if (user.Id == 0) { return(bll.Insert(user).Id > 0); } return(bll.Update(user)); } var success = bll.ExecuteTransation( DoAddOrUpdate, () => AddPermisions(user, menus), () => new OperateLogBll().Add(nameof(SystemUser), user.Id, operateType, loginUserId, log) ); return(Json(success ? ErrorModel.OperateSuccess : ErrorModel.OperateFailed)); } else { return(Json(ErrorModel.InputError)); } }
public JsonResult Delete(int id) { var bll = new SystemUserBll(); var user = bll.QuerySingle(id); if (user == null) { return(Json(ErrorModel.InputError)); } var loginId = LoginStatus.GetLoginId(); var log = $"删除了账户:{user.Name}-{user.Account}"; var success = bll.ExecuteTransation( () => bll.DeleteSoftly(id), () => new OperateLogBll().Add(nameof(SystemUser), id, DataUpdateType.Delete, loginId, log) ); return(Json(success ? ErrorModel.OperateSuccess : ErrorModel.OperateFailed)); }
/// <summary> /// 系统初次部署时,添加管理员账号 /// </summary> private void btnAdmin_Click(object sender, EventArgs e) { var admin = new SystemUser { Account = "admin", CreateTime = DateTime.Now, CreatorId = 0, IsSuper = true, Name = "Administrator", Password = "******".GetMd5() }; var bll = new SystemUserBll(); if (bll.Exists("IsSuper=1")) { MessageBox.Show(@"管理员账号已存在(:="); return; } var success = bll.Insert(admin).Id > 0; if (success) { MessageBox.Show(@"管理员账号添加成功"); } }
public JsonResult Login(LoginModel loginModel) { if (ModelState.IsValid) { var systemUserBll = new SystemUserBll(); int userId; var loginResult = systemUserBll.Login(loginModel.Account, loginModel.Password, out userId); if (loginResult == LoginResult.NotExists || loginResult == LoginResult.PasswordError) { return(Json(ErrorModel.LoginFailed)); } // 记录登录状态 if (loginModel.Remember) { LoginStatus.WriteCookie(userId); } else { LoginStatus.RemoveCookie(); LoginStatus.WriteSession(); } // 记录管理员id CookieHelper.Set(CookieNames.LoginUserId, userId.ToString()); //==================================== //2017-08-04 为使用vue做的后台生成token var token = $"{userId}:{DateTime.Now.Timestamp()}"; var user = systemUserBll.QuerySingle(userId); user.Password = ""; return(Json(ErrorModel.LoginSuccess(new { token, user }))); } return(Json(ErrorModel.InputError)); }