public ActionResult GetPlistPlugins(GetPlistResult requestModel) { if (!ModelState.IsValid) { return(ModelState.ToJsonResult()); } var dataDics = GetRequiredService <IPluginQuery>().GetPlist(base.EntityType, () => { RdbDescriptor rdb; if (!AcDomain.RdbSet.TryDb(base.EntityType.DatabaseId, out rdb)) { throw new GeneralException("意外配置的Plugin实体类型对象数据库标识" + base.EntityType.DatabaseId); } List <DbParameter> ps; var filterString = new SqlFilterStringBuilder().FilterString(rdb, requestModel.Filters, "a", out ps); if (!string.IsNullOrEmpty(filterString)) { filterString = " where " + filterString; } return(new SqlFilter(filterString, ps.ToArray())); }, requestModel); Debug.Assert(requestModel.Total != null, "requestModel.Total != null"); var data = new MiniGrid <Dictionary <string, object> > { total = requestModel.Total.Value, data = dataDics }; return(this.JsonResult(data)); }
public ActionResult GetPlistBatches(GetPlistBatchs input) { if (!ModelState.IsValid) { return(ModelState.ToJsonResult()); } Guid?ontologyId = null; if (string.IsNullOrEmpty(input.OntologyCode)) { ontologyId = null; } else { OntologyDescriptor ontology; if (!AcDomain.NodeHost.Ontologies.TryGetOntology(input.OntologyCode, out ontology)) { throw new ValidationException("意外的本体码" + input.OntologyCode); } ontologyId = ontology.Ontology.Id; } var pagingData = new PagingInput(input.PageIndex , input.PageSize, input.SortField, input.SortOrder); if (ontologyId != null) { input.Filters.Insert(0, FilterData.EQ("OntologyId", ontologyId.Value)); } var data = GetRequiredService <IBatchQuery>().GetPlist(base.EntityType, () => { RdbDescriptor rdb; if (!AcDomain.Rdbs.TryDb(base.EntityType.DatabaseId, out rdb)) { throw new AnycmdException("意外配置的Batch实体类型对象数据库标识" + base.EntityType.DatabaseId); } List <DbParameter> ps; var filterString = new SqlFilterStringBuilder().FilterString(rdb, input.Filters, "a", out ps); if (!string.IsNullOrEmpty(filterString)) { filterString = " where " + filterString; } return(new SqlFilter(filterString, ps.ToArray())); }, pagingData); Debug.Assert(pagingData.Total != null, "pagingData.Total != null"); return(this.JsonResult(new MiniGrid <BatchTr> { total = pagingData.Total.Value, data = data.Select(a => new BatchTr(a)) })); }
public List <DicReader> GetPlistAccountTrs(List <FilterData> filters, string catalogCode, bool includeDescendants, PagingInput paging) { paging.Valid(); bool byOrgCode = !string.IsNullOrEmpty(catalogCode); Func <SqlFilter> filter = () => { List <DbParameter> parameters; var filterString = new SqlFilterStringBuilder().FilterString(base.DbContext.Rdb, filters, "a", out parameters); if (!string.IsNullOrEmpty(filterString)) { filterString = " where 1=1 and " + filterString; } else { filterString = " where 1=1 "; } if (!includeDescendants) { if (byOrgCode) { if (!string.IsNullOrEmpty(catalogCode)) { parameters.Add(this.CreateParameter("CatalogCode", catalogCode, DbType.String)); filterString += "and a.CatalogCode=@CatalogCode "; } } } else { if (byOrgCode) { if (!string.IsNullOrEmpty(catalogCode)) { parameters.Add(CreateParameter("CatalogCode", catalogCode + "%", DbType.String)); filterString += "and a.CatalogCode like @CatalogCode "; } } } return(new SqlFilter(filterString, parameters.ToArray())); }; return(base.GetPlist("AccountTr", filter, paging)); }
public List<DicReader> GetPlistAccountTrs(List<FilterData> filters, string catalogCode, bool includeDescendants, PagingInput paging) { paging.Valid(); bool byOrgCode = !string.IsNullOrEmpty(catalogCode); Func<SqlFilter> filter = () => { List<DbParameter> parameters; var filterString = new SqlFilterStringBuilder().FilterString(base.DbContext.Rdb, filters, "a", out parameters); if (!string.IsNullOrEmpty(filterString)) { filterString = " where 1=1 and " + filterString; } else { filterString = " where 1=1 "; } if (!includeDescendants) { if (byOrgCode) { if (!string.IsNullOrEmpty(catalogCode)) { parameters.Add(this.CreateParameter("CatalogCode", catalogCode, DbType.String)); filterString += "and a.CatalogCode=@CatalogCode "; } } } else { if (byOrgCode) { if (!string.IsNullOrEmpty(catalogCode)) { parameters.Add(CreateParameter("CatalogCode", catalogCode + "%", DbType.String)); filterString += "and a.CatalogCode like @CatalogCode "; } } } return new SqlFilter(filterString, parameters.ToArray()); }; return base.GetPlist("AccountTr", filter, paging); }
public ActionResult GetPlistStateCodes(GetPlistStateCodes requestModel) { if (!ModelState.IsValid) { return ModelState.ToJsonResult(); } var dataDics = GetRequiredService<IStateCodeQuery>().GetPlist(base.EntityType, () => { RdbDescriptor rdb; if (!AcDomain.Rdbs.TryDb(base.EntityType.DatabaseId, out rdb)) { throw new AnycmdException("意外配置的StateCode实体类型对象数据库标识" + base.EntityType.DatabaseId); } List<DbParameter> ps; var filterString = new SqlFilterStringBuilder().FilterString(rdb, requestModel.Filters, "a", out ps); if (!string.IsNullOrEmpty(filterString)) { filterString = " where " + filterString; } return new SqlFilter(filterString, ps.ToArray()); }, requestModel); Debug.Assert(requestModel.Total != null, "requestModel.Total != null"); var data = new MiniGrid<Dictionary<string, object>> { total = requestModel.Total.Value, data = dataDics }; return this.JsonResult(data); }
public ActionResult GetPlistBatches(GetPlistBatchs input) { if (!ModelState.IsValid) { return ModelState.ToJsonResult(); } Guid? ontologyId = null; if (string.IsNullOrEmpty(input.OntologyCode)) { ontologyId = null; } else { OntologyDescriptor ontology; if (!AcDomain.NodeHost.Ontologies.TryGetOntology(input.OntologyCode, out ontology)) { throw new ValidationException("意外的本体码" + input.OntologyCode); } ontologyId = ontology.Ontology.Id; } var pagingData = new PagingInput(input.PageIndex , input.PageSize, input.SortField, input.SortOrder); if (ontologyId != null) { input.Filters.Insert(0, FilterData.EQ("OntologyId", ontologyId.Value)); } var data = GetRequiredService<IBatchQuery>().GetPlist(base.EntityType, () => { RdbDescriptor rdb; if (!AcDomain.Rdbs.TryDb(base.EntityType.DatabaseId, out rdb)) { throw new AnycmdException("意外配置的Batch实体类型对象数据库标识" + base.EntityType.DatabaseId); } List<DbParameter> ps; var filterString = new SqlFilterStringBuilder().FilterString(rdb, input.Filters, "a", out ps); if (!string.IsNullOrEmpty(filterString)) { filterString = " where " + filterString; } return new SqlFilter(filterString, ps.ToArray()); }, pagingData); Debug.Assert(pagingData.Total != null, "pagingData.Total != null"); return this.JsonResult(new MiniGrid<BatchTr> { total = pagingData.Total.Value, data = data.Select(a => new BatchTr(a)) }); }