ngx-rs-ant 2.2.9 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1702,14 +1702,15 @@ class DataGridService {
1702
1702
  }
1703
1703
  return window.coast.cache[key];
1704
1704
  }
1705
- getUserColumnDataSource(tenant, className, view, field) {
1705
+ getUserColumnDataSource(tenant, className, view, field, filter) {
1706
1706
  return this.http.get('api/data/custom', {
1707
1707
  params: {
1708
1708
  executor: 'com.cs.system.data.grid.header.filter.GetUserColumnDataSource',
1709
1709
  tenant,
1710
1710
  className,
1711
1711
  view: view || '',
1712
- field
1712
+ field,
1713
+ filter: filter || ''
1713
1714
  }
1714
1715
  }).pipe(map(response => {
1715
1716
  response.data.list.unshift({
@@ -1724,14 +1725,15 @@ class DataGridService {
1724
1725
  return response.data.list;
1725
1726
  }));
1726
1727
  }
1727
- getUnitColumnDataSource(tenant, className, view, field) {
1728
+ getUnitColumnDataSource(tenant, className, view, field, filter) {
1728
1729
  return this.http.get('api/data/custom', {
1729
1730
  params: {
1730
1731
  executor: 'com.cs.system.data.grid.header.filter.GetUnitColumnDataSource',
1731
1732
  tenant,
1732
1733
  className,
1733
1734
  view: view || '',
1734
- field
1735
+ field,
1736
+ filter: filter || ''
1735
1737
  }
1736
1738
  }).pipe(map(response => {
1737
1739
  response.data.list.unshift({
@@ -1746,7 +1748,7 @@ class DataGridService {
1746
1748
  return response.data.list;
1747
1749
  }));
1748
1750
  }
1749
- getConstraintColumnDataSource(tenant, className, view, field, constraintName) {
1751
+ getConstraintColumnDataSource(tenant, className, view, field, constraintName, filter) {
1750
1752
  return this.http.get('api/data/custom', {
1751
1753
  params: {
1752
1754
  executor: 'com.cs.system.data.grid.header.filter.GetConstraintColumnDataSource',
@@ -1754,7 +1756,8 @@ class DataGridService {
1754
1756
  className,
1755
1757
  view: view || '',
1756
1758
  field,
1757
- constraintName
1759
+ constraintName,
1760
+ filter: filter || ''
1758
1761
  }
1759
1762
  }).pipe(map(response => {
1760
1763
  response.data.list.unshift({
@@ -1769,14 +1772,15 @@ class DataGridService {
1769
1772
  return response.data.list;
1770
1773
  }));
1771
1774
  }
1772
- getColumnDataSource(tenant, className, view, field) {
1775
+ getColumnDataSource(tenant, className, view, field, filter) {
1773
1776
  return this.http.get('api/data/custom', {
1774
1777
  params: {
1775
1778
  executor: 'com.cs.system.data.grid.header.filter.GetColumnDataSource',
1776
1779
  tenant,
1777
1780
  className,
1778
1781
  view: view || '',
1779
- field
1782
+ field,
1783
+ filter: filter || ''
1780
1784
  }
1781
1785
  }).pipe(map(response => {
1782
1786
  return response.data.list;
@@ -2177,7 +2181,7 @@ class DataGridFactory {
2177
2181
  };
2178
2182
  this.service = new DataGridService(http);
2179
2183
  }
2180
- makeDataGridColumns(tenant, className, view) {
2184
+ makeDataGridColumns(tenant, className, view, dataGridInstance) {
2181
2185
  const result = new Subject();
2182
2186
  this.service.getMetadataByView(tenant, className, view || '').subscribe(response => {
2183
2187
  const columns = [];
@@ -2295,7 +2299,8 @@ class DataGridFactory {
2295
2299
  column.headerFilter.dataSource = {
2296
2300
  store: new CustomStore({
2297
2301
  load: () => {
2298
- return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name));
2302
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2303
+ return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name, filter));
2299
2304
  }
2300
2305
  }),
2301
2306
  paginate: true
@@ -2339,7 +2344,8 @@ class DataGridFactory {
2339
2344
  column.headerFilter.dataSource = {
2340
2345
  store: new CustomStore({
2341
2346
  load: () => {
2342
- return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name));
2347
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2348
+ return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name, filter));
2343
2349
  }
2344
2350
  }),
2345
2351
  paginate: true
@@ -2377,7 +2383,8 @@ class DataGridFactory {
2377
2383
  column.headerFilter.dataSource = {
2378
2384
  store: new CustomStore({
2379
2385
  load: () => {
2380
- return lastValueFrom(this.service.getConstraintColumnDataSource(tenant, className, view, field.name, field.config.constraint.name));
2386
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2387
+ return lastValueFrom(this.service.getConstraintColumnDataSource(tenant, className, view, field.name, field.config.constraint.name, filter));
2381
2388
  }
2382
2389
  }),
2383
2390
  paginate: true
@@ -2456,8 +2463,7 @@ class DataGridFactory {
2456
2463
  if (loadOptions.dataField) {
2457
2464
  // 未重写headerFilter的dataSource时,headerFilter会调用load方法加载筛选树,重写该方法查询该表所有数据
2458
2465
  // 该方式存在风险,无法识别DevExtreme一定是通过headerFilter过滤才存在dataField参数
2459
- // TODO 需要考虑已存在的过滤条件,与带约束的字段存在冲突,此处存在过滤条件,加载列时带约束的字段构建的dataSource获取不到过滤条件
2460
- return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField));
2466
+ return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField, JSON.stringify(loadOptions.filter)));
2461
2467
  }
2462
2468
  let params = '?';
2463
2469
  if (loadOptions.skip || loadOptions.take) {
@@ -3011,7 +3017,7 @@ class DataGridComponent {
3011
3017
  }
3012
3018
  reload() {
3013
3019
  this.columns.length = 0;
3014
- this.factory.makeDataGridColumns(this.tenant, this.className, this.view).subscribe(columns => {
3020
+ this.factory.makeDataGridColumns(this.tenant, this.className, this.view, this).subscribe(columns => {
3015
3021
  if (this.customColumnFn) {
3016
3022
  this.customColumnFn(columns);
3017
3023
  }