public Task <Result> changeLoginName(ChangeLoginNameDto inEnt) { return(_login.ChangeLoginName(inEnt)); }
/// <summary> /// 替换账号 /// </summary> /// <param name="inEnt"></param> /// <returns></returns> public async Task <Result> ChangeLoginName(ChangeLoginNameDto inEnt) { Result reObj = new Result(); DapperHelper <SysUserEntity> userDapper = new DapperHelper <SysUserEntity>(); userDapper.TranscationBegin(); try { var loginDapper = new DapperHelper <SysLoginEntity>(userDapper.GetConnection(), userDapper.GetTransaction()); if ((await loginDapper.Count(x => x.loginName == inEnt.newLoginName)) > 0 || (await userDapper.Count(x => x.loginName == inEnt.newLoginName)) > 0) { userDapper.TranscationRollback(); reObj.success = false; reObj.msg = string.Format("账号{0}已经存在", inEnt.newLoginName); } else { var pwd = inEnt.password.Md5(); var login = await loginDapper.Single(x => x.loginName == inEnt.oldLoginName && x.password == pwd); var user = await userDapper.Single(x => x.loginName == inEnt.oldLoginName); if (login == null || user == null) { userDapper.TranscationRollback(); reObj.success = false; reObj.msg = string.Format("原账号有误"); return(reObj); } user.loginName = inEnt.newLoginName; login.loginName = inEnt.newLoginName; reObj.success = await loginDapper.Update(new DtoSave <SysLoginEntity> { data = login, saveFieldListExp = x => new object[] { x.loginName }, whereList = null }) > 0; if (!reObj.success) { userDapper.TranscationRollback(); reObj.success = false; reObj.msg = string.Format("更新账号失败"); return(reObj); } reObj.success = await userDapper.Update(new DtoSave <SysUserEntity> { data = user, saveFieldListExp = x => new object[] { x.loginName }, whereList = null }) > 0; if (!reObj.success) { userDapper.TranscationRollback(); reObj.success = false; reObj.msg = string.Format("更新用户失败"); return(reObj); } reObj.success = true; userDapper.TranscationCommit(); } } catch (Exception e) { userDapper.TranscationRollback(); reObj.success = false; reObj.msg = e.Message; } return(reObj); }