/// <summary> /// 批量新增 /// </summary> /// <param name="entitylist"></param> /// <returns></returns> public virtual OperateStatus InsertBatchs(IList <TEntity> entitylist) { //操作状态信息 var status = new OperateStatus(); try { if (entitylist.Count < 1) { status.Message = "无添加的数据"; return(status); } foreach (var entity in entitylist) { //指定状态 ActiveContext.Entry(entity).State = EntityState.Added; } //提交数据库 int k = ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (Exception ex) { //错误信息 status.Message = ex.Message; status.Data = ex; } return(status); }
/// <summary> /// 指定字段更新 /// </summary> /// <param name="entity">实体</param> /// <param name="fileds">指定字段集合</param> public virtual OperateStatus UpdateByEntityFields(TEntity entity, List <string> fileds) { var status = new OperateStatus(); if (entity != null && fileds != null) { try { ////附加数据 //DbSet.Attach(entity); // //绑定 // var SetEntry = ((IObjectContextAdapter)ActiveContext).ObjectContext.ObjectStateManager.GetObjectStateEntry(entity); //foreach (var t in fileds) //{ // //指定具体更新字段 // SetEntry.SetModifiedProperty(t); //} //context.Entry(模型).Property(“隐藏属性“).CurrentValue = DateTime.Now; ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (Exception ex) { //错误信息 status.Message = ex.Message; status.Data = ex; } } return(status); }
/// <summary> /// 修改对象 /// </summary> /// <param name="entity"></param> public virtual OperateStatus Update(TEntity entity) { //操作状态信息 var status = new OperateStatus(); try { var entry = ActiveContext.Entry(entity); TEntity attachedEntity = DbSet.Find(entity.Id); if (attachedEntity != null) { var attachedEntry = ActiveContext.Entry(attachedEntity); attachedEntry.CurrentValues.SetValues(entity); } else { entry.State = EntityState.Modified; } ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (Exception ex) { //错误信息 status.Message = ex.Message; status.Data = ex; } return(status); }
/// <summary> /// 保存权限信息 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <OperateStatus> SavePermission(SystemPermissionSaveInput input) { var operateStatus = new OperateStatus(); try { IList <SystemPermission> systemPermissions = input.Permissiones.Select(per => new SystemPermission { PrivilegeAccess = (byte)input.PrivilegeAccess, PrivilegeAccessValue = per, PrivilegeMasterValue = input.PrivilegeMasterValue, PrivilegeMaster = (byte)input.PrivilegeMaster, PrivilegeMenuId = input.PrivilegeMenuId }).ToList(); //删除该角色的权限信息 await _permissionRepository.DeletePermissionByPrivilegeMasterValue(input.PrivilegeAccess, input.PrivilegeMasterValue, input.PrivilegeMenuId); if (input.PrivilegeMaster == EnumPrivilegeMaster.人员) { //删除对应人员数据 await _permissionUsernRepository.DeletePermissionUser(input.PrivilegeMaster, input.PrivilegeMasterValue); //判断是否具有权限 if (!systemPermissions.Any()) { operateStatus.ResultSign = ResultSign.Successful; operateStatus.Message = Chs.Successful; return(operateStatus); } //插入权限人员数据 var permissionUser = new SystemPermissionUser { PrivilegeMaster = (byte)input.PrivilegeMaster, PrivilegeMasterUserId = input.PrivilegeMasterValue, PrivilegeMasterValue = input.PrivilegeMasterValue }; await _permissionUsernRepository.InsertAsync(permissionUser); } //是否具有权限数据 if (!systemPermissions.Any()) { operateStatus.ResultSign = ResultSign.Successful; operateStatus.Message = Chs.Successful; return(operateStatus); } //插入数据库 await _permissionRepository.BulkInsertAsync(systemPermissions); operateStatus.ResultSign = ResultSign.Successful; operateStatus.Message = Chs.Successful; return(operateStatus); } catch (Exception ex) { operateStatus.Message = ex.Message; return(operateStatus); } }
public JsonResult CheckLogin(BaseUser loginuser) { OperateStatus op = new OperateStatus { IsSuccessful = false, Message = "初始异常!" }; string checkVerify = DEncrypt.Get16_Md5Lower(loginuser.Code, null); if (HttpContext.Session.GetString("Login_VerifyCode") == null || checkVerify != HttpContext.Session.GetString("Login_VerifyCode").ToString()) { op.IsSuccessful = false; op.Message = "验证码不正确,请重新输入!"; } else { op = ouDal.CheckLogin(loginuser); if (op.IsSuccessful) { op.IsSuccessful = true; op.Message = "登录成功!欢迎您!"; //记录Cookie UserHelper.WriteUserTokenCookie(loginuser.LoginName); } else { op.IsSuccessful = false; op.Message = op.Message ?? "用户名或密码错误!"; } } return(Json(op)); }
/// <summary> /// 批量新增 /// </summary> /// <param name="entitylist"></param> /// <returns></returns> public virtual OperateStatus InsertBatchs(IList <T> entitylist) { //操作状态信息 var status = new OperateStatus(); try { if (entitylist.Count < 1) { status.Message = "无添加的数据"; return(status); } foreach (var entity in entitylist) { //指定状态 ActiveContext.Entry(entity).State = EntityState.Added; } //提交数据库 int k = ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (DbEntityValidationException ex) { //错误信息 status.Message = ex.Message; //获取详细验证错误 status.MultipleMessage = GetDetailErrorString(ex); } return(status); }
public JsonResult ScheduleJob(ScheduleJobInput input) { var status = new OperateStatus(); try { if (!input.ReplaceExists) { //if (RemoteShedulerManager.CheckExists(new TriggerKey(input.TriggerName, input.TriggerGroup))) //{ // status.Message = "指定的触发器已经存在,请重新指定名称"; // return Json(status); //} if (RemoteShedulerManager.CheckExists(new JobKey(input.JobName, input.JobGroup))) { status.Message = "指定的任务已经存在,请重新指定名称"; return(Json(status)); } } input.IsSave = true; RemoteShedulerManager.ScheduleJob(input); status.ResultSign = ResultSign.Successful; status.Message = "保存调度作业成功"; } catch (Exception ex) { status.Message = ex.Message; } return(Json(status)); }
/// <summary> /// 指定字段更新 /// </summary> /// <param name="entity">实体</param> /// <param name="fileds">指定字段集合</param> public virtual OperateStatus UpdateByEntityFields(T entity, List <string> fileds) { var status = new OperateStatus(); if (entity != null && fileds != null) { try { //附加数据 DbSet.Attach(entity); //绑定 var SetEntry = ((IObjectContextAdapter)ActiveContext).ObjectContext.ObjectStateManager.GetObjectStateEntry(entity); foreach (var t in fileds) { //指定具体更新字段 SetEntry.SetModifiedProperty(t); } ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (DbEntityValidationException ex) { //错误信息 status.Message = ex.Message; status.Data = ex; } } return(status); }
public virtual OperateStatus Delete(Guid Id) { //状态信息 var status = new OperateStatus(); try { //读取批量删除数据集合 var entity = DbQuery.FirstOrDefault(p => p.Id == Id); if (entity == null) { status.Message = "删除的数据不存在"; return(status); } ActiveContext.Entry(entity).State = EntityState.Deleted; //提交数据库 ActiveContext.SaveChanges(); //执行成功 status.IsSuccessful = true; status.Message = "成功"; } catch (Exception ex) { //错误信息 status.Message = ex.Message; } return(status); }
/// <summary> /// 批量生成代码 /// </summary> /// <returns></returns> public async Task <OperateStatus> GeneratingParentIds() { OperateStatus operateStatus = new OperateStatus(); try { //获取所有字典树 var dics = (await GetAllEnumerableAsync()).ToList(); var topDics = dics.Where(w => w.ParentId == Guid.Empty); foreach (var dic in topDics) { dic.ParentIds = dic.DictionaryId.ToString(); await UpdateAsync(dic); await GeneratingParentIds(dic, dics.ToList(), ""); } } catch (Exception ex) { operateStatus.Message = ex.Message; return(operateStatus); } operateStatus.Message = Chs.Successful; operateStatus.ResultSign = ResultSign.Successful; return(operateStatus); }
/// <summary> /// 修改对象 /// </summary> /// <param name="entity"></param> public virtual OperateStatus Update(T entity) { //操作状态信息 var status = new OperateStatus(); try { var entry = ActiveContext.Entry(entity); T attachedEntity = DbSet.Find(entity.Id); if (attachedEntity != null) { var attachedEntry = ActiveContext.Entry(attachedEntity); attachedEntry.CurrentValues.SetValues(entity); } else { entry.State = EntityState.Modified; } ActiveContext.SaveChanges(); //成功 status.IsSuccessful = true; } catch (DbEntityValidationException ex) { //错误信息 status.Message = ex.Message; //获取详细验证错误 status.MultipleMessage = GetDetailErrorString(ex); } return(status); }
/// <summary> /// 检查Model参数 /// </summary> /// <returns></returns> protected OperateStatus CheckModelState() { OperateStatus operateStatus = new OperateStatus(); if (!ModelState.IsValid) { var msg = string.Empty; foreach (var value in ModelState.Values) { if (value.Errors.Count > 0) { foreach (var error in value.Errors) { msg = msg + error.ErrorMessage + ","; } } } operateStatus.Message = msg.TrimEnd(','); } else { operateStatus.ResultSign = ResultSign.Successful; } return(operateStatus); }
/// <summary> /// 检查值是否相同 /// </summary> /// <param name="operateStatus"></param> /// <returns></returns> protected JsonResult JsonForCheckSameValueValidator(OperateStatus operateStatus) { return(Json(new { valid = operateStatus.ResultSign == ResultSign.Successful })); }
public JsonResult CreateFile(SystemCodeGenerationCreateFileViewModel model) { OperateStatus operateStatus = new OperateStatus(); try { SystemCodeGenerationBaseInput baseInput = model.Base.ToObject <SystemCodeGenerationBaseInput>(); //实体 FileUtil.WriteFile(baseInput.EntityPath + "\\" + baseInput.Entity + ".cs", model.Entities); //DataAccess接口 FileUtil.WriteFile(baseInput.DataAccessInterfacePath + "\\" + baseInput.DataAccessInterface + ".cs", model.DataAccessInterface); //DataAccess实现 FileUtil.WriteFile(baseInput.DataAccessPath + "\\" + baseInput.DataAccess + ".cs", model.DataAccess); //Business接口 FileUtil.WriteFile(baseInput.BusinessInterfacePath + "\\" + baseInput.BusinessInterface + ".cs", model.BusinessInterface); //Business实现 FileUtil.WriteFile(baseInput.BusinessPath + "\\" + baseInput.Business + ".cs", model.Business); //控制器 FileUtil.WriteFile(baseInput.ControllerPath + "\\" + baseInput.Controller + ".cs", model.Controller); //控制器 FileUtil.WriteFile(baseInput.ControllerPath.Replace("Controllers", "Views") + "\\" + baseInput.Controller.Replace("Controller", "") + "\\" + baseInput.List + ".cshtml", model.List); //表单 FileUtil.WriteFile(baseInput.ControllerPath.Replace("Controllers", "Views") + "\\" + baseInput.Controller.Replace("Controller", "") + "\\" + baseInput.Edit + ".cshtml", model.Edit); } catch (Exception ex) { operateStatus.Message = ex.Message; return(Json(operateStatus)); } operateStatus.Message = "生成成功"; operateStatus.ResultSign = ResultSign.Successful; return(Json(operateStatus)); }
/// <summary> /// 删除菜单 /// </summary> /// <param name="input"></param> public async Task <OperateStatus> DeleteMenu(IdInput input) { var OperateStatus = new OperateStatus(); var Menu = await GetById(input.Id); //判断是否存在 if (Menu == default(SystemMenu)) { OperateStatus.ResultSign = ResultSign.Error; OperateStatus.Message = Chs.HaveDelete; goto Ending; } //是否可以删除 if (!Menu.CanbeDelete) { OperateStatus.ResultSign = ResultSign.Error; OperateStatus.Message = Chs.CanotDelete; goto Ending; } //是否存在下级菜单 if ((await GetMenuByPid(input)).Any()) { OperateStatus.ResultSign = ResultSign.Error; OperateStatus.Message = string.Format(Chs.Error, ResourceSystem.具有下级项); goto Ending; } OperateStatus = await DeleteById(input.Id); Ending: return(OperateStatus); }
public async Task <JsonResult> SaveWorkflowFromPublic(WorkflowForm form) { string fileName = form.FormId + ".cshtml"; //生成对应文件 StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append( @"@using EIP.Common.Core.Auth; @using EIP.Common.Core.Utils; @{ PrincipalUser principalUser = FormAuthenticationExtension.Current(HttpContext.Current.Request); }"); stringBuilder.Append(form.Html); string formUrl = "~/Areas/Workflow/Views/Form/Designer/" + fileName; string file = Server.MapPath(formUrl); //写入请求当前人员信息脚本 FileUtil.WriteFile(file, stringBuilder.ToString()); form.UpdateTime = DateTime.Now; form.UpdateUserId = CurrentUser.UserId; form.UpdateUserName = CurrentUser.Name; form.Url = formUrl; OperateStatus operateStatus = await _workflowFormLogic.SaveWorkflowFromUrl(form); if (operateStatus.ResultSign == ResultSign.Successful) { operateStatus.Message = ResourceWorkflow.表单发布成功; } return(Json(operateStatus)); }
/// <summary> /// 保存系统配置项信息 /// </summary> /// <param name="doubleWays">系统配置项信息</param> /// <returns></returns> public async Task <OperateStatus> SaveConfig(IEnumerable <SystemConfigDoubleWay> doubleWays) { OperateStatus operateStatus = new OperateStatus(); //更新 try { foreach (var config in doubleWays) { config.V = DEncryptUtil.HttpUtilityUrlEncode(config.V); //更新对应值 var c = await GetByIdAsync(config.C); c.Value = config.V; if (await _configRepository.UpdateAsync(c) > 0) { GlobalParams.Set(c.Code, config.V); } } operateStatus.Message = Chs.Successful; operateStatus.ResultSign = ResultSign.Successful; } catch (Exception e) { LogWriter.WriteLog(FolderName.Exception, e); } return(operateStatus); }
public ActionResult Main(string accountID, string signature, string msg_signature, string timestamp, string nonce, string echostr) { FileLogHelper.WriteInfo(string.Format("accountID:{0}\r\nsignature:{1}\r\ntimestamp:{2}\r\nnonce:{3}\r\nechostr:{4}\r\nmsg_signature:{5}", accountID, signature, timestamp, nonce, echostr, msg_signature)); OperateStatus status; Guid aID; if (!Guid.TryParse(accountID, out aID)) { status = new OperateStatus { ResultSign = ResultSign.Failed, Message = "账号不存在" }; } else { AccountServiceModel model = new AccountServiceModel(); var account = model.GetById(aID); if (account == null) { return new ServiceResult(new OperateStatus { ResultSign = ResultSign.Failed, Message = "账户不存在" }); } if (account.IsCorp) { var func = FunctionFactory.GetFunctionInstance<Extentions.IFunction.Corp.Receive.IReceive>(); status = func.Main(account, msg_signature, timestamp, nonce, echostr); } else { var func = FunctionFactory.GetFunctionInstance<Extentions.IFunction.Normal.Receive.IReceive>(); status = func.Main(account, signature, timestamp, nonce, echostr); } } FileLogHelper.WriteInfo(JsonConvert.SerializeObject(status)); return new ServiceResult(status); }
public JsonResult CheckLogin(BaseUser loginuser) { JsonResult json = new JsonResult(); OperateStatus op = new OperateStatus(); string checkVerify = DEncrypt.Get16_Md5Lower(loginuser.Code, null); if (Session["Login_VerifyCode"] == null || checkVerify != Session["Login_VerifyCode"].ToString()) { op.IsSuccessful = false; op.Message = "验证码不正确,请重新输入!"; } else { op = ouDal.CheckLogin(loginuser); if (op.IsSuccessful) { //记录Cookie //UserHelper.WrriteUserTokenCookie(loginuser.LoginName); op.IsSuccessful = true; op.Message = "登录成功!欢迎您!"; //记录Cookie UserHelper.WriteUserTokenCookie(loginuser.LoginName); } else { op.IsSuccessful = false; op.Message = op.Message ?? "用户名或密码错误!"; } } json.Data = op; return(json); }
/// <summary> /// 删除菜单及下级数据 /// </summary> /// <param name="input">父级id</param> /// <returns></returns> public async Task <OperateStatus> DeleteMenu(IdInput input) { var operateStatus = new OperateStatus(); //判断该项能否进行删除 var menu = await GetByIdAsync(input.Id); if (menu != null && !menu.CanbeDelete) { operateStatus.ResultSign = ResultSign.Error; operateStatus.Message = Chs.CanotDelete; return(operateStatus); } //查看是否具有下级 if ((await GetMeunuByPId(input)).Any()) { operateStatus.ResultSign = ResultSign.Error; operateStatus.Message = ResourceSystem.具有下级项; return(operateStatus); } //查看该菜单是否已被特性占用 var permissions = await _permissionLogic.GetSystemPermissionsByPrivilegeAccessAndValue(EnumPrivilegeAccess.菜单, input.Id); if (permissions.Any()) { //获取被占用类型及值 operateStatus.ResultSign = ResultSign.Error; operateStatus.Message = ResourceSystem.已被赋予权限; return(operateStatus); } return(await DeleteAsync(new SystemMenu { MenuId = input.Id })); }
private void Border_MouseLeftButtonUp(object sender, MouseButtonEventArgs e) { var border = sender as UCNode; if (border == null) { return; } if (border != SelectedNodeBorder || border.IsSelected != true) { //变更选择的节点 border.IsSelected = true; if (SelectedNodeBorder != null) { SelectedNodeBorder.IsSelected = false; } SelectedNodeBorder = border; } if (_operateStatus == OperateStatus.None || _operateStatus == OperateStatus.MoveNode || _operateStatus == OperateStatus.SelectedLine) { _operateStatus = OperateStatus.SelectedNode; } }
/// <summary> /// 保存人员信息 /// </summary> /// <param name="user">人员信息</param> /// <returns></returns> public async Task <OperateStatus> SaveUser(SystemUserSaveInput user) { OperateStatus operateStatus = new OperateStatus(); if (string.IsNullOrWhiteSpace(user.Id.ToString())) { user.CreateTime = DateTime.Now; user.Password = _3DESEncrypt.Encrypt("123456"); var resultUser = await _systemUserRepository.InsertAsync( new SystemUser(CombUtil.NewComb(), user.Code, user.Name, user.Password, user.Mobile, user.Email, user.FirstVisitTime, user.LastVisitTime, user.Remark, user.IsAdmin, user.CreateTime, user.IsFreeze, user.ImgUrl)); if (resultUser != null) { //添加用户到组织机构 operateStatus = await _permissionUserLogic.SavePermissionUser(EnumPrivilegeMaster.角色, user.RoleId, new List <string> { user.Id.ToString() }); if (operateStatus.ResultSign == ResultSign.Successful) { return(operateStatus); } } else { return(operateStatus); } } else { //删除对应组织机构 operateStatus = await _permissionUserLogic.DeletePrivilegeMasterUser(user.Id.ToString(), EnumPrivilegeMaster.角色); if (operateStatus.ResultSign == ResultSign.Successful) { //添加用户到组织机构 operateStatus = await _permissionUserLogic.SavePermissionUser(EnumPrivilegeMaster.角色, user.RoleId, new List <string> { user.Id.ToString() }); if (operateStatus.ResultSign == ResultSign.Successful) { var userInfo = await _systemUserRepository.GetAsync(user.Id); user.Password = userInfo.Password; var result = await _systemUserRepository.UpdateAsync(user); if (result != null) { operateStatus.Message = "Success"; operateStatus.ResultSign = ResultSign.Successful; } } } } return(operateStatus); }
/// <summary> /// 批量生成代码 /// </summary> /// <returns></returns> public async Task <OperateStatus> GeneratingCode() { OperateStatus operateStatus = new OperateStatus(); try { //获取所有字典树 var dics = (await GetAllEnumerableAsync()).ToList(); var topDics = dics.Where(w => w.ParentId == Guid.Empty); foreach (var dic in topDics) { dic.Code = PinYinUtil.GetFirst(dic.Name); await UpdateAsync(dic); await GeneratingCodeRecursion(dic, dics.ToList(), ""); } } catch (Exception ex) { operateStatus.Message = string.Format(Chs.Error, ex.Message); return(operateStatus); } operateStatus.Message = Chs.Successful; operateStatus.ResultSign = ResultSign.Successful; return(operateStatus); }
/// <summary> /// 保存用户权限类型 /// </summary> /// <param name="privilegeMaster">类型</param> /// <param name="privilegeMasterUserId">业务表Id:如组织机构Id、组Id、岗位Id、人员Id等</param> /// <param name="privilegeMasterValue">权限类型:角色Id</param> /// <returns></returns> public async Task <OperateStatus> SavePermissionMasterValueBeforeDelete(EnumPrivilegeMaster privilegeMaster, Guid privilegeMasterUserId, IList <Guid> privilegeMasterValue) { var operateStatus = new OperateStatus(); //删除 await _permissionUsernRepository.DeletePermissionMaster(privilegeMaster, privilegeMasterUserId); IList <SystemPermissionUser> systemPermissionUsers = privilegeMasterValue.Select(roleId => new SystemPermissionUser { PrivilegeMaster = (byte)privilegeMaster, PrivilegeMasterUserId = privilegeMasterUserId, PrivilegeMasterValue = roleId }).ToList(); if (systemPermissionUsers.Any()) { //批量保存 operateStatus = await InsertMultipleAsync(systemPermissionUsers); } else { operateStatus.ResultSign = ResultSign.Successful; operateStatus.Message = Chs.Successful; } return(operateStatus); }
/// <summary> /// 更新实体对象 /// </summary> /// <param name="entity">实体对象</param> /// <param name="status">操作状态</param> public virtual OperateStatus Update(T entity) { if (entity == null) { throw new ArgumentNullException("entity"); } if (entity.Id == Guid.Empty) { throw new ArgumentException("实体的Id为空"); } //操作状态信息 var status = new OperateStatus(); var original = GetById(entity.Id); if (original == null) { status = new OperateStatus { Message = "更新的数据不存在" }; } else { //执行更新 status = repository.Update(entity); if (status.IsSuccessful) { //指定成功默认返回结果值 status.Message = "成功"; status.Data = entity; } } return(status); }
/// <summary> /// 删除实体对象 /// </summary> /// <param name="id">实体对象Id</param> /// <param name="status">操作状态</param> public virtual OperateStatus Delete(Guid id) { //操作状态信息 var status = new OperateStatus { IsSuccessful = false }; if (id == Guid.Empty) { status.Message = "该数据不允许删除或不存在!"; return(status); } T entity = GetById(id); if (entity == null) { status.Message = "删除的数据不存在"; } else { status = repository.Delete(entity); if (status.IsSuccessful) { //指定成功默认返回结果值 status.Message = "成功"; } } return(status); }
/// <summary> /// 根据主键删除 /// </summary> /// <param name="id">主键</param> /// <returns></returns> public virtual OperateStatus Delete(object id, bool throwException = false) { var operateStatus = new OperateStatus(); try { //获取需要删除的数据 var t = GetById(id); if (t == null) { operateStatus.ResultSign = ResultSign.Error; operateStatus.Message = string.Format(Chs.Error, Chs.HaveDelete); return(operateStatus); } var resultNum = Repository.Delete(id); operateStatus.ResultSign = resultNum > 0 ? ResultSign.Successful : ResultSign.Error; operateStatus.Message = resultNum > 0 ? Chs.Successful : Chs.Error; } catch (Exception exception) { if (throwException) { throw exception; } operateStatus.Message = string.Format(Chs.Error, exception.Message); } return(operateStatus); }
/// <summary> /// 保存修改后密码信息 /// </summary> /// <param name="input"></param> /// <returns></returns> public async Task <OperateStatus> SaveChangePassword(SystemUserChangePasswordInput input) { var operateStatus = new OperateStatus(); //后台再次验证是否一致 if (!input.NewPassword.Equals(input.ConfirmNewPassword)) { operateStatus.Message = "录入的新密码和确认密码不一致。"; return(operateStatus); } //旧密码是否正确 operateStatus = await CheckOldPassword(new CheckSameValueInput { Id = input.Id, Param = input.OldPassword }); if (operateStatus.ResultSign == ResultSign.Error) { return(operateStatus); } //将传入的密码加密 var encryptPwd = DEncryptUtil.Encrypt(input.NewPassword, _configOptions.Value.PasswordKey); if (await _userInfoRepository.ResetPassword(new SystemUserResetPasswordInput { EncryptPassword = encryptPwd, Id = input.Id })) { operateStatus.ResultSign = ResultSign.Successful; operateStatus.Message = string.Format(ResourceSystem.重置密码成功, input.NewPassword); } return(operateStatus); }
/// <summary> /// 检查值是否相同 /// </summary> /// <param name="operateStatus"></param> /// <returns></returns> protected JsonResult JsonForCheckSameValue(OperateStatus operateStatus) { return(Json(new { info = operateStatus.Message, status = operateStatus.ResultSign == ResultSign.Successful ? "y" : "n" })); }
/// <summary> /// 实例化操作结果 /// </summary> /// <param name="data">数据</param> /// <param name="operateStatus">操作状态</param> /// <param name="message">返回信息</param> /// <param name="code">返回代码</param> /// <param name="otherJson">其他辅助参数,Json格式</param> public OperateResult(T data = default, OperateStatus operateStatus = OperateStatus.Unknow, string message = null, string code = null, string otherJson = null) { this.Data = data; this.OperateStatus = operateStatus; this.Code = code; this.Message = message; this.OtherJson = otherJson; }
public async Task <JsonResult> Login(SystemUserLoginInput input) { var operateStatus = new OperateStatus(); string tokenData = String.Empty; //验证数据库信息 var info = await _userInfoLogic.CheckUserByCodeAndPwd(input); if (info.Data != null) { ICollection <string> roles = new List <string>(); if (info.Data.IsAdmin) { //查询顶级组织机构 var orgs = (await _organizationLogic.GetSystemOrganizationByPid(new IdInput(Guid.Empty))).FirstOrDefault(); if (orgs != null) { info.Data.OrganizationId = Guid.Parse(orgs.id.ToString()); info.Data.OrganizationName = orgs.text; } roles.Add("Admin"); } var key = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(_jwtConfig.Value.Secret)); var header = new JwtHeader(new SigningCredentials(key, SecurityAlgorithms.HmacSha256)); var issuer = _jwtConfig.Value.Issuer; var loginTime = DateTime.Now; var claims = new[] { new Claim("Name", info.Data.Name), new Claim("Code", info.Data.Code), new Claim("OrganizationId", info.Data.OrganizationId == Guid.Empty?"":info.Data.OrganizationId.ToString()), new Claim("OrganizationName", info.Data.OrganizationName ?? ""), new Claim("LoginId", info.Data.LoginId.ToString()), new Claim(JwtRegisteredClaimNames.Jti, info.Data.UserId.ToString()) }.Concat(roles.Select(role => new Claim("role", role))); JwtPayload payload = input.Remberme ? new JwtPayload(issuer, null, claims, null, loginTime.AddYears(1)) : new JwtPayload(issuer, null, claims, null, loginTime.AddMinutes(60)); var token = new JwtSecurityToken(header, payload); operateStatus.ResultSign = ResultSign.Successful; tokenData = new JwtSecurityTokenHandler().WriteToken(token); WriteLoginLog(info.Data); } else { operateStatus.ResultSign = ResultSign.Error; operateStatus.Message = info.Message; } return(Json(new { operateStatus.ResultSign, operateStatus.Message, Data = tokenData, OrganizationId = info.Data?.OrganizationId ?? Guid.Empty, UserName = info.Data != null ? info.Data.Name : "", OrganizationName = info.Data != null ? info.Data.OrganizationName : "", Code = info.Data != null ? info.Data.Code : "", HeadImage = info.Data != null ? info.Data.HeadImage : "" })); }
public JsonResult RecordsDelete(Guid? id) { OperateStatus status; if (id.HasValue && id.Value != Guid.Empty) { bookRecordsModel.Delete(id.Value, out status); } else { status = new OperateStatus() { ResultSign = ResultSign.Failed, Message = "预订信息获取错误" }; } return JsonForStatus(status); }