/// <summary> /// 修改T_Users数据 /// </summary> /// <param name="requestObject">返回响应结果对象,包括响应代码,修改操作结果</param> /// <returns></returns> public async Task <ResponseObject <TUsersModel, bool> > PutAsync(RequestObject <TUsersModel> requestObject) { try { //执行结果 var result = false; //没有修改信息,返回错误信息 if (requestObject.PostDataList == null && requestObject.PostData == null) { return(ResponseUtil <TUsersModel, bool> .FailResult(requestObject, false, "PostData,PostDataList不能都为null")); } //批量更新优先级高于单记录更新 if (requestObject.PostDataList != null && requestObject.PostDataList.Count > 0) { requestObject.PostDataList.ForEach(x => { x.Salt = RandCodeCreate.GenerateRandomNumber(32); x.LoginPwd = EncryptUtil.EnAESBykey(x.LoginPwd, Encoding.UTF8, x.Salt); }); //批量更新 result = await _db.Instance.Updateable(requestObject.PostDataList).ExecuteCommandAsync() > 0; } else { requestObject.PostData.Salt = RandCodeCreate.GenerateRandomNumber(32); requestObject.PostData.LoginPwd = EncryptUtil.EnAESBykey(requestObject.PostData.LoginPwd, Encoding.UTF8, requestObject.PostData.Salt); //单记录更新 result = await _db.Instance.Updateable(requestObject.PostData).ExecuteCommandAsync() > 0; } //返回执行结果 if (result) { return(ResponseUtil <TUsersModel, bool> .SuccessResult(requestObject, true)); } return(ResponseUtil <TUsersModel, bool> .FailResult(requestObject, false, "修改数据失败!")); } catch (Exception ex) { //返回异常结果 return(ResponseUtil <TUsersModel, bool> .FailResult(requestObject, false, ex.Message)); } }
/// <summary> /// 个人设置修改密码 /// </summary> /// <param name="requestObject"></param> /// <param name="UserID"></param> /// <returns></returns> public async Task <ResponseObject <TSMUserAccountPassWord, bool> > ModifyPassWordAsync(RequestObject <TSMUserAccountPassWord> requestObject, int UserID) { try { if (requestObject.PostData == null) { return(ResponseUtil <TSMUserAccountPassWord, bool> .FailResult(requestObject, false, "PostData不能为null")); } var entity = requestObject.PostData; var enditModel = await _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.ID == UserID).FirstAsync(); string Passwd = EncryptUtil.DeAESbyKey(enditModel.Passwd, enditModel.Salt); if (!string.Equals(Passwd, entity.OldPasswd)) { return(ResponseUtil <TSMUserAccountPassWord, bool> .FailResult(requestObject, false, "原密码不正确")); } else { enditModel.Salt = RandCodeCreate.GenerateRandomNumber(32); enditModel.Passwd = EncryptUtil.EnAESBykey(entity.Passwd, enditModel.Salt); } _db.Instance.Updateable <TSMUserAccountDbModel>(enditModel).UpdateColumns(p => new { p.Salt, p.Passwd }).ExecuteCommand(); return(ResponseUtil <TSMUserAccountPassWord, bool> .SuccessResult(requestObject, true)); } catch (Exception ex) { //返回查询异常结果 return(ResponseUtil <TSMUserAccountPassWord, bool> .FailResult(requestObject, false, ex.Message)); } }
/// <summary> /// 修改密码 /// </summary> /// <param name="requestObject">返回响应结果对象,包括响应代码,修改操作结果</param> /// <returns></returns> public async Task <ResponseObject <TSMUserResetPassWordModel, bool> > ResetPassWd(RequestObject <TSMUserResetPassWordModel> requestObject) { try { //执行结果 var result = false; //没有修改信息,返回错误信息 if (requestObject.PostDataList == null && requestObject.PostData == null) { return(ResponseUtil <TSMUserResetPassWordModel, bool> .FailResult(requestObject, false, "PostData不能都为null")); } //批量更新优先级高于单记录更新 if (requestObject.PostDataList != null && requestObject.PostDataList.Count > 0) { } else { if (string.IsNullOrWhiteSpace(requestObject.PostData.EmailAccount) && string.IsNullOrWhiteSpace(requestObject.PostData.TelAccount)) { return(ResponseUtil <TSMUserResetPassWordModel, bool> .FailResult(requestObject, false, "邮箱和手机号必须填写一个")); } TSMUserAccountDbModel tempDB = null; if (!string.IsNullOrWhiteSpace(requestObject.PostData.TelAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.TelAccount == requestObject.PostData.TelAccount).First(); } else { if (!string.IsNullOrWhiteSpace(requestObject.PostData.EmailAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.EmailAccount == requestObject.PostData.EmailAccount).First(); } } if (tempDB != null) { tempDB.Salt = RandCodeCreate.GenerateRandomNumber(32); tempDB.Passwd = EncryptUtil.EnAESBykey(requestObject.PostData.Passwd, tempDB.Salt); if (string.IsNullOrWhiteSpace(tempDB.EmailAccount)) { tempDB.EmailAccount = null; } if (string.IsNullOrWhiteSpace(tempDB.TelAccount)) { tempDB.TelAccount = null; } result = await _db.Instance.Updateable(tempDB).ExecuteCommandAsync() > 0; } else { return(ResponseUtil <TSMUserResetPassWordModel, bool> .FailResult(requestObject, false, "用户不存在,不能修改")); } } //返回执行结果 if (result) { return(ResponseUtil <TSMUserResetPassWordModel, bool> .SuccessResult(requestObject, true)); } return(ResponseUtil <TSMUserResetPassWordModel, bool> .FailResult(requestObject, false, "修改数据失败!")); } catch (Exception ex) { //返回异常结果 return(ResponseUtil <TSMUserResetPassWordModel, bool> .FailResult(requestObject, false, ex.Message)); } }
/// <summary> /// 修改T_SM_UserAccount数据 /// </summary> /// <param name="requestObject">返回响应结果对象,包括响应代码,修改操作结果</param> /// <returns></returns> public async Task <ResponseObject <TSMUserAccountEditModel, bool> > PutAsync(RequestObject <TSMUserAccountEditModel> requestObject) { try { //执行结果 var result = false; //没有修改信息,返回错误信息 if (requestObject.PostDataList == null && requestObject.PostData == null) { return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "PostData,PostDataList不能都为null")); } //批量更新优先级高于单记录更新 if (requestObject.PostDataList != null && requestObject.PostDataList.Count > 0) { if (requestObject.PostDataList.Any(p => string.IsNullOrWhiteSpace(p.TelAccount) && string.IsNullOrWhiteSpace(p.EmailAccount))) { return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "邮箱和手机号必须填写一个")); } //批量更新 var editList = _mapper.Map <List <TSMUserAccountEditModel>, List <TSMUserAccountDbModel> >(requestObject.PostDataList); List <TSMUserAccountDbModel> editDBLiat = new List <TSMUserAccountDbModel>(); editList.ForEach(x => { TSMUserAccountDbModel tempDB = null; if (!string.IsNullOrWhiteSpace(x.TelAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.TelAccount == x.TelAccount).First(); } else { if (!string.IsNullOrWhiteSpace(x.EmailAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.EmailAccount == x.EmailAccount).First(); } } if (tempDB != null) { tempDB.Salt = RandCodeCreate.GenerateRandomNumber(32); tempDB.Passwd = EncryptUtil.EnAESBykey(x.Passwd, tempDB.Salt); if (string.IsNullOrWhiteSpace(tempDB.EmailAccount)) { tempDB.EmailAccount = null; } if (string.IsNullOrWhiteSpace(tempDB.TelAccount)) { tempDB.TelAccount = null; } editDBLiat.Add(tempDB); } }); if (editDBLiat.Count() > 0) { result = await _db.Instance.Updateable(editDBLiat).UpdateColumns(p => new { p.Salt, p.Passwd }).ExecuteCommandAsync() > 0; } else { return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "用户不存在,不能修改")); } } else { if (string.IsNullOrWhiteSpace(requestObject.PostData.EmailAccount) && string.IsNullOrWhiteSpace(requestObject.PostData.TelAccount)) { return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "邮箱和手机号必须填写一个")); } //单记录更新 var editModel = _mapper.Map <TSMUserAccountDbModel>(requestObject.PostData); TSMUserAccountDbModel tempDB = null; if (!string.IsNullOrWhiteSpace(editModel.TelAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.TelAccount == editModel.TelAccount).First(); } else { if (!string.IsNullOrWhiteSpace(editModel.EmailAccount)) { tempDB = _db.Instance.Queryable <TSMUserAccountDbModel>().Where(p => p.EmailAccount == editModel.EmailAccount).First(); } } if (tempDB != null) { tempDB.Salt = RandCodeCreate.GenerateRandomNumber(32); tempDB.Passwd = EncryptUtil.EnAESBykey(editModel.Passwd, tempDB.Salt); if (string.IsNullOrWhiteSpace(tempDB.EmailAccount)) { tempDB.EmailAccount = null; } if (string.IsNullOrWhiteSpace(tempDB.TelAccount)) { tempDB.TelAccount = null; } result = await _db.Instance.Updateable(tempDB).UpdateColumns(p => new { p.Salt, p.Passwd }).ExecuteCommandAsync() > 0; } else { return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "用户不存在,不能修改")); } } //返回执行结果 if (result) { return(ResponseUtil <TSMUserAccountEditModel, bool> .SuccessResult(requestObject, true)); } return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, "修改数据失败!")); } catch (Exception ex) { //返回异常结果 return(ResponseUtil <TSMUserAccountEditModel, bool> .FailResult(requestObject, false, ex.Message)); } }
/// <summary> /// 新增T_SM_UserAccount数据 /// </summary> /// <param name="requestObject">返回响应结果对象,包括响应代码,新增操作结果</param> /// <returns></returns> public async Task <ResponseObject <string> > PostAsync(RequestPost <TSMUserAccountAddModel> requestObject) { var currDb = _db.Instance; try { //如果没有新增数据,返回错误信息 if (requestObject.PostData == null && requestObject.PostDataList == null) { return(ResponseUtil <string> .FailResult(null, "PostData,PostDataList不能都为null")); } var result = false; string token = string.Empty; currDb.BeginTran(); //批量新增的优先级高于单条数据新增,且只会执行一个新增操作 if (requestObject.PostDataList != null && requestObject.PostDataList.Count > 0) { } else { //注册账号信息 var addModel = _mapper.Map <TSMUserAccountDbModel>(requestObject.PostData); addModel.Salt = RandCodeCreate.GenerateRandomNumber(32); addModel.Passwd = EncryptUtil.EnAESBykey(addModel.Passwd, addModel.Salt); addModel.Status = 1; if (string.IsNullOrWhiteSpace(addModel.EmailAccount)) { addModel.EmailAccount = null; } if (string.IsNullOrWhiteSpace(addModel.TelAccount)) { addModel.TelAccount = null; } //生成用户详情记录 TSMUserInfoDbModel tSMUserInfoDbModel = new TSMUserInfoDbModel(); int cid = await _db.Instance.Insertable(tSMUserInfoDbModel).ExecuteReturnIdentityAsync(); addModel.UserInfoId = cid; int id = _db.Instance.Insertable(addModel).ExecuteReturnIdentity(); var palyloads = new Dictionary <string, object> { { "UserID", id }, { "ID", Guid.NewGuid().ToString() }, { "CompanyID", 0 }, { "UserName", addModel.AccountName } }; token = TokenManager.CreateTokenByHandler(palyloads, 60 * 24); currDb.CommitTran(); } //返回执行结果 return(ResponseUtil <string> .SuccessResult(token)); } catch (Exception ex) { //返回异常结果 currDb.RollbackTran(); return(ResponseUtil <string> .FailResult(null, ex.Message)); } }
/// <summary> /// 修改 /// </summary> /// <param name="requestObject"></param> /// <returns></returns> public async Task <ResponseObject <TSMUserAccountEditAllModel, bool> > PutAsync(RequestObject <TSMUserAccountEditAllModel> requestObject) { var currDb = _db.Instance;//事务需要使用同一个 SqlSugarClient对象实例 try { //没有新增数据,返回错误信息 if (requestObject.PostData == null) { return(ResponseUtil <TSMUserAccountEditAllModel, bool> .FailResult(requestObject, false, "PostData不能为null")); } //开启事务 currDb.BeginTran(); TSMUserAccountDbModel dbMain = ExpressionGenericMapper <TSMUserAccountEditAllModel, TSMUserAccountDbModel> .Trans(requestObject.PostData); dbMain.Salt = RandCodeCreate.GenerateRandomNumber(32); dbMain.Passwd = EncryptUtil.EnAESBykey(dbMain.Passwd, dbMain.Salt); if (string.IsNullOrWhiteSpace(dbMain.EmailAccount)) { dbMain.EmailAccount = null; } if (string.IsNullOrWhiteSpace(dbMain.TelAccount)) { dbMain.TelAccount = null; } TSMUserInfoDbModel dbDeatail = ExpressionGenericMapper <TSMUserAccountEditAllModel, TSMUserInfoDbModel> .Trans(requestObject.PostData); dbDeatail.ID = requestObject.PostData.CId; await currDb.Updateable(dbMain).IgnoreColumns(p => new { p.CreateTime, p.CompanyId, p.UserInfoId }).ExecuteCommandAsync(); await currDb.Updateable(dbDeatail).ExecuteCommandAsync(); currDb.Deleteable <TSMRoleUserRelationDbModel>().Where(p => p.UserId == dbMain.ID).ExecuteCommand(); if (requestObject.PostData.RoleId != null && requestObject.PostData.RoleId > 0) { TSMRoleUserRelationDbModel itemEntity = new TSMRoleUserRelationDbModel(); itemEntity.RoleId = requestObject.PostData.RoleId.Value; itemEntity.UserId = dbMain.ID; currDb.Insertable <TSMRoleUserRelationDbModel>(itemEntity).ExecuteCommand(); } currDb.Deleteable <TSMDeptUserRelationDbModel>().Where(p => p.UserAccountId == dbMain.ID).ExecuteCommand(); if (requestObject.PostData.DeptId != null && requestObject.PostData.DeptId > 0) { TSMDeptUserRelationDbModel itemEntity = new TSMDeptUserRelationDbModel(); itemEntity.DeptId = requestObject.PostData.DeptId.Value; itemEntity.UserAccountId = dbMain.ID; currDb.Insertable <TSMDeptUserRelationDbModel>(itemEntity).ExecuteCommand(); } //提交事务 currDb.CommitTran(); //返回执行结果 return(ResponseUtil <TSMUserAccountEditAllModel, bool> .SuccessResult(requestObject, true)); } catch (Exception ex) { //回滚事务 currDb.RollbackTran(); //返回异常结果 return(ResponseUtil <TSMUserAccountEditAllModel, bool> .FailResult(requestObject, false, ex.Message)); } }
/// <summary> /// 新增 /// </summary> /// <param name="requestObject"></param> /// <param name="UserID">操作人ID</param> /// <returns></returns> public async Task <ResponseObject <TSMUserAccountAddAllModel, bool> > PostAsync(RequestObject <TSMUserAccountAddAllModel> requestObject, int UserID) { var currDb = _db.Instance;//事务需要使用同一个 SqlSugarClient对象实例 try { //没有新增数据,返回错误信息 if (requestObject.PostData == null) { return(ResponseUtil <TSMUserAccountAddAllModel, bool> .FailResult(requestObject, false, "PostData不能为null")); } //开启事务 currDb.BeginTran(); var user = _db.Instance.Queryable <TSMUserAccountDbModel, TSMCompanyDbModel>( (t, t1) => new object[] { JoinType.Left, t.CompanyId == t1.ID, }).Where((t, t1) => t.ID == UserID).Select((t, t1) => new { CompanyId = t.CompanyId, Name = t1.CompanyName }).First(); TSMUserAccountDbModel dbMain = ExpressionGenericMapper <TSMUserAccountAddAllModel, TSMUserAccountDbModel> .Trans(requestObject.PostData); //处理密码 dbMain.Salt = RandCodeCreate.GenerateRandomNumber(32); dbMain.Passwd = EncryptUtil.EnAESBykey(dbMain.Passwd, dbMain.Salt); dbMain.CreateTime = DateTime.Now; dbMain.CompanyId = user.CompanyId.Value; if (string.IsNullOrWhiteSpace(dbMain.EmailAccount)) { dbMain.EmailAccount = null; } if (string.IsNullOrWhiteSpace(dbMain.TelAccount)) { dbMain.TelAccount = null; } TSMUserInfoDbModel dbDeatail = ExpressionGenericMapper <TSMUserAccountAddAllModel, TSMUserInfoDbModel> .Trans(requestObject.PostData); //插入主表数据 var cId = await currDb.Insertable(dbDeatail).ExecuteReturnIdentityAsync(); dbMain.UserInfoId = cId; //插入从表数据 var mId = await currDb.Insertable(dbMain).ExecuteReturnIdentityAsync(); if (requestObject.PostData.RoleId != null && requestObject.PostData.RoleId > 0) { TSMRoleUserRelationDbModel itemEntity = new TSMRoleUserRelationDbModel(); itemEntity.RoleId = requestObject.PostData.RoleId.Value; itemEntity.UserId = mId; currDb.Insertable <TSMRoleUserRelationDbModel>(itemEntity).ExecuteCommand(); } if (requestObject.PostData.DeptId != null && requestObject.PostData.DeptId > 0) { TSMDeptUserRelationDbModel itemEntity = new TSMDeptUserRelationDbModel(); itemEntity.DeptId = requestObject.PostData.DeptId.Value; itemEntity.UserAccountId = mId; currDb.Insertable <TSMDeptUserRelationDbModel>(itemEntity).ExecuteCommand(); } //提交事务 currDb.CommitTran(); //返回执行结果 return(ResponseUtil <TSMUserAccountAddAllModel, bool> .SuccessResult(requestObject, true)); } catch (Exception ex) { //回滚事务 currDb.RollbackTran(); //返回异常结果 return(ResponseUtil <TSMUserAccountAddAllModel, bool> .FailResult(requestObject, false, ex.Message)); } }
public string GerRandom() { return(RandCodeCreate.GenerateRandomNumber(6)); }