/// <summary> /// get resource node --TreeView for ag-grid /// </summary> /// <returns></returns> public ResourceNode GetResourceNodeAll() { try { var rootNode = new ResourceNode { ID = 0, ParentID = -1, ResourceName = "资源列表", group = true }; var resourceList = QuickRepository.GetAll <ResourceEntity>().ToList <ResourceEntity>(); var rootItems = from a in resourceList where a.ParentID == 0 select a; int index = 0; ResourceNode[] resourceTreeTop = new ResourceNode[rootItems.Count()]; foreach (var item in rootItems) { ResourceNode[] childrenItems = GetResourceNodeListIteratedly(item.ID, resourceList); resourceTreeTop[index++] = CreateResourceNodeSingle(item, childrenItems); } rootNode.children = resourceTreeTop; return(rootNode); } catch (System.Exception ex) { throw; } }
/// <summary> /// 同步订单 /// </summary> /// <param name="entity"></param> public ProductOrderEntity SyncOrder(IDbConnection conn, IDbTransaction trans) { var entity = new ProductOrderEntity(); var rnd = new Random(); entity.OrderCode = string.Format("TB{0}", rnd.Next(100000, 999999).ToString()); entity.Status = (short)ProductOrderStatusEnum.Ready; entity.ProductName = pruducttype[rnd.Next(1, 7) - 1]; entity.Quantity = rnd.Next(1, 10); entity.UnitPrice = 1000; entity.TotalPrice = entity.Quantity * entity.UnitPrice; var a = rnd.Next(1, 10) - 1; entity.CustomerName = customertype[a]; entity.Address = addresstype[a]; entity.Mobile = rnd.Next(100000, 999999).ToString(); entity.Remark = shoptype[rnd.Next(1, 6) - 1]; entity.CreatedTime = System.DateTime.Now; QuickRepository.Insert <ProductOrderEntity>(conn, entity, trans); return(entity); }
/// <summary> /// user register /// </summary> /// <param name="account"></param> public void Register(UserAccountEntity account) { //verify input validation var result = ResponseResult.Default(); var userEntity = QuickRepository.GetDefaultByName <UserAccountEntity>("LoginName", account.LoginName); if (userEntity != null) { throw new ApplicationException("用户名已经被占用,请重新存在!"); } else if (string.IsNullOrEmpty(account.Password) || account.Password.Length < 6) { throw new ApplicationException("密码不能为空,或者长度不能小于6位!"); } //create try { QuickRepository.Insert <UserAccountEntity>(account); } catch (System.Exception) { throw; } }
/// <summary> /// change user password /// </summary> /// <param name="oldPassword">old password</param> /// <param name="newPassword">new password</param> public void ChangePassword(string loginName, string oldPassword, string newPassword) { UserAccountEntity userEntity = null; try { userEntity = QuickRepository.GetDefaultByName <UserAccountEntity>("LoginName", loginName); var isChecked = CheckPassword(userEntity, oldPassword); //it's better to limit wrong password 3 or 6 times to prevent someone crack the account if (!isChecked) { throw new ApplicationException("用户名和密码不匹配,请重试."); } } catch (System.ApplicationException ex) { throw new ApplicationException("修改密码发生错误!"); } try { var saltText = string.Empty; EnumHashProvider hashProvider; var encryptedPwd = HashingAlgorithmUtility.GetEncryptedHashText(newPassword, out saltText, out hashProvider); userEntity.Password = encryptedPwd; userEntity.PasswordFormat = (short)hashProvider; userEntity.PasswordSalt = saltText; QuickRepository.Update <UserAccountEntity>(userEntity); } catch (System.ApplicationException ex) { throw; } }
/// <summary> /// reset password /// </summary> /// <param name="userID"></param> /// <returns></returns> public string ResetPassword(int userID) { var session = SessionFactory.CreateSession(); session.BeginTrans(); try { var saltText = string.Empty; EnumHashProvider hashProvider; var r = new Random(); var newPassword = r.Next(100000, 999999).ToString(); var encryptedPwd = HashingAlgorithmUtility.GetEncryptedHashText(newPassword, out saltText, out hashProvider); var userEntity = QuickRepository.GetById <UserAccountEntity>(userID); userEntity.Password = encryptedPwd; userEntity.PasswordFormat = (short)hashProvider; userEntity.PasswordSalt = saltText; QuickRepository.Update <UserAccountEntity>(session.Connection, userEntity, session.Transaction); session.Commit(); return(newPassword); } catch (System.Exception ex) { session.Rollback(); throw new ApplicationException("用户密码修改发生错误!"); } finally { session.Dispose(); } }
/// <summary> /// 设置当前登录用户 /// </summary> public async Task SetCurrentUser(string oid, IHttpContextAccessor httpContextAccessor, ApplicationDbContext context) { CurrentUser.Configure(httpContextAccessor); var user = await QuickRepository.GetUserByOIDAsync(oid, context); if (user != null) { string role = string.Empty; switch (user.AccountType) { case 0: role = "Administrator"; break; case 1: role = "Instructor"; break; case 2: role = "Student"; break; } CurrentUser.UserAccount = user.Account; CurrentUser.UserId = user.Id; CurrentUser.UserImage = user.ImageSrc; CurrentUser.UserName = user.Name; CurrentUser.UserOID = user.IdentityUserOID; CurrentUser.UserRole = role; CurrentUser.UserPage = user.HomePage; } }
/// <summary> /// get paged data /// </summary> /// <param name="query"></param> /// <returns></returns> public List <UserLogEntity> GetPaged(UserLogQuery query, out int count) { IDbSession session = SessionFactory.CreateSession(); try { var sortList = new List <DapperExtensions.ISort>(); sortList.Add(new DapperExtensions.Sort { PropertyName = "ID", Ascending = false }); IPredicate predicate = null; count = QuickRepository.Count <UserLogEntity>(session.Connection, predicate); var list = QuickRepository.GetPaged <UserLogEntity>(session.Connection, query.PageIndex, query.PageSize, predicate, sortList, false).ToList(); return(list); } catch (System.Exception) { throw; } finally { session.Dispose(); } }
/// <summary> /// 流程业务记录分页方法 /// </summary> /// <param name="query"></param> /// <param name="count"></param> /// <returns></returns> public List <AppFlowEntity> GetPaged(AppFlowQuery query, out int count) { List <AppFlowEntity> list = null; var conn = SessionFactory.CreateConnection(); try { var sortList = new List <DapperExtensions.ISort>(); sortList.Add(new DapperExtensions.Sort { PropertyName = "ID", Ascending = false }); IFieldPredicate predicate = null; if (!string.IsNullOrEmpty(query.AppInstanceID)) { predicate = Predicates.Field <AppFlowEntity>(f => f.AppInstanceID, DapperExtensions.Operator.Eq, query.AppInstanceID); } count = QuickRepository.Count <AppFlowEntity>(conn, predicate); list = QuickRepository.GetPaged <AppFlowEntity>(conn, query.PageIndex, query.PageSize, predicate, sortList, false).ToList(); return(list); } catch (System.Exception) { throw; } finally { conn.Close(); } }
public Questionnaire Questionnaire(int userId, int advertiseId) { var questionnaireRepo = new QuickRepository <Questionnaire>(); var questionnaire = questionnaireRepo.FirstOrDefault(x => x.UserId == userId && x.AdvertiseId == advertiseId) ?? questionnaireRepo.Add(new Questionnaire { AdvertiseId = advertiseId, UserId = userId }); List <Cluster> listCluster = Cached.Load("cached_listCluster", key => new QuickRepository <Cluster>().ToList()); List <Question> listQuestion = Cached.Load("cached_listQuestion", key => new QuickRepository <Question>().ToList()); List <Answer> listAnswer = new QuickRepository <Answer>() .Where(x => x.QuestionnaireId == questionnaire.Id) .ToList(); List <Cluster> parsedClusters = listCluster.Select(x => { x.QuestionList = listQuestion.Where( y => y.IdCluster == x.Id ).ToList(); x.AnswerList = listAnswer.Where(y => x.QuestionList.Any( z => z.Id == y.QuestionId ) ).ToList(); return(x); }).ToList(); questionnaire.ClusterList = parsedClusters; return(questionnaire); }
/// <summary> /// save user resource data /// </summary> /// <param name="entity"></param> public void SaveUserResourceList(List <UserResourceEntity> entityList) { int userID = entityList[0].UserID; StringBuilder sbXml = new StringBuilder(); try { sbXml.Append("<data>"); entityList.ForEach(info => { sbXml.Append("<item>"); sbXml.Append("<UserID>" + info.UserID.ToString() + "</UserID>"); sbXml.Append("<ResourceID>" + info.ResourceID.ToString() + "</ResourceID>"); sbXml.Append("<PermissionType>" + info.PermissionType + "</PermissionType>"); sbXml.Append("<IsInherited>" + info.IsInherited + "</IsInherited>"); sbXml.Append("</item>"); }); sbXml.Append("</data>"); var param = new DynamicParameters(); param.Add("@userID", userID); param.Add("@permissionXML", sbXml.ToString()); QuickRepository.ExecuteProc("dbo.pr_sys_UserResourceListSaveBatch", param); } catch (System.Exception ex) { //NLogWriter.Error("获取用户资源权限列表(用于用户管理,显示有效权限)失败!", ex); throw; } }
/// <summary> /// get all role /// </summary> /// <returns></returns> public IList<RoleEntity> GetRoleAll() { var sql = @"SELECT * FROM SysRole ORDER BY RoleName"; var list = QuickRepository.Query<RoleEntity>(sql).ToList(); return list; }
/// <summary> /// get user all data /// </summary> /// <returns></returns> public IList<UserAccountEntity> GetUserAll() { var sql = @"SELECT * FROM SysUser WHERE AccountType <> -1 ORDER BY ID DESC"; var list = QuickRepository.Query<UserAccountEntity>(sql).ToList(); return list; }
/// <summary> /// delete role /// </summary> /// <param name="entity"></param> public void DeleteRole(RoleEntity entity) { var param = new DynamicParameters(); param.Add("@roleID", entity.ID); using (var conn = SessionFactory.CreateConnection()) { QuickRepository.ExecuteProc(conn, "pr_sys_RoleDelete", param); } }
public List <HrsLeaveEntity> QueryLeave(HrsLeaveQuery query) { var sqlQuery = (from leave in QuickRepository.GetAll <HrsLeaveEntity>() where leave.CreatedUserID == query.CreatedUserID orderby leave.ID descending select leave); var list = sqlQuery.ToList(); return(list); }
/// <summary> /// save user /// </summary> /// <param name="entity"></param> public void SaveUser(UserEntity entity) { var param = new DynamicParameters(); param.Add("@userID", entity.ID); param.Add("@userName", entity.UserName); using (var conn = SessionFactory.CreateConnection()) { QuickRepository.ExecuteProc(conn, "pr_sys_UserSave", param); } }
/// <summary> /// get user log record 100 /// </summary> /// <returns></returns> public List <UserLogEntity> GetPaged100() { try { var sql = "SELECT TOP 100 * FROM SysUserLog ORDER BY ID DESC"; var list = QuickRepository.Query <UserLogEntity>(sql).ToList <UserLogEntity>(); return(list); } catch (System.Exception ex) { throw; } }
/// <summary> /// clear user resource data /// </summary> /// <param name="entity"></param> public void ClearUserResourceList(int userID) { try { var param = new DynamicParameters(); param.Add("@userID", userID); QuickRepository.ExecuteProc("dbo.pr_sys_UserResourceListClear", param); } catch (System.Exception ex) { throw; } }
/// <summary> /// lock user /// </summary> /// <param name="userID"></param> /// <returns></returns> public void Lock(int userID) { try { var user = QuickRepository.GetById <UserAccountEntity>(userID); user.Status = (byte)AccountStatusEnum.Locked; QuickRepository.Update <UserAccountEntity>(user); } catch (System.Exception) { throw new ApplicationException("锁定用户账号操作失败!"); } }
/// <summary> /// delete resource /// </summary> /// <param name="resourceID">资源ID</param> public void DeleteResource(int resourceID) { try { var param = new DynamicParameters(); param.Add("@resourceID", resourceID); QuickRepository.ExecuteProc("pr_sys_ResourceListDeleteByID", param); } catch (System.Exception ex) { //NLogWriter.Error("删除资源数据,并且删除相关联的表中数据失败!", ex); throw; } }
/// <summary> /// delete resource /// </summary> /// <param name="xmlEntity"></param> public void DeleteResource(XmlTransferEntity xmlEntity) { try { var param = new DynamicParameters(); param.Add("@strXml", xmlEntity.xmlBody); QuickRepository.ExecuteProc("pr_prd_DeleteResourceBeth", param); } catch (System.Exception ex) { //NLogWriter.Error("删除资源数据,并且删除相关联的表中数据失败!", ex); throw; } }
/// <summary> /// get user permission list /// </summary> /// <param name="userID"></param> /// <returns></returns> public List <UserPermissionEntity> GetUserPermissionList(int userID) { try { var param = new DynamicParameters(); param.Add("@userID", userID); return(QuickRepository.ExecProcQuery <UserPermissionEntity>("dbo.pr_sys_UserResourceListGet", param) .ToList <UserPermissionEntity>()); } catch (System.Exception ex) { throw; } }
public Question ListQuestionByCluster(string questionnaireId, string clusterId) { var questionRepo = new QuickRepository <Question>(); var clusterRepo = new QuickRepository <Cluster>(); var answerRepo = new QuickRepository <Answer>(); var answer = answerRepo.Where(x => x.QuestionnaireId == questionnaireId).ToList(); var question = questionRepo.Where(x => x.IdCluster == clusterId).ToList(); var filterAdd = question.FirstOrDefault(x => !answer.Any(y => y.QuestionId == x.Id)); return(filterAdd); }
/// <summary> /// get role user data /// </summary> /// <returns></returns> public IList<RoleUserView> GetRoleUserAll() { var strSQL = @"SELECT ID, RoleID, RoleName, RoleCode, UserID, UserName FROM vw_SysRoleUserView ORDER BY RoleID, UserID"; var list = QuickRepository.Query<RoleUserView>(strSQL).ToList(); return list; }
/// <summary> /// clear role resource /// </summary> /// <param name="entity"></param> public void ClearRoleResourceList(RoleResourceEntity entity) { int roleID = entity.RoleID; try { var param = new DynamicParameters(); param.Add("@roleID", roleID); QuickRepository.ExecuteProc("dbo.pr_sys_RoleResourceListClear", param); } catch (System.Exception ex) { throw; } }
/// <summary> /// get all resource record /// </summary> /// <returns></returns> public List <ResourceEntity> GetResourceAll() { List <ResourceEntity> list = new List <ResourceEntity>(); try { list = QuickRepository.GetAll <ResourceEntity>().ToList <ResourceEntity>(); return(list); } catch (System.Exception ex) { //NLogWriter.Error("获取所有应用资源信息失败!", ex); throw; } }
public ResponseResult CheckDispatched(int id) { //检查是否已经进入流程阶段 var result = ResponseResult.Default(); var orderEntity = QuickRepository.GetById <ProductOrderEntity>(id); if (orderEntity.Status == 1) { result = ResponseResult.Success(); } else { result = ResponseResult.Error("订单已经进入流程状态,不能再次派单!"); } return(result); }
/// <summary> /// query user of role /// </summary> /// <param name="query"></param> /// <returns></returns> public IList<RoleUserView> QueryUserByRole(RoleEntity query) { var strSQL = @"SELECT ID, RoleID, RoleName, RoleCode, UserID, UserName FROM vw_SysRoleUserView WHERE RoleID=@roleID ORDER BY RoleID"; var list = QuickRepository.Query<RoleUserView>(strSQL, new { roleID = query.ID }).ToList(); return list; }
/// <summary> /// update user account /// </summary> /// <param name="account"></param> /// <returns></returns> public bool Update(UserAccountEntity account) { try { var user = QuickRepository.GetById <UserAccountEntity>(account.ID); user.Status = account.Status; user.AccountType = account.AccountType; var isOk = QuickRepository.Update <UserAccountEntity>(user); return(isOk); } catch (System.Exception) { throw; } }
public void Answer([FromBody] answerPost _answer) { var answerRepo = new QuickRepository <Answer>(); var questionRepo = new QuickRepository <Question>(); answerRepo.Add(new Answer { QuestionId = _answer.QuestionId, QuestionnaireId = _answer.QuestionnaireId, Value = _answer.Value, Photo = _answer.Photo }); //var question = questionRepo.Where(x => x.Id == questionId).FirstOrDefault(); //question = questionRepo.Where(x => x.Order == question.Order + 1).FirstOrDefault(); }
/// <summary> /// 写业务流程记录日志信息 /// </summary> /// <param name="session"></param> /// <param name="runner"></param> /// <param name="activityName"></param> /// <param name="appInstanceID"></param> /// <param name="appInstanceCode"></param> /// <param name="remark"></param> private void Write(IDbSession session, WfAppRunner runner, string activityName, string appInstanceID, string appInstanceCode = null, string remark = null) { //"派单", entity.ID.ToString(), entity.OrderCode, "完成派单") var flow = new AppFlowEntity(); flow.AppInstanceID = appInstanceID; flow.AppInstanceCode = appInstanceCode; flow.AppName = runner.AppName; flow.ActivityName = activityName; flow.ChangedTime = System.DateTime.Now; flow.ChangedUserID = runner.UserID; flow.ChangedUserName = runner.UserName; flow.Remark = remark; QuickRepository.Insert <AppFlowEntity>(session.Connection, flow, session.Transaction); }