public List <ECCategory> GetECCategoryTree(ECCategoryQueryFilter filter) { var cmd = DataCommandManager.CreateCustomDataCommandFromConfig("ECCategory_GetECCategoryTree"); using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, null, "A.SysNo DESC")) { //状态 sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "A.Status", DbType.AnsiStringFixedLength, "@Status", QueryConditionOperatorType.Equal, filter.Status); sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "A.CompanyCode", DbType.AnsiStringFixedLength, "@CompanyCode", QueryConditionOperatorType.Equal, filter.CompanyCode); //TODO:添加渠道过滤条件 cmd.CommandText = sqlBuilder.BuildQuerySql(); return(cmd.ExecuteEntityList <ECCategory>()); } }
public virtual QueryResult QueryECCategory(ECCategoryQueryFilter filter) { int totalCount = 0; var dt = _ecCategoryQueryDA.Query(filter, out totalCount); QueryResult queryResult = new QueryResult(); queryResult.Data = dt; queryResult.TotalCount = totalCount; return queryResult; }
public void LoadTree(string channelID, ADStatus?status, EventHandler <RestClientEventArgs <ECCategory> > callback) { ECCategoryQueryFilter filter = new ECCategoryQueryFilter(); filter.CompanyCode = CPApplication.Current.CompanyCode; filter.ChannelID = channelID; filter.Status = status; string relativeUrl = "/MKTService/ECCategory/GetECCategoryTree"; restClient.Query <ECCategory>(relativeUrl, filter, callback); }
public virtual ECCategory GetECCategoryTree(ECCategoryQueryFilter filter) { var list = _ecCategoryQueryDA.GetECCategoryTree(filter); ECCategory root = new ECCategory(); root.Name = "Root"; root.SysNo = 0; root.RParentSysNo = 0; root.Status = ADStatus.Active; BuildTree(root, list); return root; }
public DataTable Query(ECCategoryQueryFilter filter, out int totalCount) { PagingInfoEntity pagingEntity = new PagingInfoEntity(); pagingEntity.SortField = filter.PagingInfo.SortBy; pagingEntity.MaximumRows = filter.PagingInfo.PageSize; pagingEntity.StartRowIndex = filter.PagingInfo.PageIndex * filter.PagingInfo.PageSize; var cmd = DataCommandManager.CreateCustomDataCommandFromConfig("ECCategory_Query"); using (var sqlBuilder = new DynamicQuerySqlBuilder(cmd.CommandText, cmd, pagingEntity, "A.SysNo DESC")) { //1级分类 sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "R3.EC_CategorySysno", DbType.AnsiStringFixedLength, "@C1SysNo", QueryConditionOperatorType.Equal, filter.C1SysNo); //2级分类 sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "R2.EC_CategorySysno", DbType.AnsiStringFixedLength, "@C2SysNo", QueryConditionOperatorType.Equal, filter.C2SysNo); //3级分类 sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "A.SysNo", DbType.AnsiStringFixedLength, "@C3SysNo", QueryConditionOperatorType.Equal, filter.C3SysNo); //状态 sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "A.Status", DbType.AnsiStringFixedLength, "@Status", QueryConditionOperatorType.Equal, filter.Status); sqlBuilder.ConditionConstructor.AddCondition( QueryConditionRelationType.AND, "A.CompanyCode", DbType.AnsiStringFixedLength, "@CompanyCode", QueryConditionOperatorType.Equal, filter.CompanyCode); //TODO:添加渠道过滤条件 cmd.CommandText = sqlBuilder.BuildQuerySql(); var dt = cmd.ExecuteDataTable(); EnumColumnList enumConfig = new EnumColumnList(); enumConfig.Add("Status", typeof(ADStatus)); enumConfig.Add("PromotionStatus", typeof(FeatureType)); enumConfig.Add("Level", typeof(ECCategoryLevel)); enumConfig.Add("IsParentCategoryShow", typeof(YNStatus)); cmd.ConvertEnumColumn(dt, enumConfig); totalCount = Convert.ToInt32(cmd.GetParameterValue("@TotalCount")); return(dt); } }