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.
@@ -1711,14 +1711,15 @@ class DataGridService {
1711
1711
  }
1712
1712
  return window.coast.cache[key];
1713
1713
  }
1714
- getUserColumnDataSource(tenant, className, view, field) {
1714
+ getUserColumnDataSource(tenant, className, view, field, filter) {
1715
1715
  return this.http.get('api/data/custom', {
1716
1716
  params: {
1717
1717
  executor: 'com.cs.system.data.grid.header.filter.GetUserColumnDataSource',
1718
1718
  tenant,
1719
1719
  className,
1720
1720
  view: view || '',
1721
- field
1721
+ field,
1722
+ filter: filter || ''
1722
1723
  }
1723
1724
  }).pipe(map(response => {
1724
1725
  response.data.list.unshift({
@@ -1733,14 +1734,15 @@ class DataGridService {
1733
1734
  return response.data.list;
1734
1735
  }));
1735
1736
  }
1736
- getUnitColumnDataSource(tenant, className, view, field) {
1737
+ getUnitColumnDataSource(tenant, className, view, field, filter) {
1737
1738
  return this.http.get('api/data/custom', {
1738
1739
  params: {
1739
1740
  executor: 'com.cs.system.data.grid.header.filter.GetUnitColumnDataSource',
1740
1741
  tenant,
1741
1742
  className,
1742
1743
  view: view || '',
1743
- field
1744
+ field,
1745
+ filter: filter || ''
1744
1746
  }
1745
1747
  }).pipe(map(response => {
1746
1748
  response.data.list.unshift({
@@ -1755,7 +1757,7 @@ class DataGridService {
1755
1757
  return response.data.list;
1756
1758
  }));
1757
1759
  }
1758
- getConstraintColumnDataSource(tenant, className, view, field, constraintName) {
1760
+ getConstraintColumnDataSource(tenant, className, view, field, constraintName, filter) {
1759
1761
  return this.http.get('api/data/custom', {
1760
1762
  params: {
1761
1763
  executor: 'com.cs.system.data.grid.header.filter.GetConstraintColumnDataSource',
@@ -1763,7 +1765,8 @@ class DataGridService {
1763
1765
  className,
1764
1766
  view: view || '',
1765
1767
  field,
1766
- constraintName
1768
+ constraintName,
1769
+ filter: filter || ''
1767
1770
  }
1768
1771
  }).pipe(map(response => {
1769
1772
  response.data.list.unshift({
@@ -1778,14 +1781,15 @@ class DataGridService {
1778
1781
  return response.data.list;
1779
1782
  }));
1780
1783
  }
1781
- getColumnDataSource(tenant, className, view, field) {
1784
+ getColumnDataSource(tenant, className, view, field, filter) {
1782
1785
  return this.http.get('api/data/custom', {
1783
1786
  params: {
1784
1787
  executor: 'com.cs.system.data.grid.header.filter.GetColumnDataSource',
1785
1788
  tenant,
1786
1789
  className,
1787
1790
  view: view || '',
1788
- field
1791
+ field,
1792
+ filter: filter || ''
1789
1793
  }
1790
1794
  }).pipe(map(response => {
1791
1795
  return response.data.list;
@@ -2189,7 +2193,7 @@ class DataGridFactory {
2189
2193
  };
2190
2194
  this.service = new DataGridService(http);
2191
2195
  }
2192
- makeDataGridColumns(tenant, className, view) {
2196
+ makeDataGridColumns(tenant, className, view, dataGridInstance) {
2193
2197
  const result = new Subject();
2194
2198
  this.service.getMetadataByView(tenant, className, view || '').subscribe(response => {
2195
2199
  const columns = [];
@@ -2304,7 +2308,8 @@ class DataGridFactory {
2304
2308
  column.headerFilter.dataSource = {
2305
2309
  store: new CustomStore({
2306
2310
  load: () => {
2307
- return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name));
2311
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2312
+ return lastValueFrom(this.service.getUserColumnDataSource(tenant, className, view, field.name, filter));
2308
2313
  }
2309
2314
  }),
2310
2315
  paginate: true
@@ -2345,7 +2350,8 @@ class DataGridFactory {
2345
2350
  column.headerFilter.dataSource = {
2346
2351
  store: new CustomStore({
2347
2352
  load: () => {
2348
- return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name));
2353
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2354
+ return lastValueFrom(this.service.getUnitColumnDataSource(tenant, className, view, field.name, filter));
2349
2355
  }
2350
2356
  }),
2351
2357
  paginate: true
@@ -2383,7 +2389,8 @@ class DataGridFactory {
2383
2389
  column.headerFilter.dataSource = {
2384
2390
  store: new CustomStore({
2385
2391
  load: () => {
2386
- return lastValueFrom(this.service.getConstraintColumnDataSource(tenant, className, view, field.name, field.config.constraint.name));
2392
+ const filter = JSON.stringify(dataGridInstance.getCombinedFilter());
2393
+ return lastValueFrom(this.service.getConstraintColumnDataSource(tenant, className, view, field.name, field.config.constraint.name, filter));
2387
2394
  }
2388
2395
  }),
2389
2396
  paginate: true
@@ -2462,8 +2469,7 @@ class DataGridFactory {
2462
2469
  if (loadOptions.dataField) {
2463
2470
  // 未重写headerFilter的dataSource时,headerFilter会调用load方法加载筛选树,重写该方法查询该表所有数据
2464
2471
  // 该方式存在风险,无法识别DevExtreme一定是通过headerFilter过滤才存在dataField参数
2465
- // TODO 需要考虑已存在的过滤条件,与带约束的字段存在冲突,此处存在过滤条件,加载列时带约束的字段构建的dataSource获取不到过滤条件
2466
- return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField));
2472
+ return lastValueFrom(this.service.getColumnDataSource(tenant, className, view, loadOptions.dataField, JSON.stringify(loadOptions.filter)));
2467
2473
  }
2468
2474
  let params = '?';
2469
2475
  if (loadOptions.skip || loadOptions.take) {
@@ -3015,7 +3021,7 @@ class DataGridComponent {
3015
3021
  }
3016
3022
  reload() {
3017
3023
  this.columns.length = 0;
3018
- this.factory.makeDataGridColumns(this.tenant, this.className, this.view).subscribe(columns => {
3024
+ this.factory.makeDataGridColumns(this.tenant, this.className, this.view, this).subscribe(columns => {
3019
3025
  if (this.customColumnFn) {
3020
3026
  this.customColumnFn(columns);
3021
3027
  }