@ibiz-template/runtime 0.6.0-alpha.0 → 0.6.0-alpha.2

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.
@@ -1,8 +1,12 @@
1
1
  import { IAppDataEntity, ISearchBarFilter } from '@ibiz/model-core';
2
2
  import { IEditorContainerController, IEditorController, IEditorProvider, IFilterLeafNode } from '../../../interface';
3
- import { SearchBarController } from './search-bar.controller';
4
3
  /** 不需要编辑器的OP */
5
4
  export declare const ExcludeOPs: string[];
5
+ export interface ISearchFilterContainer {
6
+ context: IContext;
7
+ params: IParams;
8
+ appDataEntity: IAppDataEntity;
9
+ }
6
10
  /**
7
11
  * 搜索栏过滤项控制器
8
12
  * @author lxm
@@ -13,11 +17,11 @@ export declare const ExcludeOPs: string[];
13
17
  */
14
18
  export declare class SearchBarFilterController implements IEditorContainerController {
15
19
  model: ISearchBarFilter;
16
- protected searchbar: SearchBarController;
20
+ appDataEntity: IAppDataEntity;
21
+ context: IContext;
22
+ params: IParams;
17
23
  unitName: string | undefined;
18
24
  valueFormat: string | undefined;
19
- get context(): IContext;
20
- get params(): IParams;
21
25
  dataType: number | undefined;
22
26
  /**
23
27
  * 编辑器控制器
@@ -70,8 +74,7 @@ export declare class SearchBarFilterController implements IEditorContainerContro
70
74
  * @type {(string | undefined)}
71
75
  */
72
76
  get valueItem(): string | undefined;
73
- get appDataEntity(): IAppDataEntity;
74
- constructor(model: ISearchBarFilter, searchbar: SearchBarController);
77
+ constructor(model: ISearchBarFilter, appDataEntity: IAppDataEntity, context: IContext, params: IParams);
75
78
  /**
76
79
  * 初始化
77
80
  * @author lxm
@@ -79,14 +82,6 @@ export declare class SearchBarFilterController implements IEditorContainerContro
79
82
  * @return {*} {Promise<void>}
80
83
  */
81
84
  init(): Promise<void>;
82
- /**
83
- * 格式化给多数据查询接口的值
84
- * @author lxm
85
- * @date 2024-02-04 11:31:32
86
- * @param {*} value
87
- * @return {*} {*}
88
- */
89
- formatValue(node: IData): unknown;
90
85
  /**
91
86
  * 计算要递给编辑器的参数
92
87
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"search-bar-filter.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/search-bar-filter.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EACd,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,EACf,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,gBAAgB;AAChB,eAAO,MAAM,UAAU,EAAE,MAAM,EAGrB,CAAC;AAIX;;;;;;;GAOG;AACH,qBAAa,yBAA0B,YAAW,0BAA0B;IAgFjE,KAAK,EAAE,gBAAgB;IAC9B,SAAS,CAAC,SAAS,EAAE,mBAAmB;IAhF1C,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC,IAAI,OAAO,IAAI,QAAQ,CAEtB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC;IAEjC;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAS;IAE1B;;;;;;OAMG;IACH,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,aAAa,IAAI,cAAc,CAElC;gBAGQ,KAAK,EAAE,gBAAgB,EACpB,SAAS,EAAE,mBAAmB;IAqB1C;;;;;OAKG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B;;;;;;OAMG;IACH,WAAW,CAAC,IAAI,EAAE,KAAK,GAAG,OAAO;IAgBjC;;;;;;OAMG;IACH,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,KAAK,CAAA;KAAE;IAevE;;;;;;;OAOG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;CAO3E"}
1
+ {"version":3,"file":"search-bar-filter.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/search-bar-filter.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,cAAc,EACd,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,EACf,eAAe,EAChB,MAAM,oBAAoB,CAAC;AAK5B,gBAAgB;AAChB,eAAO,MAAM,UAAU,EAAE,MAAM,EAGrB,CAAC;AAIX,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,QAAQ,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,cAAc,CAAC;CAC/B;AAED;;;;;;;GAOG;AACH,qBAAa,yBAA0B,YAAW,0BAA0B;IAoEjE,KAAK,EAAE,gBAAgB;IACvB,aAAa,EAAE,cAAc;IAC7B,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,OAAO;IAtExB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAEhC,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAC;IAE7B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAE3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,eAAe,CAAC;IAEjC;;;;;OAKG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,KAAK,EAAE,MAAM,CAAC;IAEd;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,QAAQ,EAAE,OAAO,CAAS;IAE1B;;;;;;OAMG;IACH,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;gBAGQ,KAAK,EAAE,gBAAgB,EACvB,aAAa,EAAE,cAAc,EAC7B,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,OAAO;IAqBxB;;;;;OAKG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB3B;;;;;;OAMG;IACH,eAAe,CAAC,IAAI,EAAE,eAAe,GAAG;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,KAAK,CAAA;KAAE;IAevE;;;;;;;OAOG;IACH,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI;CAO3E"}
@@ -3,7 +3,6 @@ import { RuntimeModelError } from '@ibiz-template/core';
3
3
  import { findFieldById } from '../../../model';
4
4
  import { getEditorProvider } from '../../../register';
5
5
  import { ValueOP } from '../../../constant';
6
- import { ScriptFactory } from '../../../utils';
7
6
  /** 不需要编辑器的OP */
8
7
  export const ExcludeOPs = [
9
8
  ValueOP.IS_NULL,
@@ -19,12 +18,6 @@ const ScriptValueRegex = /\$\{[^}]*\}/; // 匹配${xxx}格式字符串
19
18
  * @implements {IEditorContainerController}
20
19
  */
21
20
  export class SearchBarFilterController {
22
- get context() {
23
- return this.searchbar.context;
24
- }
25
- get params() {
26
- return this.searchbar.params;
27
- }
28
21
  /**
29
22
  * 值项
30
23
  * @author lxm
@@ -35,13 +28,12 @@ export class SearchBarFilterController {
35
28
  get valueItem() {
36
29
  return this.editor ? this.editor.valueItem : undefined;
37
30
  }
38
- get appDataEntity() {
39
- return this.searchbar.appDataEntity;
40
- }
41
- constructor(model, searchbar) {
31
+ constructor(model, appDataEntity, context, params) {
42
32
  var _a;
43
33
  this.model = model;
44
- this.searchbar = searchbar;
34
+ this.appDataEntity = appDataEntity;
35
+ this.context = context;
36
+ this.params = params;
45
37
  /**
46
38
  * 不需要编辑器
47
39
  * @author lxm
@@ -81,25 +73,6 @@ export class SearchBarFilterController {
81
73
  }
82
74
  }
83
75
  }
84
- /**
85
- * 格式化给多数据查询接口的值
86
- * @author lxm
87
- * @date 2024-02-04 11:31:32
88
- * @param {*} value
89
- * @return {*} {*}
90
- */
91
- formatValue(node) {
92
- const { value, valueItem } = node;
93
- if (this.valueItem && valueItem) {
94
- delete node.valueItem;
95
- return valueItem;
96
- }
97
- // 脚本转换
98
- if (ScriptValueRegex.test(value)) {
99
- return ScriptFactory.execSingleLine(`\`${value}\``, Object.assign({}, this.searchbar.getEventArgs()));
100
- }
101
- return value;
102
- }
103
76
  /**
104
77
  * 计算要递给编辑器的参数
105
78
  * @author lxm
@@ -1 +1 @@
1
- {"version":3,"file":"search-bar.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/search-bar.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGhF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EAEhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAWxD;;;;;;;;GAQG;AACH,qBAAa,mBACX,SAAQ,iBAAiB,CAAC,UAAU,EAAE,eAAe,EAAE,eAAe,CACtE,YAAW,oBAAoB;IAE/B;;;;;OAKG;IACH,WAAW,SAAM;IAEjB;;;;;OAKG;IACH,iBAAiB,EAAE,yBAAyB,EAAE,CAAM;IAEpD;;;;;OAKG;IACH,OAAO,EAAG,gBAAgB,CAAC;IAE3B;;;;;OAKG;IACH,gBAAgB,EAAE,sBAAsB,GAAG,IAAI,CAAQ;IAEvD;;;;;OAKG;IACH,oBAAoB,UAA8C;IAElE;;;;;OAKG;IACH,gBAAgB,UAAS;IAEzB;;;;;OAKG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,IAAI,gBAAgB,EAAE,CAEzC;IAED;;;;OAIG;IACH,gBAAgB,UAAS;IAEzB;;;;;OAKG;IACH,IAAI,IAAI,IAAI,eAAe,GAAG,SAAS,CAGtC;IAED;;;;;OAKG;IACH,aAAa,EAAG,cAAc,CAAC;IAE/B,SAAS,CAAC,SAAS,IAAI,IAAI;cAcX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B1C;;;;;OAKG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwCzC;;;;;;OAMG;IACH,SAAS,CAAC,0BAA0B,IAAI,IAAI;IA2B5C;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;OAKG;IACH,QAAQ,IAAI,IAAI;IAIhB;;;;;;;OAOG;IACH,oBAAoB,CAClB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,yBAAyB,GAAG,SAAS;IAUxC;;;;;OAKG;IACH,eAAe,IAAI,OAAO;IA4B1B;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAKnB;;;;;;OAMG;cACa,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAYrD;;;;;OAKG;IACH,WAAW,CAAC,WAAW,UAAO,GAAG,KAAK,EAAE,GAAG,SAAS;IA4BpD;;;;;OAKG;IACG,iBAAiB,CAAC,SAAS,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAoGlE;;;;;OAKG;IACH,gBAAgB,IAAI,IAAI;IAWxB;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCjC;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;CA2CzE"}
1
+ {"version":3,"file":"search-bar.controller.d.ts","sourceRoot":"","sources":["../../../../src/controller/control/search-bar/search-bar.controller.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGhF,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,eAAe,EAEhB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAWxD;;;;;;;;GAQG;AACH,qBAAa,mBACX,SAAQ,iBAAiB,CAAC,UAAU,EAAE,eAAe,EAAE,eAAe,CACtE,YAAW,oBAAoB;IAE/B;;;;;OAKG;IACH,WAAW,SAAM;IAEjB;;;;;OAKG;IACH,iBAAiB,EAAE,yBAAyB,EAAE,CAAM;IAEpD;;;;;OAKG;IACH,OAAO,EAAG,gBAAgB,CAAC;IAE3B;;;;;OAKG;IACH,gBAAgB,EAAE,sBAAsB,GAAG,IAAI,CAAQ;IAEvD;;;;;OAKG;IACH,oBAAoB,UAA8C;IAElE;;;;;OAKG;IACH,gBAAgB,UAAS;IAEzB;;;;;OAKG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;;;;OAKG;IACH,IAAI,gBAAgB,IAAI,gBAAgB,EAAE,CAEzC;IAED;;;;OAIG;IACH,gBAAgB,UAAS;IAEzB;;;;;OAKG;IACH,IAAI,IAAI,IAAI,eAAe,GAAG,SAAS,CAGtC;IAED;;;;;OAKG;IACH,aAAa,EAAG,cAAc,CAAC;IAE/B,SAAS,CAAC,SAAS,IAAI,IAAI;cAcX,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IA2B1C;;;;;OAKG;IACG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwCzC;;;;;;OAMG;IACH,SAAS,CAAC,0BAA0B,IAAI,IAAI;IA2B5C;;;;;;OAMG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;OAKG;IACH,QAAQ,IAAI,IAAI;IAIhB;;;;;;;OAOG;IACH,oBAAoB,CAClB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,yBAAyB,GAAG,SAAS;IAUxC;;;;;OAKG;IACH,eAAe,IAAI,OAAO;IA4B1B;;;;OAIG;IACH,WAAW,IAAI,IAAI;IAKnB;;;;;;OAMG;cACa,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBrD;;;;;OAKG;IACH,WAAW,CAAC,WAAW,UAAO,GAAG,KAAK,EAAE,GAAG,SAAS;IAoCpD;;;;;OAKG;IACG,iBAAiB,CAAC,SAAS,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAoGlE;;;;;OAKG;IACH,gBAAgB,IAAI,IAAI;IAWxB;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCjC;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC;CA2CzE"}
@@ -268,7 +268,7 @@ export class SearchBarController extends ControlController {
268
268
  var _a;
269
269
  if ((_a = this.searchBarFilters) === null || _a === void 0 ? void 0 : _a.length) {
270
270
  this.searchBarFilters.forEach(item => {
271
- const filterController = new SearchBarFilterController(item, this);
271
+ const filterController = new SearchBarFilterController(item, this.appDataEntity, this.context, this.params);
272
272
  this.filterControllers.push(filterController);
273
273
  });
274
274
  await Promise.all(this.filterControllers.map(controller => controller.init()));
@@ -291,7 +291,14 @@ export class SearchBarController extends ControlController {
291
291
  if (node.condtype === 'DEFIELD' && !isNil(node.value)) {
292
292
  const controller = this.findFilterController(node.fieldname, node.condop);
293
293
  if (controller) {
294
- node.value = controller.formatValue(node);
294
+ if (controller.valueItem && node.valueItem) {
295
+ node.value = node.valueItem;
296
+ delete node.valueItem;
297
+ }
298
+ else if (ScriptValueRegex.test(node.value)) {
299
+ // 脚本转换
300
+ node.value = ScriptFactory.execSingleLine(`\`${node.value}\``, Object.assign({}, this.getEventArgs()));
301
+ }
295
302
  }
296
303
  }
297
304
  }, { childrenFields: ['searchconds'] });
@@ -9,11 +9,11 @@ export class NoticeController {
9
9
  this.internalMessage = new InternalMessageController();
10
10
  }
11
11
  async init() {
12
- await this.internalMessage.init();
13
- await this.asyncAction.init();
14
12
  this.internalMessage.evt.on('unreadCountChange', () => {
15
13
  this.total = this.internalMessage.unreadCount;
16
14
  this.evt.emit('totalChange', this.total);
17
15
  });
16
+ await this.internalMessage.init();
17
+ await this.asyncAction.init();
18
18
  }
19
19
  }
@@ -102,5 +102,13 @@ export declare class GlobalUtil {
102
102
  * @date 2023-09-08 10:09:15
103
103
  */
104
104
  hiddenAppLoading(): void;
105
+ /**
106
+ * 设置浏览器标签页标题
107
+ *
108
+ * @author chitanda
109
+ * @date 2024-02-05 09:02:08
110
+ * @param {string} title
111
+ */
112
+ setBrowserTitle(title: string): void;
105
113
  }
106
114
  //# sourceMappingURL=global-util.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"global-util.d.ts","sourceRoot":"","sources":["../../../src/global/global-util/global-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,eAAe,EACf,cAAc,EACd,YAAY,EACZ,SAAS,EAET,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,QAAQ,EACT,MAAM,aAAa,CAAC;AAErB;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,kBAAyB;IAE7C;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,YAAmB;IAEjC;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,WAAkB;IAE/B;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,iBAAwB;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,eAAsB;IAEvC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,sBAAgB;IAE/B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,qBAA4B;IAE1C;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,YAAmB;IAErC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,YAAmB;IAEjC;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,WAAkB;;IAM/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IAEzC;;;;;OAKG;IACH,cAAc,IAAI,IAAI;IAOtB;;;;;OAKG;IACH,gBAAgB,IAAI,IAAI;CAQzB"}
1
+ {"version":3,"file":"global-util.d.ts","sourceRoot":"","sources":["../../../src/global/global-util/global-util.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,QAAQ,EACR,eAAe,EACf,cAAc,EACd,YAAY,EACZ,SAAS,EAET,kBAAkB,EAClB,SAAS,EACT,SAAS,EACT,QAAQ,EACT,MAAM,aAAa,CAAC;AAKrB;;;;;;;GAOG;AACH,qBAAa,UAAU;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,kBAAyB;IAE7C;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,YAAmB;IAEjC;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,WAAkB;IAE/B;;;;;OAKG;IACH,QAAQ,CAAC,GAAG,iBAAwB;IAEpC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,eAAsB;IAEvC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,sBAAgB;IAE/B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,qBAA4B;IAE1C;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,YAAmB;IAErC;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,YAAmB;IAEjC;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,WAAkB;;IAM/B;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IAEzC;;;;;OAKG;IACH,cAAc,IAAI,IAAI;IAOtB;;;;;OAKG;IACH,gBAAgB,IAAI,IAAI;IASxB;;;;;;OAMG;IACH,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAQrC"}
@@ -1,5 +1,7 @@
1
1
  import { UIActionUtil } from '../../ui-action';
2
2
  import { TextUtil, LayoutPanelUtil, HandlebarsUtil, RawValueUtil, ThemeUtil, DefaultErrorHandler, ErrorHandlerCenter, ViewStack, AnimeUtil, FileUtil, } from '../../utils';
3
+ // 保存浏览器标签原始标题
4
+ const sourceTitle = document.title;
3
5
  /**
4
6
  * 全局工具方法或对象
5
7
  *
@@ -109,4 +111,20 @@ export class GlobalUtil {
109
111
  }
110
112
  }, 300);
111
113
  }
114
+ /**
115
+ * 设置浏览器标签页标题
116
+ *
117
+ * @author chitanda
118
+ * @date 2024-02-05 09:02:08
119
+ * @param {string} title
120
+ */
121
+ setBrowserTitle(title) {
122
+ const app = ibiz.hub.getApp();
123
+ if (title) {
124
+ document.title = `${app.model.title || ibiz.env.AppTitle || sourceTitle} - ${title}`;
125
+ }
126
+ else {
127
+ document.title = app.model.title || ibiz.env.AppTitle || sourceTitle;
128
+ }
129
+ }
112
130
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.6.0-alpha.0",
3
+ "version": "0.6.0-alpha.2",
4
4
  "description": "控制器包",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -64,5 +64,5 @@
64
64
  "dependencies": {
65
65
  "animejs": "^3.2.2"
66
66
  },
67
- "gitHead": "f60691c89329341ab3823805f8c1109a340fb485"
67
+ "gitHead": "f12ee6bf410373ab9446f755828f6c7f1e68c2c7"
68
68
  }
@@ -14,8 +14,6 @@ import {
14
14
  import { findFieldById } from '../../../model';
15
15
  import { getEditorProvider } from '../../../register';
16
16
  import { ValueOP } from '../../../constant';
17
- import { SearchBarController } from './search-bar.controller';
18
- import { ScriptFactory } from '../../../utils';
19
17
 
20
18
  /** 不需要编辑器的OP */
21
19
  export const ExcludeOPs: string[] = [
@@ -25,6 +23,12 @@ export const ExcludeOPs: string[] = [
25
23
 
26
24
  const ScriptValueRegex = /\$\{[^}]*\}/; // 匹配${xxx}格式字符串
27
25
 
26
+ export interface ISearchFilterContainer {
27
+ context: IContext;
28
+ params: IParams;
29
+ appDataEntity: IAppDataEntity;
30
+ }
31
+
28
32
  /**
29
33
  * 搜索栏过滤项控制器
30
34
  * @author lxm
@@ -38,14 +42,6 @@ export class SearchBarFilterController implements IEditorContainerController {
38
42
 
39
43
  valueFormat: string | undefined;
40
44
 
41
- get context(): IContext {
42
- return this.searchbar.context;
43
- }
44
-
45
- get params(): IParams {
46
- return this.searchbar.params;
47
- }
48
-
49
45
  dataType: number | undefined;
50
46
 
51
47
  /**
@@ -108,13 +104,11 @@ export class SearchBarFilterController implements IEditorContainerController {
108
104
  return this.editor ? (this.editor as IData).valueItem : undefined;
109
105
  }
110
106
 
111
- get appDataEntity(): IAppDataEntity {
112
- return this.searchbar.appDataEntity;
113
- }
114
-
115
107
  constructor(
116
108
  public model: ISearchBarFilter,
117
- protected searchbar: SearchBarController,
109
+ public appDataEntity: IAppDataEntity,
110
+ public context: IContext,
111
+ public params: IParams,
118
112
  ) {
119
113
  // 实体属性
120
114
  let field: IAppDEField | undefined;
@@ -157,29 +151,6 @@ export class SearchBarFilterController implements IEditorContainerController {
157
151
  }
158
152
  }
159
153
 
160
- /**
161
- * 格式化给多数据查询接口的值
162
- * @author lxm
163
- * @date 2024-02-04 11:31:32
164
- * @param {*} value
165
- * @return {*} {*}
166
- */
167
- formatValue(node: IData): unknown {
168
- const { value, valueItem } = node;
169
- if (this.valueItem && valueItem) {
170
- delete node.valueItem;
171
- return valueItem;
172
- }
173
-
174
- // 脚本转换
175
- if (ScriptValueRegex.test(value)) {
176
- return ScriptFactory.execSingleLine(`\`${value}\``, {
177
- ...(this.searchbar as IData).getEventArgs(),
178
- });
179
- }
180
- return value;
181
- }
182
-
183
154
  /**
184
155
  * 计算要递给编辑器的参数
185
156
  * @author lxm
@@ -348,7 +348,12 @@ export class SearchBarController
348
348
  protected async initSearchBarFilters(): Promise<void> {
349
349
  if (this.searchBarFilters?.length) {
350
350
  this.searchBarFilters.forEach(item => {
351
- const filterController = new SearchBarFilterController(item, this);
351
+ const filterController = new SearchBarFilterController(
352
+ item,
353
+ this.appDataEntity,
354
+ this.context,
355
+ this.params,
356
+ );
352
357
  this.filterControllers.push(filterController);
353
358
  });
354
359
  await Promise.all(
@@ -380,7 +385,15 @@ export class SearchBarController
380
385
  node.condop,
381
386
  );
382
387
  if (controller) {
383
- node.value = controller.formatValue(node);
388
+ if (controller.valueItem && node.valueItem) {
389
+ node.value = node.valueItem;
390
+ delete node.valueItem;
391
+ } else if (ScriptValueRegex.test(node.value)) {
392
+ // 脚本转换
393
+ node.value = ScriptFactory.execSingleLine(`\`${node.value}\``, {
394
+ ...this.getEventArgs(),
395
+ });
396
+ }
384
397
  }
385
398
  }
386
399
  },
@@ -13,12 +13,12 @@ export class NoticeController implements INoticeController {
13
13
  internalMessage = new InternalMessageController();
14
14
 
15
15
  async init(): Promise<void> {
16
- await this.internalMessage.init();
17
- await this.asyncAction.init();
18
-
19
16
  this.internalMessage.evt.on('unreadCountChange', () => {
20
17
  this.total = this.internalMessage.unreadCount;
21
18
  this.evt.emit('totalChange', this.total);
22
19
  });
20
+
21
+ await this.internalMessage.init();
22
+ await this.asyncAction.init();
23
23
  }
24
24
  }
@@ -13,6 +13,9 @@ import {
13
13
  FileUtil,
14
14
  } from '../../utils';
15
15
 
16
+ // 保存浏览器标签原始标题
17
+ const sourceTitle = document.title;
18
+
16
19
  /**
17
20
  * 全局工具方法或对象
18
21
  *
@@ -141,4 +144,20 @@ export class GlobalUtil {
141
144
  }
142
145
  }, 300);
143
146
  }
147
+
148
+ /**
149
+ * 设置浏览器标签页标题
150
+ *
151
+ * @author chitanda
152
+ * @date 2024-02-05 09:02:08
153
+ * @param {string} title
154
+ */
155
+ setBrowserTitle(title: string): void {
156
+ const app = ibiz.hub.getApp();
157
+ if (title) {
158
+ document.title = `${app.model.title || ibiz.env.AppTitle || sourceTitle} - ${title}`;
159
+ } else {
160
+ document.title = app.model.title || ibiz.env.AppTitle || sourceTitle;
161
+ }
162
+ }
144
163
  }